/* _content/Evolve.Web/Components/EvolveCustom/EveChatbot.razor.rz.scp.css */
/* Eve Chatbot Floating Action Button */
.eve-chat-fab[b-szjvmz6mu5] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: grab;
    box-shadow: 0 4px 16px rgba(99, 102, 241, 0.4);
    z-index: 9999;
    transition: transform 0.2s, box-shadow 0.2s;
    font-size: 22px;
    touch-action: none;
}

.eve-chat-fab:active[b-szjvmz6mu5] {
    cursor: grabbing;
}

.eve-chat-fab:hover[b-szjvmz6mu5] {
    transform: scale(1.08);
    box-shadow: 0 6px 24px rgba(99, 102, 241, 0.5);
}

/* Chat Dialog */
.eve-chat-dialog[b-szjvmz6mu5] {
    position: fixed;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.15), 0 2px 8px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    min-width: 320px;
    min-height: 300px;
    border: 1px solid #e2e8f0;
}

.eve-chat-dialog.eve-minimized[b-szjvmz6mu5] {
    height: 48px !important;
    min-height: 48px;
    overflow: hidden;
}

/* Title Bar */
.eve-chat-titlebar[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: white;
    cursor: move;
    user-select: none;
    flex-shrink: 0;
}

.eve-chat-title[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    font-size: 14px;
}

.eve-icon[b-szjvmz6mu5] {
    font-size: 18px;
}

.eve-section-badge[b-szjvmz6mu5] {
    background: rgba(255, 255, 255, 0.2);
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 400;
}

.eve-chat-controls[b-szjvmz6mu5] {
    display: flex;
    gap: 4px;
}

.eve-ctrl-btn[b-szjvmz6mu5] {
    background: rgba(255, 255, 255, 0.15);
    border: none;
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    transition: background 0.15s;
}

.eve-ctrl-btn:hover[b-szjvmz6mu5] {
    background: rgba(255, 255, 255, 0.3);
}

.eve-close-btn:hover[b-szjvmz6mu5] {
    background: rgba(239, 68, 68, 0.8);
}

/* Messages Area */
.eve-chat-messages[b-szjvmz6mu5] {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: #f8fafc;
}

.eve-welcome[b-szjvmz6mu5] {
    text-align: center;
    padding: 32px 16px;
    color: #64748b;
}

.eve-welcome-icon[b-szjvmz6mu5] {
    font-size: 40px;
    color: #8b5cf6;
    margin-bottom: 12px;
}

.eve-welcome h4[b-szjvmz6mu5] {
    color: #1e293b;
    margin: 8px 0 4px;
    font-size: 18px;
}

.eve-welcome p[b-szjvmz6mu5] {
    margin: 4px 0;
    font-size: 13px;
}

.eve-hint[b-szjvmz6mu5] {
    color: #94a3b8;
    font-style: italic;
}

/* Message Bubbles */
.eve-msg[b-szjvmz6mu5] {
    display: flex;
}

.eve-msg-user[b-szjvmz6mu5] {
    justify-content: flex-end;
}

.eve-msg-assistant[b-szjvmz6mu5] {
    justify-content: flex-start;
}

.eve-msg-bubble[b-szjvmz6mu5] {
    max-width: 85%;
    padding: 10px 14px;
    border-radius: 12px;
    font-size: 13px;
    line-height: 1.5;
    word-wrap: break-word;
}

.eve-msg-user .eve-msg-bubble[b-szjvmz6mu5] {
    background: #6366f1;
    color: white;
    border-bottom-right-radius: 4px;
}

.eve-msg-assistant .eve-msg-bubble[b-szjvmz6mu5] {
    background: white;
    color: #1e293b;
    border: 1px solid #e2e8f0;
    border-bottom-left-radius: 4px;
}

.eve-msg-content[b-szjvmz6mu5] {
    overflow-wrap: break-word;
}

.eve-msg-meta[b-szjvmz6mu5] {
    font-size: 10px;
    color: #94a3b8;
    margin-top: 6px;
    text-align: right;
}

.eve-undo-btn[b-szjvmz6mu5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
    padding: 3px 10px;
    font-size: 11px;
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s;
}

.eve-undo-btn:hover[b-szjvmz6mu5] {
    background: #fde68a;
}

/* Typing Indicator */
.eve-typing[b-szjvmz6mu5] {
    display: flex;
    gap: 4px;
    padding: 14px 18px;
}

.eve-typing span[b-szjvmz6mu5] {
    width: 8px;
    height: 8px;
    background: #94a3b8;
    border-radius: 50%;
    animation: eveBounce-b-szjvmz6mu5 1.4s ease-in-out infinite;
}

.eve-typing span:nth-child(2)[b-szjvmz6mu5] { animation-delay: 0.16s; }
.eve-typing span:nth-child(3)[b-szjvmz6mu5] { animation-delay: 0.32s; }

@keyframes eveBounce-b-szjvmz6mu5 {
    0%, 80%, 100% { transform: scale(0.6); opacity: 0.4; }
    40% { transform: scale(1); opacity: 1; }
}

/* Input Area */
.eve-chat-input[b-szjvmz6mu5] {
    display: flex;
    flex-direction: column;
    border-top: 1px solid #e2e8f0;
    background: white;
    flex-shrink: 0;
}

.eve-ai-warning[b-szjvmz6mu5] {
    font-size: 10px;
    color: #94a3b8;
    text-align: center;
    padding: 4px 12px 0;
    line-height: 1.3;
}

.eve-ai-warning i[b-szjvmz6mu5] {
    font-size: 9px;
    margin-right: 2px;
    color: #cbd5e1;
}

.eve-input-row[b-szjvmz6mu5] {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    padding: 10px 12px;
}

.eve-chat-input textarea[b-szjvmz6mu5] {
    flex: 1;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 13px;
    font-family: inherit;
    resize: none;
    max-height: 100px;
    outline: none;
    transition: border-color 0.15s;
}

.eve-chat-input textarea:focus[b-szjvmz6mu5] {
    border-color: #8b5cf6;
}

.eve-send-btn[b-szjvmz6mu5] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: none;
    background: #6366f1;
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: background 0.15s;
    flex-shrink: 0;
}

.eve-send-btn:hover:not(:disabled)[b-szjvmz6mu5] {
    background: #4f46e5;
}

.eve-send-btn:disabled[b-szjvmz6mu5] {
    background: #c7d2fe;
    cursor: not-allowed;
}

/* Attach button */
.eve-attach-btn[b-szjvmz6mu5] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    background: white;
    color: #64748b;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    transition: all 0.15s;
    flex-shrink: 0;
}

.eve-attach-btn:hover:not(:disabled)[b-szjvmz6mu5] {
    background: #f1f5f9;
    border-color: #8b5cf6;
    color: #6366f1;
}

.eve-attach-btn:disabled[b-szjvmz6mu5] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Pending files bar */
.eve-pending-files[b-szjvmz6mu5] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 12px 0;
}

.eve-pending-chip[b-szjvmz6mu5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    background: #ede9fe;
    color: #5b21b6;
    border-radius: 6px;
    font-size: 11px;
    max-width: 200px;
}

.eve-pending-chip span[b-szjvmz6mu5] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eve-pending-remove[b-szjvmz6mu5] {
    background: none;
    border: none;
    color: #7c3aed;
    cursor: pointer;
    padding: 0 2px;
    font-size: 10px;
    line-height: 1;
}

.eve-pending-remove:hover[b-szjvmz6mu5] {
    color: #dc2626;
}

/* Attachment chips on messages */
.eve-attachments[b-szjvmz6mu5] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 6px;
}

.eve-attachment-chip[b-szjvmz6mu5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: rgba(99, 102, 241, 0.1);
    border-radius: 4px;
    font-size: 11px;
    color: #4f46e5;
}

.eve-msg-user .eve-attachment-chip[b-szjvmz6mu5] {
    background: rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.9);
}

/* Image preview in message attachments */
.eve-attachment-image[b-szjvmz6mu5] {
    display: inline-block;
    max-width: 200px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid rgba(99, 102, 241, 0.2);
}

.eve-attachment-image img[b-szjvmz6mu5] {
    display: block;
    width: 100%;
    height: auto;
    max-height: 150px;
    object-fit: cover;
}

.eve-msg-user .eve-attachment-image[b-szjvmz6mu5] {
    border-color: rgba(255, 255, 255, 0.3);
}

/* Pending image preview (before send) */
.eve-pending-image[b-szjvmz6mu5] {
    position: relative;
    display: inline-block;
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid #c7d2fe;
    background: #f8fafc;
}

.eve-pending-image img[b-szjvmz6mu5] {
    display: block;
    max-width: 120px;
    max-height: 90px;
    object-fit: cover;
}

.eve-pending-remove-img[b-szjvmz6mu5] {
    position: absolute;
    top: 2px;
    right: 2px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: none;
    background: rgba(0, 0, 0, 0.55);
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    line-height: 1;
    padding: 0;
    transition: background 0.15s;
}

.eve-pending-remove-img:hover[b-szjvmz6mu5] {
    background: rgba(220, 38, 38, 0.85);
}

.eve-pending-image-name[b-szjvmz6mu5] {
    font-size: 10px;
    color: #64748b;
    padding: 2px 4px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 120px;
}

/* Resize Handle */
.eve-resize-handle[b-szjvmz6mu5] {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 16px;
    height: 16px;
    cursor: nwse-resize;
    background: linear-gradient(135deg, transparent 50%, #c7d2fe 50%);
    border-radius: 0 0 12px 0;
}

/* Overlay (click-away to close) */
.eve-chat-overlay[b-szjvmz6mu5] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9998;
}

/* ======== Chat History Sidebar ======== */
.eve-history-panel[b-szjvmz6mu5] {
    display: flex;
    flex-direction: column;
    background: #f8fafc;
    border-right: 1px solid #e2e8f0;
    overflow: hidden;
    flex-shrink: 0;
}

.eve-history-header[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 10px;
    font-size: 12px;
    font-weight: 600;
    color: #475569;
    border-bottom: 1px solid #e2e8f0;
    background: #f1f5f9;
    flex-shrink: 0;
}

.eve-history-close[b-szjvmz6mu5] {
    background: none;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    padding: 2px;
    font-size: 11px;
    line-height: 1;
}

.eve-history-close:hover[b-szjvmz6mu5] {
    color: #475569;
}

.eve-history-list[b-szjvmz6mu5] {
    flex: 1;
    overflow-y: auto;
    padding: 4px 0;
}

.eve-history-item[b-szjvmz6mu5] {
    padding: 8px 10px;
    cursor: pointer;
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.15s;
}

.eve-history-item:hover[b-szjvmz6mu5] {
    background: #e2e8f0;
}

.eve-history-item.active[b-szjvmz6mu5] {
    background: #ede9fe;
    border-left: 3px solid #6366f1;
}

.eve-history-title[b-szjvmz6mu5] {
    font-size: 12px;
    color: #1e293b;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.eve-history-date[b-szjvmz6mu5] {
    font-size: 10px;
    color: #94a3b8;
    margin-top: 2px;
}

.eve-history-empty[b-szjvmz6mu5] {
    padding: 20px;
    text-align: center;
    color: #94a3b8;
    font-size: 12px;
}

/* History panel resize handle (vertical divider) */
.eve-history-resize-handle[b-szjvmz6mu5] {
    width: 5px;
    cursor: col-resize;
    background: transparent;
    flex-shrink: 0;
    transition: background 0.15s;
}

.eve-history-resize-handle:hover[b-szjvmz6mu5] {
    background: #c7d2fe;
}

/* History item row with ellipsis menu button */
.eve-history-item-row[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}

.eve-history-item-row .eve-history-title[b-szjvmz6mu5] {
    flex: 1;
    min-width: 0;
}

.eve-history-item-menu[b-szjvmz6mu5] {
    background: none;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    padding: 2px 4px;
    font-size: 11px;
    line-height: 1;
    border-radius: 4px;
    opacity: 0;
    transition: opacity 0.15s, background 0.15s;
    flex-shrink: 0;
}

.eve-history-item:hover .eve-history-item-menu[b-szjvmz6mu5] {
    opacity: 1;
}

.eve-history-item-menu:hover[b-szjvmz6mu5] {
    background: rgba(0, 0, 0, 0.08);
    color: #475569;
}

/* Archived chat items */
.eve-history-item.archived[b-szjvmz6mu5] {
    opacity: 0.6;
}

.eve-history-item.archived .eve-history-title[b-szjvmz6mu5] {
    font-style: italic;
}

/* Per-session context menu (rename / archive) */
.eve-session-context-menu[b-szjvmz6mu5] {
    position: absolute;
    right: 6px;
    margin-top: 2px;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    z-index: 20;
    min-width: 120px;
    overflow: hidden;
}

.eve-ctx-item[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    font-size: 12px;
    color: #334155;
    cursor: pointer;
    transition: background 0.12s;
    white-space: nowrap;
}

.eve-ctx-item:hover[b-szjvmz6mu5] {
    background: #f1f5f9;
}

.eve-ctx-item i[b-szjvmz6mu5] {
    width: 14px;
    text-align: center;
    font-size: 11px;
    color: #64748b;
}

/* Ellipsis menu button in history header */
.eve-history-menu-btn[b-szjvmz6mu5] {
    background: none;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    padding: 2px 5px;
    font-size: 12px;
    line-height: 1;
    border-radius: 4px;
    transition: background 0.15s;
}

.eve-history-menu-btn:hover[b-szjvmz6mu5] {
    background: rgba(0, 0, 0, 0.08);
    color: #475569;
}

/* Header ellipsis dropdown (Show Archived toggle) */
.eve-history-dropdown[b-szjvmz6mu5] {
    position: absolute;
    top: 100%;
    right: 0;
    margin-top: 4px;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    z-index: 20;
    min-width: 150px;
    overflow: hidden;
}

.eve-history-dropdown-item[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    font-size: 12px;
    color: #334155;
    cursor: pointer;
    transition: background 0.12s;
    white-space: nowrap;
}

.eve-history-dropdown-item:hover[b-szjvmz6mu5] {
    background: #f1f5f9;
}

.eve-history-dropdown-item i[b-szjvmz6mu5] {
    width: 14px;
    text-align: center;
    font-size: 11px;
    color: #6366f1;
}

/* Rename input */
.eve-rename-input[b-szjvmz6mu5] {
    width: 100%;
    border: 1px solid #8b5cf6;
    border-radius: 4px;
    padding: 4px 6px;
    font-size: 12px;
    font-family: inherit;
    outline: none;
    background: white;
}

/* Make history items position relative for context menus */
.eve-history-item[b-szjvmz6mu5] {
    position: relative;
}

/* Embedded mode (dock panel) */
.eve-embedded-chat[b-szjvmz6mu5] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.eve-embedded-header[b-szjvmz6mu5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: white;
    font-weight: 600;
    font-size: 13px;
    flex-shrink: 0;
}

.eve-embedded-header i[b-szjvmz6mu5] {
    margin-right: 6px;
}

.eve-embedded-chat .eve-chat-messages[b-szjvmz6mu5] {
    flex: 1;
    min-height: 0;
}

.eve-embedded-chat .eve-welcome[b-szjvmz6mu5] {
    padding: 20px 12px;
}

.eve-embedded-chat .eve-welcome-icon[b-szjvmz6mu5] {
    font-size: 32px;
}

.eve-embedded-chat .eve-welcome h4[b-szjvmz6mu5] {
    font-size: 15px;
}
/* _content/Evolve.Web/Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-d77p4udnfu] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-d77p4udnfu] {
    flex: 1;
}

.sidebar[b-d77p4udnfu] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}
     /* Centered overlay container */
 .loading-overlay[b-d77p4udnfu] {
     position: fixed;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     display: flex;
     justify-content: center;
     align-items: center;
     background-color: rgba(255, 255, 255, 0.8); /* Light translucent background */
     z-index: 9999; /* Ensures it is on top */
 }

/* Spinner animation */
.spinner[b-d77p4udnfu] {
    width: 60px;
    height: 60px;
    border: 8px solid #f3f3f3; /* Light gray border */
    border-top: 8px solid #3498db; /* Blue top border */
    border-radius: 50%; /* Circle shape */
    animation: spin-b-d77p4udnfu 1.2s linear infinite;
}

/* Keyframe for spinning animation */
@keyframes spin-b-d77p4udnfu {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.top-row[b-d77p4udnfu] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-d77p4udnfu]  a, .top-row[b-d77p4udnfu]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-d77p4udnfu]  a:hover, .top-row[b-d77p4udnfu]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-d77p4udnfu]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-d77p4udnfu] {
        justify-content: space-between;
    }

    .top-row[b-d77p4udnfu]  a, .top-row[b-d77p4udnfu]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-d77p4udnfu] {
        flex-direction: row;
    }

    .sidebar[b-d77p4udnfu] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-d77p4udnfu] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-d77p4udnfu]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-d77p4udnfu], article[b-d77p4udnfu] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

/* Blazor framework toggles #blazor-error-ui display:none ↔ block. Treat the visible
   state as a full-screen overlay with a centered modal card inside. */
#blazor-error-ui[b-d77p4udnfu] {
    color-scheme: light only;
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    z-index: 10000;
    align-items: center;
    justify-content: center;
    padding: 16px;
    box-sizing: border-box;
}
#blazor-error-ui[style*="display: block"][b-d77p4udnfu],
#blazor-error-ui[style*="display:block"][b-d77p4udnfu] {
    display: flex !important;
}

#blazor-error-ui .pmx-err-card[b-d77p4udnfu] {
    position: relative;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.25);
    width: min(520px, 100%);
    padding: 22px 24px 18px 24px;
    color: #1f2937;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.5;
}

#blazor-error-ui .pmx-err-title[b-d77p4udnfu] {
    font-size: 18px;
    font-weight: 600;
    color: #b91c1c;
    margin-bottom: 8px;
}

#blazor-error-ui .pmx-err-body[b-d77p4udnfu] {
    color: #374151;
}

#blazor-error-ui .pmx-err-detail[b-d77p4udnfu] {
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 8px 10px;
    margin-top: 12px;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 12px;
    color: #374151;
    word-break: break-word;
    max-height: 110px;
    overflow: auto;
}
#blazor-error-ui .pmx-err-detail:empty[b-d77p4udnfu] { display: none; }

/* Manual-copy fallback — shown by JS when navigator.clipboard.writeText() is unavailable
   or rejected (Permissions-Policy, focus loss, etc). Pre-populated and auto-selected so
   the user can hit Ctrl/Cmd+C. */
#blazor-error-ui .pmx-err-manual[b-d77p4udnfu] {
    display: none;
    width: 100%;
    height: 110px;
    margin-top: 12px;
    padding: 8px 10px;
    box-sizing: border-box;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 12px;
    color: #111827;
    background: #fffbeb;
    border: 1px solid #fcd34d;
    border-radius: 6px;
    resize: vertical;
    white-space: pre;
}

#blazor-error-ui .pmx-err-actions[b-d77p4udnfu] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 16px;
}

#blazor-error-ui .pmx-err-btn[b-d77p4udnfu] {
    border: 1px solid #d1d5db;
    background: #ffffff;
    color: #1f2937;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s, border-color 0.15s;
}
#blazor-error-ui .pmx-err-btn:hover[b-d77p4udnfu] {
    background: #f3f4f6;
    border-color: #9ca3af;
}
#blazor-error-ui .pmx-err-primary[b-d77p4udnfu] {
    background: #b91c1c;
    border-color: #b91c1c;
    color: #ffffff;
}
#blazor-error-ui .pmx-err-primary:hover[b-d77p4udnfu] {
    background: #991b1b;
    border-color: #991b1b;
}

#blazor-error-ui .dismiss[b-d77p4udnfu] {
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 8px;
    font-size: 14px;
    color: #6b7280;
    line-height: 1;
}
#blazor-error-ui .dismiss:hover[b-d77p4udnfu] { color: #1f2937; }

/* Reconnect-overlay rules live inline in App.razor (component-scoped CSS here
   would not reach #components-reconnect-modal which sits in <body> outside the
   layout component tree). */
/* _content/Evolve.Web/Components/Layout/PublicLayout.razor.rz.scp.css */
.page[b-rrvywp0fjg] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-rrvywp0fjg] {
    flex: 1;
}

.sidebar[b-rrvywp0fjg] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-rrvywp0fjg] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-rrvywp0fjg]  a, .top-row[b-rrvywp0fjg]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-rrvywp0fjg]  a:hover, .top-row[b-rrvywp0fjg]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-rrvywp0fjg]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-rrvywp0fjg] {
        justify-content: space-between;
    }

    .top-row[b-rrvywp0fjg]  a, .top-row[b-rrvywp0fjg]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-rrvywp0fjg] {
        flex-direction: row;
    }

    .sidebar[b-rrvywp0fjg] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-rrvywp0fjg] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-rrvywp0fjg]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-rrvywp0fjg], article[b-rrvywp0fjg] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

/* See MainLayout.razor.css for full notes — same modal styling reused here so
   the public/login pages get the same OK/Reload + Copy-Error popup. */
#blazor-error-ui[b-rrvywp0fjg] {
    color-scheme: light only;
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    z-index: 10000;
    align-items: center;
    justify-content: center;
    padding: 16px;
    box-sizing: border-box;
}
#blazor-error-ui[style*="display: block"][b-rrvywp0fjg],
#blazor-error-ui[style*="display:block"][b-rrvywp0fjg] {
    display: flex !important;
}

#blazor-error-ui .pmx-err-card[b-rrvywp0fjg] {
    position: relative;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.25);
    width: min(520px, 100%);
    padding: 22px 24px 18px 24px;
    color: #1f2937;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.5;
}
#blazor-error-ui .pmx-err-title[b-rrvywp0fjg] { font-size: 18px; font-weight: 600; color: #b91c1c; margin-bottom: 8px; }
#blazor-error-ui .pmx-err-body[b-rrvywp0fjg] { color: #374151; }
#blazor-error-ui .pmx-err-detail[b-rrvywp0fjg] {
    background: #f3f4f6; border: 1px solid #e5e7eb; border-radius: 6px;
    padding: 8px 10px; margin-top: 12px;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 12px; color: #374151; word-break: break-word;
    max-height: 110px; overflow: auto;
}
#blazor-error-ui .pmx-err-detail:empty[b-rrvywp0fjg] { display: none; }
#blazor-error-ui .pmx-err-manual[b-rrvywp0fjg] {
    display: none; width: 100%; height: 110px; margin-top: 12px;
    padding: 8px 10px; box-sizing: border-box;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 12px; color: #111827;
    background: #fffbeb; border: 1px solid #fcd34d; border-radius: 6px;
    resize: vertical; white-space: pre;
}
#blazor-error-ui .pmx-err-actions[b-rrvywp0fjg] { display: flex; gap: 8px; justify-content: flex-end; margin-top: 16px; }
#blazor-error-ui .pmx-err-btn[b-rrvywp0fjg] {
    border: 1px solid #d1d5db; background: #ffffff; color: #1f2937;
    padding: 6px 14px; border-radius: 6px; font-size: 13px; font-weight: 500;
    cursor: pointer; text-decoration: none;
    transition: background 0.15s, border-color 0.15s;
}
#blazor-error-ui .pmx-err-btn:hover[b-rrvywp0fjg] { background: #f3f4f6; border-color: #9ca3af; }
#blazor-error-ui .pmx-err-primary[b-rrvywp0fjg] { background: #b91c1c; border-color: #b91c1c; color: #ffffff; }
#blazor-error-ui .pmx-err-primary:hover[b-rrvywp0fjg] { background: #991b1b; border-color: #991b1b; }
#blazor-error-ui .dismiss[b-rrvywp0fjg] {
    cursor: pointer; position: absolute; right: 10px; top: 8px;
    font-size: 14px; color: #6b7280; line-height: 1;
}
#blazor-error-ui .dismiss:hover[b-rrvywp0fjg] { color: #1f2937; }
/* _content/Evolve.Web/Components/Layout/UserLayout.razor.rz.scp.css */

/* Placeholder overlay shown while user data is loading */
.loading-overlay[b-2x4fv30qi6] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 9999;
}

.spinner[b-2x4fv30qi6] {
    width: 60px;
    height: 60px;
    border: 8px solid #f3f3f3;
    border-top: 8px solid #3498db;
    border-radius: 50%;
    animation: spin-b-2x4fv30qi6 1.2s linear infinite;
}

@keyframes spin-b-2x4fv30qi6 {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* _content/Evolve.Web/Components/Pages/Account/Login/Login.razor.rz.scp.css */
.auto-width-chip[b-mvcfelaip0] {
    width: auto !important;
    max-width: none !important;
    white-space: nowrap;
}

.chip-scroll-container[b-mvcfelaip0] {
    display: flex;
    flex-direction: row;
    overflow-x: auto;
    flex-wrap: nowrap;
    white-space: nowrap;
    max-width: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.chip-scroll-container[b-mvcfelaip0]::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.auto-width-chip[b-mvcfelaip0] {
    flex-shrink: 0;
    white-space: nowrap;
    width: auto !important;
    max-width: none !important;
}

.rounded-circle[b-mvcfelaip0] {
    border-radius: 50% !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
/* _content/Evolve.Web/Components/Pages/Kanban/Components/KanbanBoardCard.razor.rz.scp.css */
.kanban-card[b-vjqkyi7eyu] {
    position: relative;
    display: grid;
    grid-auto-rows: max-content;
    gap: 0.6rem;
    align-self: start;
    min-height: 0;
    padding: 0.82rem;
    border-radius: 8px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    background: var(--kanban-card-bg);
    color: #172033;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
    cursor: pointer;
    transition: transform 0.14s ease, box-shadow 0.14s ease, border-color 0.14s ease;
}

.kanban-card:hover[b-vjqkyi7eyu] {
    transform: translateY(-1px);
    border-color: rgba(37, 99, 235, 0.2);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
}

.kanban-card.is-dragging[b-vjqkyi7eyu] {
    opacity: 0.82;
    transform: rotate(1deg);
}

.kanban-card__accent[b-vjqkyi7eyu] {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.22rem;
}

.kanban-card__topline[b-vjqkyi7eyu],
.kanban-card__footer[b-vjqkyi7eyu],
.kanban-card__badges[b-vjqkyi7eyu],
.kanban-card__assignee-wrap[b-vjqkyi7eyu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.kanban-card__badges[b-vjqkyi7eyu],
.kanban-card__assignee-wrap[b-vjqkyi7eyu] {
    justify-content: flex-start;
}

.kanban-card__status[b-vjqkyi7eyu],
.kanban-card__priority[b-vjqkyi7eyu],
.kanban-card__chip[b-vjqkyi7eyu],
.kanban-card__id[b-vjqkyi7eyu] {
    display: inline-flex;
    align-items: center;
    min-height: 1.5rem;
    padding: 0.16rem 0.5rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.kanban-card__status--pending[b-vjqkyi7eyu] { color: #92400e; background: rgba(245, 158, 11, 0.14); }
.kanban-card__status--progress[b-vjqkyi7eyu] { color: #1d4ed8; background: rgba(37, 99, 235, 0.12); }
.kanban-card__status--done[b-vjqkyi7eyu] { color: #047857; background: rgba(16, 185, 129, 0.14); }
.kanban-card__status--late[b-vjqkyi7eyu] { color: #b91c1c; background: rgba(239, 68, 68, 0.14); }

.kanban-card__priority[b-vjqkyi7eyu] { color: #475569; background: rgba(148, 163, 184, 0.14); }
.kanban-card__priority--high[b-vjqkyi7eyu] { color: #991b1b; background: rgba(254, 226, 226, 1); }
.kanban-card__priority--medium[b-vjqkyi7eyu] { color: #92400e; background: rgba(254, 243, 199, 1); }
.kanban-card__priority--low[b-vjqkyi7eyu] { color: #166534; background: rgba(220, 252, 231, 1); }

.kanban-card__id[b-vjqkyi7eyu] {
    color: #64748b;
    background: rgba(241, 245, 249, 1);
}

.kanban-card__title[b-vjqkyi7eyu],
.kanban-card__title-input[b-vjqkyi7eyu] {
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    color: #172033;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.35;
    text-align: left;
}

.kanban-card__title-input[b-vjqkyi7eyu] {
    min-height: 4rem;
    padding: 0.6rem 0.7rem;
    border: 1px solid color-mix(in srgb, var(--kanban-accent) 34%, white);
    border-radius: 8px;
    background: rgba(248, 250, 252, 0.95);
    resize: vertical;
    outline: none;
}

.kanban-card__summary[b-vjqkyi7eyu] {
    margin: 0;
    color: #475569;
    font-size: 0.82rem;
    line-height: 1.45;
}

.kanban-card__chips[b-vjqkyi7eyu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.kanban-card__chip[b-vjqkyi7eyu] { color: #334155; background: rgba(241, 245, 249, 1); }
.kanban-card__chip--muted[b-vjqkyi7eyu] { color: #475569; background: rgba(226, 232, 240, 0.9); }
.kanban-card__chip--tag[b-vjqkyi7eyu] { color: #1d4ed8; background: rgba(219, 234, 254, 1); }

.kanban-card__avatar[b-vjqkyi7eyu] {
    display: inline-grid;
    place-items: center;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 999px;
    background: linear-gradient(135deg, color-mix(in srgb, var(--kanban-accent) 58%, white), color-mix(in srgb, var(--kanban-accent) 24%, #0f172a));
    color: #fff;
    font-size: 0.68rem;
    font-weight: 700;
}

.kanban-card__assignee[b-vjqkyi7eyu],
.kanban-card__due[b-vjqkyi7eyu] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748b;
}

.kanban-card__due--late[b-vjqkyi7eyu] {
    color: #dc2626;
}
/* _content/Evolve.Web/Components/Pages/Kanban/Components/KanbanBoardColumn.razor.rz.scp.css */
.kanban-column[b-tld0sx4mmy] {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 0.72rem;
    height: 100%;
    min-height: 0;
    padding: 0.72rem;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 12px;
    background: var(--kanban-column-bg);
    color: #172033;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.kanban-column.is-drop-target[b-tld0sx4mmy] {
    border-color: color-mix(in srgb, var(--kanban-accent) 58%, #ffffff);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--kanban-accent) 18%, transparent);
}

.kanban-column__header[b-tld0sx4mmy] {
    display: grid;
    gap: 0.45rem;
}

.kanban-column__title-wrap[b-tld0sx4mmy],
.kanban-column__badges[b-tld0sx4mmy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.kanban-column__title-wrap[b-tld0sx4mmy] {
    justify-content: space-between;
}

.kanban-column__drag-handle[b-tld0sx4mmy] {
    display: grid;
    grid-template-columns: repeat(2, 4px);
    gap: 4px;
    padding: 0.38rem;
    border-radius: 8px;
    cursor: grab;
    flex: 0 0 auto;
    background: rgba(15, 23, 42, 0.05);
}

.kanban-column__drag-handle:active[b-tld0sx4mmy] {
    cursor: grabbing;
}

.kanban-column__drag-handle span[b-tld0sx4mmy] {
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: #94a3b8;
}

.kanban-column__heading[b-tld0sx4mmy] {
    display: grid;
    gap: 0.08rem;
    flex: 1;
    min-width: 0;
}

.kanban-column__tone[b-tld0sx4mmy] {
    width: 0.28rem;
    height: 1.8rem;
    border-radius: 999px;
    flex: 0 0 auto;
}

.kanban-column__tone--pending[b-tld0sx4mmy] { background: #f59e0b; }
.kanban-column__tone--progress[b-tld0sx4mmy] { background: #3b82f6; }
.kanban-column__tone--done[b-tld0sx4mmy] { background: #10b981; }
.kanban-column__tone--late[b-tld0sx4mmy] { background: #ef4444; }
.kanban-column__tone--default[b-tld0sx4mmy] { background: #94a3b8; }

.kanban-column__title[b-tld0sx4mmy],
.kanban-column__title-input[b-tld0sx4mmy] {
    width: 100%;
    min-width: 0;
    padding: 0.12rem 0;
    border-radius: 6px;
    font-size: 0.94rem;
    font-weight: 700;
    color: #172033;
    text-align: left;
}

.kanban-column__title[b-tld0sx4mmy] {
    border: 0;
    background: transparent;
}

.kanban-column__title-input[b-tld0sx4mmy] {
    padding: 0.42rem 0.55rem;
    border: 1px solid color-mix(in srgb, var(--kanban-accent) 40%, white);
    background: rgba(255, 255, 255, 0.92);
    outline: none;
}

.kanban-column__meta[b-tld0sx4mmy] {
    color: #6b7280;
    font-size: 0.73rem;
    font-weight: 600;
}

.kanban-column__count[b-tld0sx4mmy],
.kanban-column__hint[b-tld0sx4mmy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.58rem;
    padding: 0.18rem 0.48rem;
    border-radius: 999px;
    font-size: 0.69rem;
    font-weight: 700;
    white-space: nowrap;
}

.kanban-column__count[b-tld0sx4mmy] {
    background: rgba(15, 23, 42, 0.08);
    color: #475569;
}

.kanban-column__badges[b-tld0sx4mmy] {
    flex-wrap: wrap;
}

.kanban-column__hint[b-tld0sx4mmy] {
    background: rgba(15, 23, 42, 0.06);
    color: #475569;
}

.kanban-column__hint--drop[b-tld0sx4mmy] {
    background: color-mix(in srgb, var(--kanban-accent) 14%, white);
    color: color-mix(in srgb, var(--kanban-accent) 68%, #172033);
}

.kanban-column__hint--drag[b-tld0sx4mmy] {
    background: rgba(15, 23, 42, 0.1);
    color: #1f2937;
}

.kanban-column__cards[b-tld0sx4mmy] {
    display: grid;
    grid-auto-rows: max-content;
    gap: 0.65rem;
    align-content: start;
    min-height: 0;
    overflow-y: auto;
    padding-right: 0.15rem;
}

.kanban-column__cards[b-tld0sx4mmy]::-webkit-scrollbar {
    width: 8px;
}

.kanban-column__cards[b-tld0sx4mmy]::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(100, 116, 139, 0.3);
}

.kanban-column__empty[b-tld0sx4mmy],
.kanban-column__auto-footer[b-tld0sx4mmy] {
    padding: 0.85rem;
    border-radius: 8px;
    color: #64748b;
    font-size: 0.8rem;
    line-height: 1.45;
    background: rgba(255, 255, 255, 0.72);
    border: 1px dashed rgba(148, 163, 184, 0.42);
}
/* _content/Evolve.Web/Components/Pages/Kanban/KanbanBoard.razor.rz.scp.css */
.board-page[b-ikwsw3jjzz] {
    --board-text: #eef4fb;
    --board-muted: rgba(224, 233, 246, 0.72);
    --board-line: rgba(255, 255, 255, 0.12);
    --board-panel: rgba(10, 23, 39, 0.56);
    --board-panel-strong: rgba(8, 17, 31, 0.94);
    --board-input: rgba(246, 249, 252, 0.98);
    --board-input-border: rgba(15, 23, 42, 0.08);
    --board-background: #0f4c81;
    --kanban-accent: #38bdf8;
    --kanban-column-bg: rgba(239, 243, 248, 0.96);
    --kanban-card-bg: rgba(255, 255, 255, 0.99);
    position: relative;
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    gap: 0.45rem;
    width: calc(100% + 1rem);
    height: calc(100vh - 56px + 1rem);
    min-height: calc(100vh - 56px + 1rem);
    margin: -0.5rem;
    padding: 0.55rem;
    overflow: hidden;
    color: var(--board-text);
    background:
        radial-gradient(circle at top left, rgba(255,255,255,0.08), transparent 20%),
        radial-gradient(circle at top right, rgba(56, 189, 248, 0.1), transparent 24%),
        linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)),
        linear-gradient(135deg, color-mix(in srgb, var(--board-background, #0f4c81) 88%, #0d1728), color-mix(in srgb, var(--board-background, #0f4c81) 44%, #08111f));
}

.board-page[b-ikwsw3jjzz]::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.035), transparent 18%),
        radial-gradient(circle at bottom right, rgba(0,0,0,0.18), transparent 26%);
}

.board-page > *[b-ikwsw3jjzz] {
    position: relative;
    z-index: 1;
    min-height: 0;
}

.board-header[b-ikwsw3jjzz] {
    position: relative;
    display: grid;
    gap: 0.6rem;
    padding: 0.7rem 0.85rem;
    border: 1px solid var(--board-line);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.03));
    box-shadow: 0 14px 32px rgba(5, 15, 29, 0.2);
    backdrop-filter: blur(18px);
    overflow: visible;
    z-index: 30;
}

.board-header__topline[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
}

.board-header__identity[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: 0;
}

.board-brand-mark[b-ikwsw3jjzz] {
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 14px;
    background: linear-gradient(145deg, rgba(56, 189, 248, 0.34), rgba(255,255,255,0.08));
    border: 1px solid rgba(255,255,255,0.14);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.16);
}

.board-brand-mark svg[b-ikwsw3jjzz] {
    width: 1.05rem;
    height: 1.05rem;
    fill: #fff;
}

.board-header__identity-copy[b-ikwsw3jjzz] {
    display: grid;
    gap: 0.18rem;
    min-width: 0;
}

.board-header__identity-copy h1[b-ikwsw3jjzz] {
    margin: 0;
    color: #fff;
    font-size: 1.08rem;
    font-weight: 740;
    line-height: 1.04;
    letter-spacing: -0.02em;
}

.board-header__identity-copy p[b-ikwsw3jjzz] {
    margin: 0;
    color: var(--board-muted);
    font-size: 0.74rem;
}

.board-header__eyebrow[b-ikwsw3jjzz] {
    color: rgba(255,255,255,0.74);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.board-header__stats[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.42rem;
    flex-wrap: wrap;
}

.board-stat-pill[b-ikwsw3jjzz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3.15rem;
    min-height: 1.95rem;
    padding: 0 0.7rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 0.84rem;
    font-weight: 720;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
    white-space: nowrap;
}

.board-toolbar[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.7rem;
}

.board-toolbar__main[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-width: 0;
    flex: 1;
}

.board-search[b-ikwsw3jjzz],
.board-select[b-ikwsw3jjzz],
.board-filter-chip[b-ikwsw3jjzz],
.board-icon-button[b-ikwsw3jjzz],
.board-settings-toggle[b-ikwsw3jjzz] {
    min-height: 2.45rem;
    border-radius: 12px;
}

.board-search[b-ikwsw3jjzz],
.board-select[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(5, 16, 29, 0.3);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.05);
}

.board-search[b-ikwsw3jjzz] {
    width: min(16rem, 100%);
    padding: 0 0.7rem;
    flex: 0 1 16rem;
}

.board-control-icon[b-ikwsw3jjzz] {
    display: inline-grid;
    place-items: center;
    width: 0.95rem;
    height: 0.95rem;
    flex: 0 0 auto;
    color: rgba(230, 241, 255, 0.78);
}

.board-control-icon svg[b-ikwsw3jjzz],
.board-filter-chip svg[b-ikwsw3jjzz],
.board-icon-button svg[b-ikwsw3jjzz],
.board-settings-toggle svg[b-ikwsw3jjzz] {
    width: 0.95rem;
    height: 0.95rem;
    fill: currentColor;
}

.board-search input[b-ikwsw3jjzz],
.board-select select[b-ikwsw3jjzz] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    font-size: 0.8rem;
}

.board-search input[b-ikwsw3jjzz]::placeholder {
    color: rgba(219, 234, 254, 0.52);
}

.board-filters-shell[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
    flex-wrap: wrap;
}

.board-select[b-ikwsw3jjzz] {
    min-width: 8.2rem;
    padding: 0 0.68rem;
    position: relative;
}

.board-select[b-ikwsw3jjzz]::after {
    content: "";
    width: 0.42rem;
    height: 0.42rem;
    border-right: 2px solid rgba(255,255,255,0.7);
    border-bottom: 2px solid rgba(255,255,255,0.7);
    transform: rotate(45deg);
    margin-left: -0.15rem;
    flex: 0 0 auto;
}

.board-select select[b-ikwsw3jjzz] {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 0.1rem;
    color-scheme: dark;
}

.board-select select option[b-ikwsw3jjzz],
.board-select select optgroup[b-ikwsw3jjzz] {
    color: #0f172a;
    background: #f8fafc;
}

.board-filter-chip[b-ikwsw3jjzz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.36rem;
    padding: 0 0.78rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
}

.board-filter-chip.is-active[b-ikwsw3jjzz] {
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.28), rgba(15, 23, 42, 0.36));
    border-color: rgba(125, 211, 252, 0.32);
    box-shadow: 0 0 0 1px rgba(125, 211, 252, 0.12) inset;
}

.board-filter-chip--ghost[b-ikwsw3jjzz] {
    background: rgba(255, 255, 255, 0.05);
    color: rgba(236, 245, 255, 0.86);
}

.board-toolbar__actions[b-ikwsw3jjzz] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.4rem;
    flex: 0 0 auto;
}

.board-icon-button[b-ikwsw3jjzz],
.board-settings-toggle[b-ikwsw3jjzz] {
    display: inline-grid;
    place-items: center;
    width: 2.45rem;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.09);
    color: #fff;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}

.board-icon-button:hover[b-ikwsw3jjzz],
.board-settings-toggle:hover[b-ikwsw3jjzz],
.board-settings-toggle.is-open[b-ikwsw3jjzz] {
    background: rgba(255, 255, 255, 0.16);
}

.board-settings-popover[b-ikwsw3jjzz] {
    position: absolute;
    top: calc(100% - 0.15rem);
    right: 0.85rem;
    width: 17rem;
    padding: 0.95rem;
    border: 1px solid rgba(255,255,255,0.12);
    border-radius: 18px;
    background: rgba(8, 17, 31, 0.98);
    box-shadow: 0 24px 55px rgba(0, 0, 0, 0.36);
    backdrop-filter: blur(18px);
    z-index: 999;
}

.board-settings-popover__head[b-ikwsw3jjzz] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.board-settings-popover__head strong[b-ikwsw3jjzz] {
    display: block;
    font-size: 0.95rem;
    font-weight: 700;
    color: #fff;
}

.board-settings-popover__head span[b-ikwsw3jjzz] {
    display: block;
    margin-top: 0.18rem;
    color: rgba(226, 232, 240, 0.7);
    font-size: 0.75rem;
}

.board-settings-popover__close[b-ikwsw3jjzz] {
    width: 1.9rem;
    height: 1.9rem;
    border: 0;
    border-radius: 10px;
    background: rgba(255,255,255,0.08);
    color: #fff;
    font-weight: 700;
}

.board-settings-popover__picker[b-ikwsw3jjzz] {
    width: 100%;
    height: 2.4rem;
    margin-bottom: 0.8rem;
    padding: 0.18rem;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 12px;
    background: rgba(255,255,255,0.94);
}

.board-settings-popover__swatches[b-ikwsw3jjzz] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 0.45rem;
}

.board-swatch[b-ikwsw3jjzz] {
    height: 1.8rem;
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 10px;
    background: var(--swatch, #0f4c81);
}

.board-swatch.is-selected[b-ikwsw3jjzz] {
    box-shadow: 0 0 0 2px rgba(255,255,255,0.95);
}

.board-banner[b-ikwsw3jjzz],
.board-state[b-ikwsw3jjzz] {
    padding: 0.85rem 1rem;
    border-radius: 14px;
    border: 1px solid transparent;
}

.board-banner--error[b-ikwsw3jjzz] {
    color: #fff1f2;
    background: rgba(220, 38, 38, 0.18);
    border-color: rgba(252, 165, 165, 0.22);
}

.board-state[b-ikwsw3jjzz] {
    display: grid;
    place-items: center;
    min-height: 7rem;
    background: rgba(15, 23, 42, 0.16);
    color: #fff;
}

.board-canvas[b-ikwsw3jjzz] {
    min-height: 0;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 0.15rem;
}

.board-columns[b-ikwsw3jjzz] {
    display: grid;
    grid-template-columns: repeat(4, minmax(17rem, 1fr));
    gap: 0.65rem;
    min-height: 100%;
    height: 100%;
}

.board-column-shell[b-ikwsw3jjzz] {
    min-height: 0;
    height: 100%;
    padding: 0.08rem;
    border-radius: 16px;
    transition: box-shadow 0.16s ease, background 0.16s ease;
}

.board-column-shell.is-column-drop-target[b-ikwsw3jjzz] {
    background: rgba(255, 255, 255, 0.12);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.18);
}

@media (max-width: 1200px) {
    .board-page[b-ikwsw3jjzz] {
        width: calc(100% + 0.7rem);
        height: calc(100vh - 56px + 0.7rem);
        min-height: calc(100vh - 56px + 0.7rem);
        margin: -0.35rem;
        padding: 0.45rem;
    }

    .board-toolbar[b-ikwsw3jjzz] {
        flex-direction: column;
        align-items: stretch;
    }

    .board-toolbar__main[b-ikwsw3jjzz] {
        flex-direction: column;
        align-items: stretch;
    }

    .board-toolbar__actions[b-ikwsw3jjzz] {
        justify-content: flex-start;
    }

    .board-search[b-ikwsw3jjzz] {
        width: 100%;
        flex-basis: auto;
    }
}

@media (max-width: 768px) {
    .board-page[b-ikwsw3jjzz] {
        width: calc(100% + 0.4rem);
        height: calc(100vh - 56px + 0.4rem);
        min-height: calc(100vh - 56px + 0.4rem);
        margin: -0.2rem;
        padding: 0.3rem;
    }

    .board-header[b-ikwsw3jjzz] {
        padding: 0.7rem;
        border-radius: 16px;
    }

    .board-header__topline[b-ikwsw3jjzz] {
        flex-direction: column;
        align-items: flex-start;
    }

    .board-header__stats[b-ikwsw3jjzz] {
        justify-content: flex-start;
    }

    .board-filters-shell[b-ikwsw3jjzz] {
        width: 100%;
    }

    .board-select[b-ikwsw3jjzz] {
        min-width: 0;
        flex: 1 1 100%;
    }

    .board-filter-chip[b-ikwsw3jjzz] {
        flex: 1 1 auto;
    }

    .board-columns[b-ikwsw3jjzz] {
        grid-template-columns: repeat(4, minmax(15rem, 1fr));
    }

    .board-settings-popover[b-ikwsw3jjzz] {
        right: 0.3rem;
        width: min(17rem, calc(100vw - 1rem));
    }
}
/* _content/Evolve.Web/Components/Pages/ManageDataConnections/ManageDataConnections.razor.rz.scp.css */
.dc-page[b-yxoobqck4i] {
    padding: 16px 24px;
}

.dc-toolbar[b-yxoobqck4i] {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
}

.dc-btn[b-yxoobqck4i] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border: 1px solid #d1d5db;
    background: #fff;
    color: #374151;
    border-radius: 4px;
    cursor: pointer;
    font-size: 13px;
    line-height: 1.2;
}

.dc-btn:hover:not(:disabled)[b-yxoobqck4i] {
    background: #f3f4f6;
}

.dc-btn:disabled[b-yxoobqck4i] {
    opacity: 0.5;
    cursor: not-allowed;
}

.dc-btn-primary[b-yxoobqck4i] {
    background: #2563eb;
    border-color: #2563eb;
    color: #fff;
}

.dc-btn-primary:hover:not(:disabled)[b-yxoobqck4i] {
    background: #1d4ed8;
}

.dc-btn-danger[b-yxoobqck4i] {
    background: #fff;
    color: #b91c1c;
    border-color: #fecaca;
}

.dc-btn-danger:hover:not(:disabled)[b-yxoobqck4i] {
    background: #fef2f2;
}

.dc-btn-small[b-yxoobqck4i] {
    padding: 4px 10px;
    font-size: 12px;
}

.dc-banner[b-yxoobqck4i] {
    padding: 8px 12px;
    border-radius: 4px;
    margin-bottom: 12px;
    font-size: 13px;
}

.dc-banner-error[b-yxoobqck4i] {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.dc-empty[b-yxoobqck4i] {
    padding: 32px;
    text-align: center;
    color: #6b7280;
    background: #f9fafb;
    border-radius: 6px;
}

.dc-table[b-yxoobqck4i] {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    overflow: hidden;
}

.dc-table th[b-yxoobqck4i],
.dc-table td[b-yxoobqck4i] {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid #e5e7eb;
    font-size: 13px;
    vertical-align: top;
}

.dc-table th[b-yxoobqck4i] {
    background: #f9fafb;
    font-weight: 600;
    color: #374151;
}

.dc-table tbody tr:last-child td[b-yxoobqck4i] {
    border-bottom: none;
}

.dc-name[b-yxoobqck4i] {
    font-weight: 600;
    color: #111827;
}

.dc-display[b-yxoobqck4i] {
    color: #6b7280;
    font-size: 12px;
    margin-top: 2px;
}

.dc-pill[b-yxoobqck4i] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 500;
    margin-right: 4px;
}

.dc-pill-active[b-yxoobqck4i] {
    background: #dcfce7;
    color: #166534;
}

.dc-pill-inactive[b-yxoobqck4i] {
    background: #f3f4f6;
    color: #6b7280;
}

.dc-pill-error[b-yxoobqck4i] {
    background: #fee2e2;
    color: #991b1b;
    cursor: help;
}

.dc-actions[b-yxoobqck4i] {
    white-space: nowrap;
    display: flex;
    gap: 6px;
}

.dc-modal-backdrop[b-yxoobqck4i] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.dc-modal[b-yxoobqck4i] {
    background: #fff;
    border-radius: 8px;
    width: 520px;
    max-width: 90vw;
    max-height: 90vh;
    overflow: auto;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
}

.dc-modal-header[b-yxoobqck4i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #e5e7eb;
}

.dc-modal-header h3[b-yxoobqck4i] {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: #111827;
}

.dc-modal-close[b-yxoobqck4i] {
    border: none;
    background: none;
    font-size: 22px;
    cursor: pointer;
    color: #6b7280;
    line-height: 1;
    padding: 0 4px;
}

.dc-modal-body[b-yxoobqck4i] {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.dc-modal-body label[b-yxoobqck4i] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 13px;
    color: #374151;
}

.dc-modal-body label > span[b-yxoobqck4i] {
    font-weight: 500;
}

.dc-modal-body input[b-yxoobqck4i],
.dc-modal-body select[b-yxoobqck4i],
.dc-modal-body textarea[b-yxoobqck4i] {
    padding: 6px 10px;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    font-size: 13px;
    font-family: inherit;
}

.dc-modal-body textarea[b-yxoobqck4i] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    resize: vertical;
}

.dc-required[b-yxoobqck4i] {
    color: #b91c1c;
}

.dc-hint[b-yxoobqck4i] {
    color: #6b7280;
    font-size: 11px;
}

.dc-checkbox[b-yxoobqck4i] {
    flex-direction: row !important;
    align-items: center;
    gap: 8px !important;
}

.dc-checkbox input[type="checkbox"][b-yxoobqck4i] {
    width: auto;
    margin: 0;
}

.dc-bindings-list[b-yxoobqck4i] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dc-bindings-list li[b-yxoobqck4i] {
    padding: 6px 8px;
    border-bottom: 1px solid #f3f4f6;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.dc-binding-migrate[b-yxoobqck4i] {
    margin-left: auto;
}

.dc-inflight-section[b-yxoobqck4i] {
    background: #f3f4f6;
    border-radius: 4px;
    padding: 10px 12px;
    margin-bottom: 12px;
}

.dc-inflight-title[b-yxoobqck4i] {
    font-size: 12px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 8px;
}

.dc-inflight-row[b-yxoobqck4i] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    padding: 4px 0;
    border-top: 1px solid #e5e7eb;
}

.dc-inflight-row:first-of-type[b-yxoobqck4i] {
    border-top: none;
}

.dc-bindings-list li:last-child[b-yxoobqck4i] {
    border-bottom: none;
}

.dc-binding-id[b-yxoobqck4i] {
    display: inline-block;
    min-width: 48px;
    color: #6b7280;
    font-family: ui-monospace, monospace;
    font-size: 11px;
}

.dc-progress-state[b-yxoobqck4i] {
    font-size: 13px;
    color: #374151;
    margin-bottom: 8px;
}

.dc-progress-bar-wrap[b-yxoobqck4i] {
    position: relative;
    width: 100%;
    height: 22px;
    background: #f3f4f6;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 8px;
}

.dc-progress-bar[b-yxoobqck4i] {
    height: 100%;
    background: linear-gradient(to right, #2563eb, #3b82f6);
    transition: width 200ms ease-out;
}

.dc-progress-label[b-yxoobqck4i] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    color: #111827;
    font-weight: 500;
    mix-blend-mode: difference;
    color: #fff;
}

.dc-modal-footer[b-yxoobqck4i] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 14px 20px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
}
/* _content/Evolve.Web/Components/Pages/ManageDataQueries/Components/QueryColumnFilterPanel.razor.rz.scp.css */
.query-column-filter-panel[b-fwm1e3bd4d] {
    height: 100%;
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 255, 0.98));
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs,
.query-column-filter-panel[b-fwm1e3bd4d]  .mud-tabs,
.query-column-filter-panel[b-fwm1e3bd4d]  .mud-tabs-panels {
    min-width: 0;
    min-height: 0;
    height: 100%;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar-inner,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar-content,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar-wrapper {
    height: 52px !important;
    overflow-y: hidden !important;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tab {
    min-width: 0;
    height: 52px !important;
    font-weight: 700;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar::-webkit-scrollbar,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar-inner::-webkit-scrollbar,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar-content::-webkit-scrollbar,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tabs-tabbar-wrapper::-webkit-scrollbar,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tabs-header .mud-tab::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-column-filter-tab-panel {
    height: calc(100% - 52px);
    padding: 12px;
    overflow: auto;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .mud-tab.mud-tab-active {
    color: #5b4cff;
}

.query-panel-empty[b-fwm1e3bd4d] {
    margin: 8px 0 0;
    padding: 26px 18px;
    border: 1px dashed rgba(111, 119, 152, 0.22);
    border-radius: 14px;
    text-align: center;
    background: rgba(255, 255, 255, 0.82);
}

.query-panel-empty-title[b-fwm1e3bd4d] {
    font-size: 13px;
    font-weight: 700;
    color: #374151;
}

.query-panel-empty-text[b-fwm1e3bd4d] {
    margin-top: 6px;
    font-size: 11px;
    color: #6b7280;
}

.query-panel-toolbar[b-fwm1e3bd4d] {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 10px;
}

.query-panel-add-btn[b-fwm1e3bd4d] {
    border-radius: 12px;
}

.query-columns-table-wrap[b-fwm1e3bd4d] {
    overflow: auto;
    border: 1px solid rgba(111, 119, 152, 0.12);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 10px 24px rgba(31, 41, 55, 0.06);
}

.query-columns-table[b-fwm1e3bd4d] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 11px;
}

.query-columns-table thead th[b-fwm1e3bd4d] {
    position: sticky;
    top: 0;
    z-index: 1;
    padding: 10px 10px;
    text-align: left;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #6b7280;
    background: linear-gradient(180deg, #f9fbff, #f1f5ff);
    border-bottom: 1px solid rgba(111, 119, 152, 0.14);
}

.query-columns-table tbody td[b-fwm1e3bd4d] {
    padding: 8px 10px;
    border-bottom: 1px solid rgba(241, 245, 249, 0.95);
    vertical-align: middle;
}

.query-columns-table tbody tr:hover[b-fwm1e3bd4d] {
    background: rgba(91, 76, 255, 0.03);
}

.query-columns-muted[b-fwm1e3bd4d] {
    font-weight: 700;
    color: #64748b;
}

.query-columns-strong[b-fwm1e3bd4d] {
    font-weight: 700;
    color: #1f2937;
}

.query-columns-center[b-fwm1e3bd4d] {
    text-align: center;
    justify-content: center;
}

.query-columns-order-actions[b-fwm1e3bd4d] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2px;
}

.query-stack-list[b-fwm1e3bd4d] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.query-stack-card[b-fwm1e3bd4d] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 12px;
    border: 1px solid rgba(111, 119, 152, 0.12);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 8px 20px rgba(31, 41, 55, 0.05);
}

.query-stack-fields[b-fwm1e3bd4d] {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    gap: 8px;
}

.query-stack-actions[b-fwm1e3bd4d] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 4px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-inline-input .mud-input-root,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-inline-select .mud-input-root,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-compact-select .mud-input-root,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-compact-input .mud-input-root,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-panel-add-btn,
.query-column-filter-panel[b-fwm1e3bd4d]  .mud-input-root-outlined {
    border-radius: 12px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-inline-input,
.query-column-filter-panel[b-fwm1e3bd4d]  .query-inline-select {
    min-width: 110px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-logic-select {
    width: 90px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-field-select {
    min-width: 170px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-operator-select {
    min-width: 170px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-direction-select {
    width: 120px;
}

.query-column-filter-panel[b-fwm1e3bd4d]  .query-value-input {
    min-width: 160px;
}

@media (max-width: 960px) {
    .query-stack-card[b-fwm1e3bd4d] {
        flex-direction: column;
    }

    .query-stack-actions[b-fwm1e3bd4d] {
        align-self: flex-end;
    }

    .query-column-filter-panel[b-fwm1e3bd4d]  .query-field-select,
    .query-column-filter-panel[b-fwm1e3bd4d]  .query-operator-select,
    .query-column-filter-panel[b-fwm1e3bd4d]  .query-value-input,
    .query-column-filter-panel[b-fwm1e3bd4d]  .query-direction-select,
    .query-column-filter-panel[b-fwm1e3bd4d]  .query-logic-select {
        width: 100%;
        min-width: 0;
    }
}
/* _content/Evolve.Web/Components/Pages/ManageDataQueries/Components/QueryDesignerPanel.razor.rz.scp.css */
.query-designer-panel[b-nv67uqg2mu] {
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
}

.designer-toolbar[b-nv67uqg2mu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding: 12px 14px;
    border-bottom: 1px solid rgba(111, 119, 152, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 249, 255, 0.96));
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.7);
    flex-shrink: 0;
}

.designer-toolbar-group[b-nv67uqg2mu] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.designer-toolbar-meta[b-nv67uqg2mu] {
    flex: 1 1 420px;
}

.designer-toolbar-settings[b-nv67uqg2mu] {
    flex: 0 0 auto;
}

.designer-toggle-wrap[b-nv67uqg2mu] {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 0 4px;
}

.designer-canvas[b-nv67uqg2mu] {
    position: relative;
    flex: 1;
    overflow: auto;
    min-height: 300px;
    background:
        linear-gradient(90deg, rgba(229, 231, 235, 0.72) 1px, transparent 1px) 0 0 / 24px 24px,
        linear-gradient(rgba(229, 231, 235, 0.72) 1px, transparent 1px) 0 0 / 24px 24px,
        radial-gradient(circle at top, rgba(91, 76, 255, 0.04), transparent 38%),
        linear-gradient(180deg, #fcfcfe, #f6f8ff);
}

.designer-empty-state[b-nv67uqg2mu] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(360px, calc(100% - 48px));
    padding: 28px 24px;
    border: 1px dashed rgba(111, 119, 152, 0.22);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 18px 40px rgba(31, 41, 55, 0.08);
    text-align: center;
    color: #94a3b8;
}

.designer-empty-icon[b-nv67uqg2mu] {
    font-size: 52px;
    color: #b7bfd0;
}

.designer-empty-title[b-nv67uqg2mu] {
    margin-top: 10px;
    font-size: 15px;
    font-weight: 800;
    color: #374151;
}

.designer-empty-text[b-nv67uqg2mu] {
    margin-top: 8px;
    font-size: 12px;
    line-height: 1.55;
    color: #7c8799;
}

.designer-joins-layer[b-nv67uqg2mu] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
}

.designer-join-path[b-nv67uqg2mu] {
    pointer-events: auto;
    cursor: pointer;
    opacity: 0.95;
}

.designer-join-label[b-nv67uqg2mu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 6px 16px rgba(31, 41, 55, 0.1);
    font-size: 10px;
    font-weight: 800;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
}

.table-card[b-nv67uqg2mu] {
    position: absolute;
    min-width: 180px;
    max-width: 240px;
    border: 1px solid rgba(111, 119, 152, 0.16);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 10px 26px rgba(31, 41, 55, 0.12);
    z-index: 1;
    cursor: grab;
    overflow: hidden;
    backdrop-filter: blur(8px);
}

.table-card:active[b-nv67uqg2mu] {
    cursor: grabbing;
    box-shadow: 0 16px 34px rgba(31, 41, 55, 0.18);
}

.table-card-header[b-nv67uqg2mu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    background: linear-gradient(135deg, #2563eb, #3b82f6);
    color: #fff;
}

.table-card-header-view[b-nv67uqg2mu] {
    background: linear-gradient(135deg, #7c3aed, #9333ea);
}

.table-card-title[b-nv67uqg2mu] {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
    word-break: break-word;
}

.table-card-actions[b-nv67uqg2mu] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.table-card-body[b-nv67uqg2mu] {
    max-height: 224px;
    overflow-y: auto;
    padding: 6px;
}

.table-card-field[b-nv67uqg2mu] {
    padding: 7px 10px;
    font-size: 11px;
    font-weight: 600;
    color: #4b5563;
    cursor: pointer;
    border-radius: 10px;
    transition: background 0.14s ease, color 0.14s ease, transform 0.14s ease;
}

.table-card-field:hover[b-nv67uqg2mu] {
    transform: translateX(1px);
    background: rgba(20, 184, 166, 0.1);
    color: #0f766e;
}

.table-card-field-selected[b-nv67uqg2mu] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.18), rgba(16, 185, 129, 0.08));
    color: #047857;
    font-weight: 700;
}

.table-card-more-fields[b-nv67uqg2mu] {
    padding: 8px 10px 6px;
    color: #9aa3b3;
    font-size: 10px;
    font-style: italic;
}

.join-editor-overlay[b-nv67uqg2mu] {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    backdrop-filter: blur(4px);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.join-editor-dialog[b-nv67uqg2mu] {
    width: min(420px, 100%);
    border-radius: 18px;
    padding: 18px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.22);
}

.join-editor-header[b-nv67uqg2mu] {
    margin-bottom: 12px;
}

.join-editor-title[b-nv67uqg2mu] {
    margin: 0;
    font-size: 15px;
    font-weight: 800;
    color: #1f2937;
}

.join-editor-subtitle[b-nv67uqg2mu] {
    margin-top: 4px;
    font-size: 11px;
    color: #6b7280;
}

.join-editor-form[b-nv67uqg2mu] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.join-editor-actions[b-nv67uqg2mu] {
    display: flex;
    gap: 8px;
    margin-top: 14px;
    justify-content: flex-end;
}

[b-nv67uqg2mu] .designer-input .mud-input-root-outlined {
    border-radius: 12px;
    background: #fff;
}

[b-nv67uqg2mu] .designer-input-name {
    width: 220px;
}

[b-nv67uqg2mu] .designer-input-category {
    width: 150px;
}

[b-nv67uqg2mu] .designer-input-limit {
    width: 90px;
}

[b-nv67uqg2mu] .designer-checkbox .mud-typography {
    font-size: 12px;
    font-weight: 600;
    color: #4b5563;
}

[b-nv67uqg2mu] .table-card-action-btn.mud-icon-button {
    padding: 2px;
    color: #fff;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.14);
}

[b-nv67uqg2mu] .table-card-action-btn.mud-icon-button:hover {
    background: rgba(255, 255, 255, 0.22);
}

@media (max-width: 960px) {
    .designer-toolbar[b-nv67uqg2mu] {
        align-items: stretch;
    }

    .designer-toolbar-meta[b-nv67uqg2mu],
    .designer-toolbar-settings[b-nv67uqg2mu] {
        width: 100%;
    }

    [b-nv67uqg2mu] .designer-input-name,
    [b-nv67uqg2mu] .designer-input-category,
    [b-nv67uqg2mu] .designer-input-limit {
        width: 100%;
    }
}
/* _content/Evolve.Web/Components/Pages/ManageDataQueries/Components/QueryListPanel.razor.rz.scp.css */
.query-list-panel[b-ben2w61f2s] {
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 255, 0.98));
}

.query-list-search[b-ben2w61f2s] {
    padding: 12px 12px 10px;
    border-bottom: 1px solid rgba(111, 119, 152, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 251, 255, 0.96));
}

.query-list-scroll[b-ben2w61f2s] {
    flex: 1;
    overflow-y: auto;
    padding: 10px 10px 16px;
}

.query-group[b-ben2w61f2s] {
    margin-bottom: 14px;
}

.query-group-header[b-ben2w61f2s] {
    margin-bottom: 8px;
    padding: 0 4px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b7280;
}

.query-group-items[b-ben2w61f2s] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.query-item[b-ben2w61f2s] {
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.82);
    cursor: pointer;
    transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.query-item:hover[b-ben2w61f2s] {
    transform: translateY(-1px);
    background: #ffffff;
    border-color: rgba(91, 76, 255, 0.14);
    box-shadow: 0 8px 20px rgba(31, 41, 55, 0.08);
}

.query-item-selected[b-ben2w61f2s] {
    border-color: rgba(91, 76, 255, 0.22);
    background: linear-gradient(135deg, rgba(91, 76, 255, 0.11), rgba(91, 76, 255, 0.04));
    box-shadow: inset 3px 0 0 #5b4cff, 0 10px 22px rgba(91, 76, 255, 0.08);
}

.query-item-row[b-ben2w61f2s] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.query-item-content[b-ben2w61f2s] {
    min-width: 0;
    flex: 1;
}

.query-item-title[b-ben2w61f2s] {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    color: #1f2937;
    word-break: break-word;
}

.query-item-description[b-ben2w61f2s] {
    margin-top: 4px;
    font-size: 10px;
    line-height: 1.45;
    color: #6b7280;
}

.query-delete-btn[b-ben2w61f2s] {
    flex: 0 0 auto;
}

.query-list-empty[b-ben2w61f2s] {
    margin: 12px 4px 0;
    padding: 26px 18px;
    border: 1px dashed rgba(111, 119, 152, 0.22);
    border-radius: 14px;
    text-align: center;
    background: rgba(255, 255, 255, 0.78);
}

.query-list-empty-title[b-ben2w61f2s] {
    font-size: 13px;
    font-weight: 700;
    color: #374151;
}

.query-list-empty-text[b-ben2w61f2s] {
    margin-top: 6px;
    font-size: 11px;
    color: #6b7280;
}

[b-ben2w61f2s] .query-list-search-input .mud-input-root-outlined {
    border-radius: 12px;
    background: #fff;
}

[b-ben2w61f2s] .query-delete-btn.mud-icon-button {
    border-radius: 10px;
    background: rgba(239, 68, 68, 0.08);
    transition: background 0.16s ease, transform 0.16s ease;
}

[b-ben2w61f2s] .query-delete-btn.mud-icon-button:hover {
    transform: translateY(-1px);
    background: rgba(239, 68, 68, 0.14);
}
/* _content/Evolve.Web/Components/Pages/ManageDataQueries/Components/QueryResultsPanel.razor.rz.scp.css */
.query-results-panel[b-qwyn50iimz] {
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 255, 0.98));
}

.query-results-statusbar[b-qwyn50iimz] {
    padding: 10px 12px;
    border-bottom: 1px solid rgba(111, 119, 152, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 249, 255, 0.96));
    flex-shrink: 0;
}

.query-results-status[b-qwyn50iimz],
.query-results-metrics[b-qwyn50iimz] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 11px;
}

.query-results-status-loading[b-qwyn50iimz] {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
}

.query-results-status-text[b-qwyn50iimz] {
    font-weight: 700;
    color: #4b5563;
}

.query-results-progress[b-qwyn50iimz] {
    width: 100%;
}

.query-results-status-error[b-qwyn50iimz] {
    font-weight: 700;
    color: #dc2626;
}

.query-results-status-idle[b-qwyn50iimz] {
    color: #8b95a7;
    font-weight: 600;
}

.query-results-metric[b-qwyn50iimz] {
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.12);
    color: #64748b;
    font-weight: 700;
}

.query-results-metric-primary[b-qwyn50iimz] {
    background: rgba(16, 185, 129, 0.12);
    color: #047857;
}

.query-results-error-card[b-qwyn50iimz] {
    margin: 12px;
    padding: 14px 16px;
    border: 1px solid rgba(248, 113, 113, 0.3);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(254, 242, 242, 0.95), rgba(254, 226, 226, 0.9));
    box-shadow: 0 10px 24px rgba(127, 29, 29, 0.06);
}

.query-results-error-title[b-qwyn50iimz] {
    font-size: 13px;
    font-weight: 800;
    color: #b91c1c;
}

.query-results-error-message[b-qwyn50iimz] {
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.55;
    color: #991b1b;
    white-space: pre-wrap;
    font-family: Consolas, "Courier New", monospace;
}

.query-results-error-help[b-qwyn50iimz] {
    margin-top: 10px;
    font-size: 11px;
    color: #7f1d1d;
}

.query-results-table-wrap[b-qwyn50iimz] {
    flex: 1;
    overflow: auto;
}

.results-table[b-qwyn50iimz] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 11px;
}

.results-th[b-qwyn50iimz] {
    position: sticky;
    top: 0;
    z-index: 1;
    padding: 10px 12px;
    text-align: left;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
    color: #6b7280;
    background: linear-gradient(180deg, #f9fbff, #f1f5ff);
    border-bottom: 1px solid rgba(111, 119, 152, 0.14);
}

.results-th-rownum[b-qwyn50iimz] {
    width: 48px;
}

.results-tr:nth-child(even)[b-qwyn50iimz] {
    background: rgba(248, 250, 252, 0.85);
}

.results-tr:hover[b-qwyn50iimz] {
    background: rgba(91, 76, 255, 0.05);
}

.results-td[b-qwyn50iimz] {
    padding: 9px 12px;
    border-bottom: 1px solid rgba(241, 245, 249, 0.95);
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #334155;
}

.results-td-rownum[b-qwyn50iimz] {
    color: #94a3b8;
    font-size: 10px;
    font-weight: 700;
}

.query-results-empty-state[b-qwyn50iimz] {
    margin: auto 16px;
    padding: 28px 22px;
    border: 1px dashed rgba(111, 119, 152, 0.22);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 16px 34px rgba(31, 41, 55, 0.08);
    text-align: center;
}

.query-results-empty-icon[b-qwyn50iimz] {
    font-size: 52px;
    color: #b7bfd0;
}

.query-results-empty-title[b-qwyn50iimz] {
    margin-top: 10px;
    font-size: 15px;
    font-weight: 800;
    color: #374151;
}

.query-results-empty-text[b-qwyn50iimz] {
    margin-top: 8px;
    font-size: 12px;
    color: #7c8799;
}
/* _content/Evolve.Web/Components/Pages/ManageDataQueries/Components/TableTreePanel.razor.rz.scp.css */
.table-tree-panel[b-t2i0mgc0gs] {
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 255, 0.98));
}

.table-tree-search[b-t2i0mgc0gs] {
    padding: 12px 12px 10px;
    border-bottom: 1px solid rgba(111, 119, 152, 0.12);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 251, 255, 0.96));
}

.table-tree-scroll[b-t2i0mgc0gs] {
    flex: 1;
    overflow-y: auto;
    padding: 10px 10px 16px;
}

.tree-section[b-t2i0mgc0gs] {
    margin-bottom: 16px;
}

.tree-section-header[b-t2i0mgc0gs] {
    margin-bottom: 10px;
    padding: 0 4px 8px;
    border-bottom: 1px solid rgba(111, 119, 152, 0.14);
}

.tree-section-title[b-t2i0mgc0gs] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #2563eb;
}

.tree-section-title-views[b-t2i0mgc0gs] {
    color: #9333ea;
}

.tree-section-subtitle[b-t2i0mgc0gs] {
    margin-top: 4px;
    font-size: 10px;
    font-style: italic;
    color: #8b95a7;
}

.tree-section-body[b-t2i0mgc0gs] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.tree-group[b-t2i0mgc0gs] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.tree-category[b-t2i0mgc0gs] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 10px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.86);
    cursor: pointer;
    transition: background 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.tree-category:hover[b-t2i0mgc0gs] {
    transform: translateY(-1px);
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(31, 41, 55, 0.08);
}

.tree-category-main[b-t2i0mgc0gs] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.tree-category-name[b-t2i0mgc0gs] {
    font-size: 12px;
    font-weight: 700;
    color: #374151;
}

.tree-category-count[b-t2i0mgc0gs] {
    flex: 0 0 auto;
    min-width: 26px;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(91, 76, 255, 0.1);
    font-size: 10px;
    font-weight: 800;
    color: #5b4cff;
    text-align: center;
}

.tree-group-items[b-t2i0mgc0gs] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-left: 6px;
}

.tree-item[b-t2i0mgc0gs] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 10px 9px 12px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.78);
    cursor: grab;
    transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.tree-item:hover[b-t2i0mgc0gs] {
    transform: translateY(-1px);
    background: #ffffff;
    border-color: rgba(22, 163, 74, 0.16);
    box-shadow: 0 8px 20px rgba(31, 41, 55, 0.08);
}

.tree-item:active[b-t2i0mgc0gs] {
    cursor: grabbing;
}

.tree-item-view[b-t2i0mgc0gs] {
    border-left: 3px solid rgba(147, 51, 234, 0.75);
}

.tree-item-main[b-t2i0mgc0gs] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.tree-item-icon-table[b-t2i0mgc0gs] {
    color: #4b5563;
}

.tree-item-icon-view[b-t2i0mgc0gs] {
    color: #9333ea;
}

.tree-item-name[b-t2i0mgc0gs] {
    font-size: 12px;
    font-weight: 600;
    color: #1f2937;
    word-break: break-word;
}

.tree-item-meta[b-t2i0mgc0gs] {
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 700;
    color: #94a3b8;
}

.tree-field[b-t2i0mgc0gs] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px 4px 34px;
    font-size: 11px;
    color: #6b7280;
}

.tree-field-icon[b-t2i0mgc0gs] {
    color: #a1a1aa;
    font-size: 12px;
}

.tree-field-name[b-t2i0mgc0gs] {
    color: #6b7280;
}

.tree-field-type[b-t2i0mgc0gs] {
    margin-left: 2px;
    font-size: 9px;
    color: #a8b0be;
}

.table-tree-empty[b-t2i0mgc0gs] {
    margin: 8px 4px 0;
    padding: 26px 18px;
    border: 1px dashed rgba(111, 119, 152, 0.22);
    border-radius: 14px;
    text-align: center;
    background: rgba(255, 255, 255, 0.78);
}

.table-tree-empty-title[b-t2i0mgc0gs] {
    font-size: 13px;
    font-weight: 700;
    color: #374151;
}

.table-tree-empty-text[b-t2i0mgc0gs] {
    margin-top: 6px;
    font-size: 11px;
    color: #6b7280;
}

[b-t2i0mgc0gs] .table-tree-search-input .mud-input-root-outlined {
    border-radius: 12px;
    background: #fff;
}

/* Phase 1 — Workflows section. Mirrors the Views section's color-coding pattern
   (Views = purple, Workflows = teal/emerald) so the three tree sections are visually
   distinct at a glance. */
.tree-section-title-workflows[b-t2i0mgc0gs] {
    color: #0d9488;
}

.tree-item-icon-workflow-form[b-t2i0mgc0gs] {
    color: #0d9488;
}

.tree-item-node-label[b-t2i0mgc0gs] {
    margin-left: 6px;
    font-size: 11px;
    color: #64748b;
    font-style: italic;
}

.tree-item-disabled[b-t2i0mgc0gs] {
    opacity: 0.55;
    cursor: not-allowed;
}

/* Phase 2 — pseudo-table entries (workflow metadata).
   Distinct accent color (amber) so they're visually separate from form-shortcut entries
   in the same Workflows section. */
.tree-section-title-pseudo[b-t2i0mgc0gs] {
    color: #b45309;
}

.tree-item-icon-pseudo[b-t2i0mgc0gs] {
    color: #b45309;
}

.tree-item-pseudo[b-t2i0mgc0gs] {
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.04), rgba(245, 158, 11, 0));
}
/* _content/Evolve.Web/Components/Pages/ManageDataQueries/ManageDataQueries.razor.rz.scp.css */
.query-toolbar-shell[b-plppqlaws0] {
    padding: 10px 12px 12px;
}

.query-toolbar[b-plppqlaws0] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    padding: 14px 16px;
    border: 1px solid rgba(96, 96, 130, 0.14);
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(247, 249, 255, 0.95)),
        linear-gradient(90deg, rgba(91, 76, 255, 0.04), rgba(20, 184, 166, 0.03));
    box-shadow: 0 14px 34px rgba(31, 41, 55, 0.08);
}

.query-toolbar-group[b-plppqlaws0] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.query-toolbar-actions[b-plppqlaws0] {
    min-width: 300px;
}

.query-toolbar-imports[b-plppqlaws0] {
    justify-content: flex-end;
    margin-left: auto;
}

.query-toolbar-spacer[b-plppqlaws0] {
    flex: 1 1 auto;
    min-width: 24px;
}

.query-toolbar-label[b-plppqlaws0] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #6b7280;
}

.query-toolbar-buttons[b-plppqlaws0] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.query-toolbar-secondary[b-plppqlaws0] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-left: 8px;
    padding-left: 12px;
    border-left: 1px solid rgba(96, 96, 130, 0.14);
}

.query-action-btn[b-plppqlaws0] {
    min-width: 116px;
}

.query-toolbar[b-plppqlaws0]  .mud-button-root {
    min-height: 36px;
    padding: 8px 14px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: none;
    box-shadow: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.query-toolbar[b-plppqlaws0]  .mud-button-root:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(31, 41, 55, 0.12);
}

.query-toolbar[b-plppqlaws0]  .mud-button-filled.query-action-btn-primary {
    background: linear-gradient(135deg, #5b4cff, #6d5efc);
}

.query-toolbar[b-plppqlaws0]  .mud-button-filled.query-action-btn-success {
    background: linear-gradient(135deg, #0f9f8c, #14b8a6);
}

.query-toolbar[b-plppqlaws0]  .mud-button-filled.query-action-btn-warning {
    color: #fff;
    background: linear-gradient(135deg, #f59e0b, #fb923c);
}

.query-toolbar[b-plppqlaws0]  .mud-button-outlined {
    border-width: 1px;
    border-color: rgba(91, 76, 255, 0.45);
    background: rgba(255, 255, 255, 0.88);
}

.query-toolbar[b-plppqlaws0]  .mud-button-outlined:hover {
    border-color: rgba(91, 76, 255, 0.75);
    background: rgba(244, 245, 255, 0.98);
}

.query-toolbar[b-plppqlaws0]  .mud-button-filled.query-action-btn-export .mud-button-root,
.query-toolbar[b-plppqlaws0]  .query-action-btn-export .mud-button-root {
    color: #fff;
    background: linear-gradient(135deg, #4338ca, #6366f1);
}

.query-toolbar[b-plppqlaws0]  .query-action-btn-export .mud-button-root:hover:not(:disabled):not(.mud-disabled) {
    background: linear-gradient(135deg, #3730a3, #4f46e5);
}

.query-export-menu-item[b-plppqlaws0] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 220px;
}

.query-export-menu-title[b-plppqlaws0] {
    font-size: 12px;
    font-weight: 700;
    color: #111827;
}

.query-export-menu-desc[b-plppqlaws0] {
    font-size: 11px;
    color: #6b7280;
}

.query-toolbar[b-plppqlaws0]  .mud-button-root:disabled,
.query-toolbar[b-plppqlaws0]  .mud-button-root.mud-disabled {
    transform: none;
    box-shadow: none;
}

@media (max-width: 960px) {
    .query-toolbar[b-plppqlaws0] {
        align-items: flex-start;
    }

    .query-toolbar-spacer[b-plppqlaws0] {
        display: none;
    }

    .query-toolbar-actions[b-plppqlaws0],
    .query-toolbar-imports[b-plppqlaws0] {
        width: 100%;
        min-width: 0;
        margin-left: 0;
        justify-content: flex-start;
    }

    .query-toolbar-secondary[b-plppqlaws0] {
        width: 100%;
        margin-left: 0;
        padding-left: 0;
        border-left: 0;
    }
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/CategoryManagerComponent.razor.rz.scp.css */
.cmz-overlay[b-ci2k3f4kxh] {
    position: fixed;
    inset: 0;
    background: rgba(10, 20, 54, 0.5);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1200;
    animation: cmz-fade-b-ci2k3f4kxh 0.2s ease;
}

@keyframes cmz-fade-b-ci2k3f4kxh {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ── Dialog shell ── */
.cmz-dialog[b-ci2k3f4kxh] {
    background: white;
    border-radius: 8px;
    width: 92%;
    max-width: 720px;
    max-height: 86vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 48px rgba(10, 20, 54, 0.22);
    animation: cmz-up-b-ci2k3f4kxh 0.22s ease;
}

.cmz-dialog-sm[b-ci2k3f4kxh] { max-width: 460px; }

@keyframes cmz-up-b-ci2k3f4kxh {
    from { transform: translateY(16px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* ── Header ── */
.cmz-header[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    height: 48px;
    background: #0a1436;
    border-bottom: 2px solid #8B0000;
    flex-shrink: 0;
}

.cmz-inline-panel[b-ci2k3f4kxh] {
    margin-bottom: 10px;
    border: 1px solid #dde3ec;
    border-left: 3px solid #8B0000;
    border-radius: 6px;
    background: #f8fafd;
    overflow: hidden;
    animation: cmz-panel-in-b-ci2k3f4kxh 0.18s ease;
}

@keyframes cmz-panel-in-b-ci2k3f4kxh {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.cmz-inline-panel-header[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 7px 12px;
    background: #eef1f6;
    border-bottom: 1px solid #dde3ec;
}

.cmz-inline-panel-title[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: #0a1436;
}

.cmz-inline-panel-title i[b-ci2k3f4kxh] { color: #8B0000; font-size: 10px; }

.cmz-inline-close[b-ci2k3f4kxh] {
    width: 22px; height: 22px;
    display: flex; align-items: center; justify-content: center;
    background: transparent;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    cursor: pointer;
    color: #6b7280;
    font-size: 10px;
    transition: all 0.15s ease;
}

.cmz-inline-close:hover[b-ci2k3f4kxh] {
    background: #fee2e2;
    border-color: #fca5a5;
    color: #dc2626;
}

.cmz-inline-panel-body[b-ci2k3f4kxh] {
    padding: 10px 12px 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Name + Description side by side, labels and inputs start-aligned */
.cmz-inline-fields[b-ci2k3f4kxh] {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 10px;
    align-items: start;
}

/* Buttons sit in their own row, pushed to the right */
.cmz-inline-actions[b-ci2k3f4kxh] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

/* Keep the textarea compact and non-resizable inside the inline panel */
.cmz-inline-panel .cmz-textarea[b-ci2k3f4kxh] {
    resize: none;
    min-height: 60px;
}

.cmz-header-title[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    font-size: 13px;
    font-weight: 600;
}

.cmz-header-title i[b-ci2k3f4kxh] { color: #8fa3c0; font-size: 13px; }

.cmz-close-btn[b-ci2k3f4kxh] {
    width: 30px; height: 30px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 5px;
    cursor: pointer;
    color: #8fa3c0;
    font-size: 13px;
    transition: all 0.18s ease;
}

.cmz-close-btn:hover[b-ci2k3f4kxh] {
    background: rgba(255,255,255,0.18);
    color: white;
    transform: rotate(90deg);
}

/* ── Stats row ── */
.cmz-stats[b-ci2k3f4kxh] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    padding: 10px 14px;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
    flex-shrink: 0;
}

.cmz-stat[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    transition: border-color 0.18s ease;
}

.cmz-stat:hover[b-ci2k3f4kxh] { border-color: #8B0000; }

.cmz-stat-icon[b-ci2k3f4kxh] {
    width: 32px; height: 32px;
    display: flex; align-items: center; justify-content: center;
    background: #0a1436;
    border-radius: 6px;
    color: #8fa3c0;
    font-size: 13px;
    flex-shrink: 0;
}

.cmz-stat-num[b-ci2k3f4kxh] { font-size: 16px; font-weight: 700; color: #111827; line-height: 1; }
.cmz-stat-lbl[b-ci2k3f4kxh] { font-size: 10px; color: #6b7280; font-weight: 500; text-transform: uppercase; letter-spacing: 0.3px; }

/* ── Body ── */
.cmz-body[b-ci2k3f4kxh] { padding: 10px 14px; overflow: auto; flex: 1; }

/* ── Footer ── */
.cmz-footer[b-ci2k3f4kxh] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px 14px;
    background: #f9fafb;
    border-top: 1px solid #e5e7eb;
    flex-shrink: 0;
}

/* ── dt-btn (shared footer buttons) ── */
.dt-btn[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 16px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    border: none;
    transition: all 0.18s ease;
    white-space: nowrap;
}

.dt-btn i[b-ci2k3f4kxh] { font-size: 11px; }

.dt-btn-primary[b-ci2k3f4kxh] { background: #8B0000; color: white; border: 1px solid #8B0000; }
.dt-btn-primary:hover[b-ci2k3f4kxh] {
    background: #6d0000;
    border-color: #6d0000;
    box-shadow: 0 3px 8px rgba(139,0,0,0.3);
    transform: translateY(-1px);
}
.dt-btn-primary:active[b-ci2k3f4kxh] { transform: translateY(0); box-shadow: none; }

.dt-btn-ghost[b-ci2k3f4kxh] { background: white; color: #374151; border: 1px solid #d1d5db; }
.dt-btn-ghost:hover[b-ci2k3f4kxh] { background: #f3f4f6; border-color: #9ca3af; color: #111827; }
.dt-btn-ghost:active[b-ci2k3f4kxh] { background: #e5e7eb; }

/* ── Form ── */
.cmz-form[b-ci2k3f4kxh] { display: flex; flex-direction: column; gap: 14px; }
.cmz-form-group[b-ci2k3f4kxh] { display: flex; flex-direction: column; gap: 5px; }

.cmz-label[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: #374151;
}

.cmz-required[b-ci2k3f4kxh] { color: #8B0000; }
.cmz-optional[b-ci2k3f4kxh] { color: #9ca3af; font-weight: 400; text-transform: none; letter-spacing: 0; }

.cmz-input[b-ci2k3f4kxh] {
    width: 100%;
    padding: 9px 12px;
    border: 1px solid #d1d5db;
    border-radius: 5px;
    font-size: 12px;
    background: white;
    color: #1f2937;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.cmz-input:hover[b-ci2k3f4kxh] { border-color: #8B0000; }
.cmz-input:focus[b-ci2k3f4kxh] { outline: none; border-color: #8B0000; box-shadow: 0 0 0 3px rgba(139,0,0,0.1); }

.cmz-textarea[b-ci2k3f4kxh] {
    width: 100%;
    padding: 9px 12px;
    border: 1px solid #d1d5db;
    border-radius: 5px;
    font-size: 12px;
    background: white;
    color: #1f2937;
    resize: vertical;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.cmz-textarea:hover[b-ci2k3f4kxh] { border-color: #8B0000; }
.cmz-textarea:focus[b-ci2k3f4kxh] { outline: none; border-color: #8B0000; box-shadow: 0 0 0 3px rgba(139,0,0,0.1); }

/* ── Name cell in table ── */
.cmz-name-cell[b-ci2k3f4kxh] { display: flex; align-items: center; gap: 8px; font-weight: 500; color: #1f2937; }
.cmz-name-icon[b-ci2k3f4kxh] { font-size: 12px; color: #8B0000; }


/* ── Responsive ── */
@media (max-width: 768px) {
    .cmz-dialog[b-ci2k3f4kxh] { width: 96%; }
    .cmz-stats[b-ci2k3f4kxh] { grid-template-columns: 1fr; }
    .cmz-footer[b-ci2k3f4kxh] { flex-direction: column; }
    .cmz-footer .dt-btn[b-ci2k3f4kxh] { width: 100%; justify-content: center; }
}

/* ─────────────────────────────────────────────────────────────────────────
   Settings / Import-Export gear menu (in toolbar)
   Mirrors the parent WorkflowTableEditor's .dt-settings-* styles so the
   menu looks identical to the one on the Data Tables page.
   ────────────────────────────────────────────────────────────────────── */
.cmz-settings-wrapper[b-ci2k3f4kxh] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.cmz-settings-btn[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.cmz-settings-btn:hover[b-ci2k3f4kxh] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.cmz-settings-btn i[b-ci2k3f4kxh] { font-size: 13px; }

.cmz-settings-overlay[b-ci2k3f4kxh] {
    position: fixed;
    inset: 0;
    background: transparent;
    z-index: 1400;
}

.cmz-settings-menu[b-ci2k3f4kxh] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 230px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 12px 28px rgba(10, 20, 54, 0.18);
    padding: 8px;
    z-index: 1401;
    animation: cmz-menu-in-b-ci2k3f4kxh 0.15s ease;
}

@keyframes cmz-menu-in-b-ci2k3f4kxh {
    from { transform: translateY(-8px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* ─ Section header (clickable, with chevron) ─ */
.cmz-settings-section-header[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px 3px;
    cursor: pointer;
    user-select: none;
    border-radius: 6px;
}
.cmz-settings-section-header:hover[b-ci2k3f4kxh] { background: #f5f6fa; }

.cmz-settings-menu-title[b-ci2k3f4kxh] {
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
}

.cmz-section-chevron[b-ci2k3f4kxh] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}

.cmz-settings-divider[b-ci2k3f4kxh] {
    height: 1px;
    background: #f1f5f9;
    margin: 6px 4px;
}

/* ─ Settings rows (label + toggle, or single button) ─ */
.cmz-settings-item[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px;
    border-radius: 6px;
}

.cmz-toggle-label[b-ci2k3f4kxh] {
    font-size: 12px;
    color: #374151;
    user-select: none;
    flex: 1;
}

.cmz-toggle[b-ci2k3f4kxh] {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    flex-shrink: 0;
}
.cmz-toggle input[b-ci2k3f4kxh] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.cmz-toggle-track[b-ci2k3f4kxh] {
    width: 34px;
    height: 18px;
    border-radius: 9px;
    background: #d1d5db;
    transition: background 0.2s ease;
    position: relative;
    display: block;
}
.cmz-toggle-thumb[b-ci2k3f4kxh] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    background: white;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    transition: transform 0.2s ease;
    display: block;
}
.cmz-toggle input:checked + .cmz-toggle-track[b-ci2k3f4kxh] { background: #6d0000; }
.cmz-toggle input:checked + .cmz-toggle-track .cmz-toggle-thumb[b-ci2k3f4kxh] { transform: translateX(16px); }

/* ─ Action button used by Import/Export rows ─
   Visual parity with .ti-btn / .te-btn used by the parent's
   ImportTableComponent and ExportTableComponent. */
.cmz-action-btn[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: left;
    box-sizing: border-box;
}
.cmz-action-btn:hover[b-ci2k3f4kxh] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

/* Split layout for the "Export Categories" toggle (label + chevron). */
.cmz-action-btn-split[b-ci2k3f4kxh] {
    justify-content: space-between;
}
.cmz-action-btn-label[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.cmz-action-chevron[b-ci2k3f4kxh] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}

/* Sub-format rows revealed by the Export toggle. Slightly indented + lighter
   so they read as children of the Export button above them. */
.cmz-settings-item-sub[b-ci2k3f4kxh] {
    padding-left: 16px;
}
.cmz-action-btn-sub[b-ci2k3f4kxh] {
    height: 28px;
    background: #fbfcfe;
    border-color: #e5e7eb;
    font-weight: 500;
    color: #4b5563;
}
.cmz-action-btn-sub:hover[b-ci2k3f4kxh] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.cmz-action-btn-sub i[b-ci2k3f4kxh] {
    color: #8B0000;
    margin-right: 2px;
}

.cmz-tree[b-ci2k3f4kxh] {
    padding: 12px 16px 14px 44px;       
    max-height: 320px;                 
    overflow-y: auto;
    overflow-x: hidden;
}

/* Heading bar above the tree list */
.cmz-tree-head[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    margin-bottom: 8px;
    border-bottom: 1px dashed #e5e7eb;
    font-size: 11.5px;
    color: #4b5563;
}
.cmz-tree-head > i[b-ci2k3f4kxh] {
    color: #8B0000;
    font-size: 11px;
}
.cmz-tree-title[b-ci2k3f4kxh] { color: #4b5563; }
.cmz-tree-title strong[b-ci2k3f4kxh] { color: #0a1436; font-weight: 700; }
.cmz-tree-count[b-ci2k3f4kxh] {
    margin-left: auto;
    background: #0a1436;
    color: white;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 999px;
    letter-spacing: 0.3px;
}

/* List of table cards */
.cmz-tree-list[b-ci2k3f4kxh] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cmz-tree-item[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-left: 3px solid #cbd5e1;
    border-radius: 6px;
    transition: border-color 0.15s, box-shadow 0.15s, transform 0.12s;
    min-width: 0;
}
.cmz-tree-item:hover[b-ci2k3f4kxh] {
    border-color: #cbd5e1;
    border-left-color: #8B0000;
    box-shadow: 0 2px 6px rgba(15,31,75,.08);
    transform: translateX(2px);
}

.cmz-tree-bullet[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    background: linear-gradient(135deg, #0f1f4b 0%, #142258 100%);
    color: #b8c8e0;
    border-radius: 6px;
    font-size: 11px;
    flex-shrink: 0;
}

.cmz-tree-item-body[b-ci2k3f4kxh] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cmz-tree-item-name[b-ci2k3f4kxh] {
    font-size: 12.5px;
    font-weight: 600;
    color: #0a1436;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cmz-tree-item-display[b-ci2k3f4kxh] {
    font-size: 10.5px;
    color: #6b7280;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cmz-tree-item-meta[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.cmz-tree-tag[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: #e6f1fb;
    color: #185fa5;
    border: 1px solid rgba(24,95,165,.18);
    border-radius: 10px;
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.cmz-tree-tag i[b-ci2k3f4kxh] { font-size: 8.5px; }

/* Gray "No DB" variant — matches `.dt-badge-gray` on the main page. */
.cmz-tree-tag-empty[b-ci2k3f4kxh] {
    background: #eef0f6;
    color: #6b7280;
    border-color: #e3e7f0;
}

.cmz-tree-stat[b-ci2k3f4kxh] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10.5px;
    color: #5a6070;
    font-weight: 600;
    background: #f3f5fa;
    border: 1px solid #e3e7f0;
    padding: 1px 7px;
    border-radius: 10px;
    font-variant-numeric: tabular-nums;
}
.cmz-tree-stat i[b-ci2k3f4kxh] {
    font-size: 9.5px;
    color: #8892a4;
}

/* Empty state */
.cmz-tree-empty[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 12px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 6px;
    color: #6b7280;
    font-size: 12px;
    font-style: italic;
}
.cmz-tree-empty i[b-ci2k3f4kxh] { color: #8b9dc0; font-size: 14px; }

/* Loading state */
.cmz-tree-loading[b-ci2k3f4kxh] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    color: #6b7280;
    font-size: 12px;
}

.cmz-tree-spinner[b-ci2k3f4kxh] {
    width: 14px;
    height: 14px;
    border: 2px solid #e5e7eb;
    border-top-color: #8B0000;
    border-radius: 50%;
    animation: cmz-tree-spin-b-ci2k3f4kxh 0.7s linear infinite;
    flex-shrink: 0;
}

@keyframes cmz-tree-spin-b-ci2k3f4kxh {
    to { transform: rotate(360deg); }
}

/* Custom scrollbar inside the tree */
.cmz-tree[b-ci2k3f4kxh]::-webkit-scrollbar { width: 6px; }
.cmz-tree[b-ci2k3f4kxh]::-webkit-scrollbar-track { background: transparent; }
.cmz-tree[b-ci2k3f4kxh]::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 3px;
}
.cmz-tree[b-ci2k3f4kxh]::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Mobile — drop the indent + tighter spacing */
@media (max-width: 640px) {
    .cmz-tree[b-ci2k3f4kxh] { padding: 10px 12px; max-height: 260px; }
    .cmz-tree-item-meta[b-ci2k3f4kxh] { display: none; }       /* keep names readable on phones */
    .cmz-tree-item-name[b-ci2k3f4kxh] { font-size: 12px; }
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/ColumnFilterPopover.razor.rz.scp.css */
.cfp-root[b-rrayiybazy] {
    background: #fff;
    border: 1px solid #d0d7de;
    border-radius: 6px;
    box-shadow: 0 8px 24px rgba(0,0,0,.18);
    min-width: 260px;
    max-width: 340px;
    padding: 10px 12px 12px 12px;
    font-size: 13px;
    color: #1f2328;
    z-index: 2000;
}

.cfp-header[b-rrayiybazy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

.cfp-title[b-rrayiybazy] {
    font-weight: 600;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cfp-close[b-rrayiybazy] {
    background: transparent;
    border: none;
    font-size: 18px;
    line-height: 1;
    color: #656d76;
    cursor: pointer;
    padding: 0 2px;
}

.cfp-close:hover[b-rrayiybazy] {
    color: #1f2328;
}

.cfp-body[b-rrayiybazy] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.cfp-label[b-rrayiybazy] {
    font-size: 11px;
    font-weight: 500;
    color: #656d76;
    margin-top: 6px;
}

.cfp-select[b-rrayiybazy],
.cfp-input[b-rrayiybazy] {
    width: 100%;
    padding: 6px 8px;
    border: 1px solid #d0d7de;
    border-radius: 4px;
    font-size: 13px;
    box-sizing: border-box;
    background: #fff;
    color: #1f2328;
}

.cfp-textarea[b-rrayiybazy] {
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-size: 12px;
    line-height: 1.4;
    min-height: 72px;
    resize: vertical;
    white-space: pre;
}

.cfp-select:focus[b-rrayiybazy],
.cfp-input:focus[b-rrayiybazy] {
    outline: none;
    border-color: #0969da;
    box-shadow: 0 0 0 2px rgba(9,105,218,.2);
}

.cfp-footer[b-rrayiybazy] {
    display: flex;
    justify-content: flex-end;
    gap: 6px;
    margin-top: 12px;
}

.cfp-btn[b-rrayiybazy] {
    padding: 5px 12px;
    border-radius: 4px;
    font-size: 12px;
    cursor: pointer;
    border: 1px solid transparent;
}

.cfp-btn-text[b-rrayiybazy] {
    background: transparent;
    color: #656d76;
}

.cfp-btn-text:hover[b-rrayiybazy] {
    color: #1f2328;
    background: #f3f4f6;
}

.cfp-btn-primary[b-rrayiybazy] {
    background: #0969da;
    color: #fff;
    border-color: #0969da;
}

.cfp-btn-primary:hover[b-rrayiybazy] {
    background: #0860c7;
}

.cfp-preset-row[b-rrayiybazy] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-bottom: 6px;
}

.cfp-preset-chip[b-rrayiybazy] {
    background: #f3f4f6;
    border: 1px solid #d0d7de;
    color: #1f2328;
    font-size: 11px;
    padding: 3px 8px;
    border-radius: 10px;
    cursor: pointer;
    white-space: nowrap;
    transition: background .12s ease, border-color .12s ease, color .12s ease;
}

.cfp-preset-chip:hover[b-rrayiybazy] {
    background: #e7eaee;
    border-color: #b6bfca;
}

.cfp-preset-chip:active[b-rrayiybazy] {
    background: #0969da;
    border-color: #0969da;
    color: #fff;
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/CustomDataTable.razor.rz.scp.css */
    .cdt-wrapper[b-78j5iojeat] {
        --navy:       #0f1f4b;
        --navy-light: #1a2f6b;
        --navy-hover: #0a1536;
        --crimson:    #6d0000;
        --crimson-lt: #fdecea;
        --border:     #e8eaef;
        --bg:         #f5f6fa;
        --text:       #1e2433;
        --text-muted: #8892a4;
        --radius:     10px;
        --shadow:     0 4px 24px rgba(15,31,75,.10);
    }

    /* ═══ GROUP / SECTION HEADER ROW ═══ */
    .cdt-row-section-header[b-78j5iojeat] {
        background: linear-gradient(180deg, #f8f9fc 0%, #f3f5fa 100%);
        border-top: 1px solid #e8eaef;
        border-bottom: 1px solid #e8eaef;
    }
    .cdt-row-section-header:first-child[b-78j5iojeat] { border-top: none; }
    .cdt-row-section-header:hover[b-78j5iojeat] { background: linear-gradient(180deg, #f8f9fc 0%, #f3f5fa 100%); }

    .cdt-section-header-cell[b-78j5iojeat] {
        padding: 7px 16px !important;
        background: transparent;
    }
    .cdt-section-label[b-78j5iojeat] {
        font-size: 10.5px;
        font-weight: 700;
        color: #5a6070;
        text-transform: uppercase;
        letter-spacing: 0.7px;
        margin-right: 6px;
    }
    .cdt-section-count[b-78j5iojeat] {
        font-size: 11px;
        color: #8892a4;
        font-weight: 500;
    }

    /* ═══ WRAPPER ═══ */
    .cdt-wrapper[b-78j5iojeat] {
        background: white;
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        overflow: hidden;
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
        font-size: 13px;
        font-family: 'Segoe UI', system-ui, sans-serif;
        border: 1px solid var(--border);
    }

    /* ═══ TOOLBAR ═══ */
    .cdt-toolbar[b-78j5iojeat] {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding: 12px 16px;
        border-bottom: 1px solid var(--border);
        background: #fff;
        flex-shrink: 0;
        gap: 8px;
    }

    .cdt-toolbar-right[b-78j5iojeat] {
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: wrap;
    }

    /* ═══ SEARCH ═══ */
    .cdt-search-box[b-78j5iojeat] {
        position: relative;
        display: flex;
        align-items: center;
    }

    .cdt-search-icon[b-78j5iojeat] {
        position: absolute;
        left: 11px;
        font-size: 11px;
        color: var(--text-muted);
        pointer-events: none;
    }

    .cdt-search-input[b-78j5iojeat] {
        padding: 7px 12px 7px 30px;
        border: 1.5px solid var(--border);
        border-radius: 8px;
        font-size: 12.5px;
        width: 210px;
        transition: all 0.2s;
        color: var(--text);
        background: var(--bg);
    }

    .cdt-search-input:hover[b-78j5iojeat] { border-color: #b0b8cc; }

    .cdt-search-input:focus[b-78j5iojeat] {
        outline: none;
        border-color: var(--navy);
        background: white;
        box-shadow: 0 0 0 3px rgba(15,31,75,.08);
        width: 250px;
    }

    /* ═══ TOOLBAR BUTTONS ═══ */
    .cdt-btn[b-78j5iojeat] {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 7px 14px;
        border: none;
        border-radius: 8px;
        font-size: 12.5px;
        font-weight: 600;
        cursor: pointer;
        transition: all 0.18s;
        white-space: nowrap;
        letter-spacing: 0.01em;
    }

    .cdt-btn i[b-78j5iojeat] { font-size: 11px; }

    .cdt-btn-primary[b-78j5iojeat] {
        background: var(--crimson);
        color: white;
        box-shadow: 0 2px 8px rgba(192,25,42,.25);
    }
    .cdt-btn-primary:hover[b-78j5iojeat] {
        background: #a8151f;
        box-shadow: 0 4px 14px rgba(192,25,42,.35);
        transform: translateY(-1px);
    }
    .cdt-btn-primary:active[b-78j5iojeat] { transform: translateY(0); }

    .cdt-btn-danger[b-78j5iojeat] {
        background: var(--crimson-lt);
        color: var(--crimson);
        border: 1.5px solid #f5c0c4;
    }
    .cdt-btn-danger:hover[b-78j5iojeat] {
        background: #fbd5d8;
        border-color: var(--crimson);
    }

    .cdt-btn-text[b-78j5iojeat] { display: inline; }

    .cdt-bulk-actions[b-78j5iojeat] {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        padding: 6px 10px;
        border-radius: 10px;
        background: #fff7f7;
        border: 1px solid #f1cdcf;
        box-shadow: 0 3px 10px rgba(192,25,42,.06);
    }

    .cdt-bulk-count[b-78j5iojeat] {
        font-size: 12px;
        font-weight: 700;
        color: var(--crimson);
        white-space: nowrap;
    }
    
    .cdt-filters[b-78j5iojeat] { flex-shrink: 0; }

    /* ═══ TABLE CONTAINER ═══ */
    .cdt-table-container[b-78j5iojeat] {
        flex: 1;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        min-height: 0;
    }

    .cdt-scroll[b-78j5iojeat] {
        flex: 1;
        overflow: auto;
        position: relative;
    }

    .cdt-scroll[b-78j5iojeat]::-webkit-scrollbar { height: 5px; width: 5px; }
    .cdt-scroll[b-78j5iojeat]::-webkit-scrollbar-track { background: #f1f1f1; }
    .cdt-scroll[b-78j5iojeat]::-webkit-scrollbar-thumb { background: #d0d4de; border-radius: 4px; }
    .cdt-scroll[b-78j5iojeat]::-webkit-scrollbar-thumb:hover { background: #b0b8cc; }

    /* ═══ TABLE ═══ */
    .cdt-table[b-78j5iojeat] {
        width: 100%;
        border-collapse: collapse;
    }

    /* Header */
    .cdt-thead[b-78j5iojeat] {
        position: sticky;
        top: 0;
        z-index: 99;
    }

    .cdt-table th[b-78j5iojeat] {
        padding: 11px 14px;
        text-align: left;
        font-size: 10.5px;
        font-weight: 700;
        color: rgba(255,255,255,0.85);
        text-transform: uppercase;
        letter-spacing: 0.07em;
        border-bottom: 2px solid rgba(192,25,42,0.6);
        background: var(--navy);
        white-space: nowrap;
    }

    .cdt-th-inner[b-78j5iojeat] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        width: 100%;
    }
    .cdt-th-title[b-78j5iojeat] {
        flex: 1 1 auto;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .cdt-th-actions[b-78j5iojeat] {
        display: flex;
        align-items: center;
        gap: 4px;
        flex-shrink: 0;
    }

    .cdt-sortable[b-78j5iojeat] {
        cursor: pointer;
        user-select: none;
        transition: background 0.15s;
    }

    .cdt-sortable:hover[b-78j5iojeat] { background: var(--navy-light) !important; }
    
    .cdt-sort-icon[b-78j5iojeat] {
        font-size: 12px;
        margin-left: 4px;
        line-height: 1;
    }

    .cdt-sort-active[b-78j5iojeat] {
        /* Near-white so the active sort reads against the navy header — same
           treatment as DatatableGrid's .e-sortfilterdiv overrides. */
        color: rgba(255, 255, 255, 0.92);
    }

    .cdt-sort-idle[b-78j5iojeat] {
        color: rgba(255, 255, 255, 0.45) !important;
    }

    .cdt-sortable:hover .cdt-sort-idle[b-78j5iojeat] {
        color: rgba(255, 255, 255, 0.85) !important;
    }

    /* Sticky header cells */
    .cdt-thead .cdt-sticky-left[b-78j5iojeat],
    .cdt-thead .cdt-sticky-right[b-78j5iojeat] {
        background: var(--navy);
        z-index: 101;
    }

    /* Body rows */
    .cdt-table td[b-78j5iojeat] {
        padding: 10px 14px;
        border-bottom: 1px solid var(--border);
        font-size: 12.5px;
        color: var(--text);
        line-height: 1.45;
        max-width: 380px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .cdt-table tbody tr[b-78j5iojeat] { transition: background 0.1s; }

    .cdt-table tbody tr:hover[b-78j5iojeat] { background: #f7f8fc; }

    .cdt-table tbody tr:last-child td[b-78j5iojeat] { border-bottom: none; }

    .cdt-table tbody tr.cdt-row-selected[b-78j5iojeat] { background: #fff5f5; }

    /* Sticky body cells */
    .cdt-sticky-left[b-78j5iojeat] {
        position: sticky;
        left: 0;
        background: inherit;
        z-index: 50;
        border-right: 1px solid var(--border);
    }

    .cdt-sticky-right[b-78j5iojeat] {
        position: sticky;
        right: 0;
        background: inherit;
        z-index: 50;
        border-left: 1px solid var(--border);
    }

    .cdt-table tbody tr .cdt-sticky-left[b-78j5iojeat],
    .cdt-table tbody tr .cdt-sticky-right[b-78j5iojeat] { background: white; }

    .cdt-table tbody tr:hover .cdt-sticky-left[b-78j5iojeat],
    .cdt-table tbody tr:hover .cdt-sticky-right[b-78j5iojeat] { background: #f7f8fc; }

    .cdt-table tbody tr.cdt-row-selected .cdt-sticky-left[b-78j5iojeat],
    .cdt-table tbody tr.cdt-row-selected .cdt-sticky-right[b-78j5iojeat] { background: #fff5f5; }
    
    .cdt-table tbody tr.cdt-row-clickable[b-78j5iojeat] { cursor: pointer; }

    .cdt-table tbody tr.cdt-row-active[b-78j5iojeat] { background: #fdf2f2; }
    .cdt-table tbody tr.cdt-row-active .cdt-sticky-left[b-78j5iojeat],
    .cdt-table tbody tr.cdt-row-active .cdt-sticky-right[b-78j5iojeat] { background: #fdf2f2; }
    .cdt-table tbody tr.cdt-row-active td:first-child[b-78j5iojeat] {
        box-shadow: inset 3px 0 0 0 #6d0000;
    }
    .cdt-table tbody tr.cdt-row-active:hover[b-78j5iojeat],
    .cdt-table tbody tr.cdt-row-active:hover .cdt-sticky-left[b-78j5iojeat],
    .cdt-table tbody tr.cdt-row-active:hover .cdt-sticky-right[b-78j5iojeat] { background: #fbe7e7; }

    /* Column sizing */
    .cdt-col-check[b-78j5iojeat]   { width: 46px; min-width: 46px; }
    .cdt-col-actions[b-78j5iojeat] { width: 120px; min-width: 120px; text-align: center; }

    /* Checkbox */
    .cdt-checkbox[b-78j5iojeat] {
        width: 15px;
        height: 15px;
        cursor: pointer;
        accent-color: var(--crimson);
        border-radius: 2px;
        opacity: 0;
        transition: opacity 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
        transform: scale(0.92);
    }

    .cdt-selection-enabled .cdt-table tbody tr:hover .cdt-checkbox[b-78j5iojeat],
    .cdt-selection-enabled .cdt-col-check:hover .cdt-checkbox[b-78j5iojeat],
    .cdt-selection-enabled .cdt-checkbox:focus-visible[b-78j5iojeat],
    .cdt-selection-enabled .cdt-checkbox:checked[b-78j5iojeat],
    .cdt-selection-enabled.cdt-has-selection .cdt-checkbox[b-78j5iojeat] {
        opacity: 1;
        transform: scale(1);
    }

    .cdt-selection-enabled .cdt-checkbox:focus-visible[b-78j5iojeat] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(109,0,0,.16);
    }

    .cdt-selection-enabled .cdt-col-check[b-78j5iojeat] {
        transition: background-color 0.16s ease;
    }

    .cdt-selection-enabled .cdt-table tbody tr:hover .cdt-col-check[b-78j5iojeat],
    .cdt-selection-enabled.cdt-has-selection .cdt-table tbody .cdt-col-check[b-78j5iojeat],
    .cdt-selection-enabled .cdt-table tbody tr.cdt-row-selected .cdt-col-check[b-78j5iojeat] {
        background: linear-gradient(180deg, #fff8f8 0%, #fff2f2 100%);
    }

    .cdt-thead .cdt-col-check.cdt-sticky-left[b-78j5iojeat],
    .cdt-thead .cdt-col-check.cdt-sticky-left:hover[b-78j5iojeat] {
        background: var(--navy) !important;
    }

    .cdt-checkbox-toggle[b-78j5iojeat] {
        width: 15px;
        height: 15px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border-radius: 2px;
        border: 1px solid #7f7f7f;
        background: #7b7b7b;
        cursor: pointer;
        opacity: 0;
        transition: opacity 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
        transform: scale(0.92);
    }

    .cdt-selection-enabled .cdt-table tbody tr:hover .cdt-checkbox-toggle[b-78j5iojeat],
    .cdt-selection-enabled .cdt-col-check:hover .cdt-checkbox-toggle[b-78j5iojeat],
    .cdt-selection-enabled.cdt-has-selection .cdt-checkbox-toggle[b-78j5iojeat] {
        opacity: 1;
        transform: scale(1);
    }

    .cdt-checkbox-toggle:focus-visible[b-78j5iojeat] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(109,0,0,.16);
    }

    .cdt-checkbox-minus[b-78j5iojeat] {
        width: 8px;
        height: 2px;
        border-radius: 999px;
        background: #fff;
        display: block;
    }
    
    .cdt-action-btns[b-78j5iojeat] {
        display: flex;
        gap: 5px;
        justify-content: center;
        align-items: center;
    }

    .cdt-icon-btn[b-78j5iojeat] {
        width: 30px;
        height: 30px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 8px;
        border: none;
        cursor: pointer;
        font-size: 12px;
        transition: background 0.15s, transform 0.12s, box-shadow 0.15s;
        position: relative;
    }

    /* Edit — navy tint */
    .cdt-btn-edit[b-78j5iojeat] {
        background: #e8edf8;
        color: var(--navy);
    }
    .cdt-btn-edit:hover[b-78j5iojeat] {
        background: var(--navy);
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(15,31,75,.28);
    }

    /* View — teal/green tint */
    .cdt-btn-view[b-78j5iojeat] {
        background: #e3f5ec;
        color: #1a7a4a;
    }
    .cdt-btn-view:hover[b-78j5iojeat] {
        background: #1a7a4a;
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(26,122,74,.28);
    }

    /* Delete — crimson tint */
    .cdt-btn-delete[b-78j5iojeat] {
        background: var(--crimson-lt);
        color: var(--crimson);
    }
    .cdt-btn-delete:hover[b-78j5iojeat] {
        background: var(--crimson);
        color: #fff;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(192,25,42,.28);
    }

    .cdt-icon-btn:active[b-78j5iojeat] { transform: translateY(0); box-shadow: none; }

    /* Tooltip via title attribute */
    .cdt-icon-btn[b-78j5iojeat]::after {
        content: attr(title);
        position: absolute;
        bottom: calc(100% + 7px);
        left: 50%;
        transform: translateX(-50%);
        background: var(--navy);
        color: rgba(255,255,255,.92);
        font-size: 10.5px;
        font-weight: 600;
        padding: 3px 9px;
        border-radius: 5px;
        white-space: nowrap;
        pointer-events: none;
        opacity: 0;
        transition: opacity 0.15s;
        z-index: 200;
    }
    .cdt-icon-btn:hover[b-78j5iojeat]::after { opacity: 1; }

    /* ═══ EMPTY / LOADING ═══ */
    .cdt-state-box[b-78j5iojeat] {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 60px 24px;
        color: var(--text-muted);
        flex: 1;
        gap: 14px;
    }

    .cdt-spinner[b-78j5iojeat] {
        width: 38px;
        height: 38px;
        border: 3px solid var(--border);
        border-top-color: var(--crimson);
        border-radius: 50%;
        animation: cdt-spin-b-78j5iojeat 0.7s linear infinite;
    }

    @keyframes cdt-spin-b-78j5iojeat { to { transform: rotate(360deg); } }

    .cdt-empty-icon[b-78j5iojeat] { font-size: 40px; color: #d5d9e2; }

    .cdt-empty-title[b-78j5iojeat] {
        font-size: 13px;
        font-weight: 600;
        color: var(--text-muted);
        margin: 0;
    }

    /* ═══ FOOTER / PAGINATION ═══ */
    .cdt-footer[b-78j5iojeat] {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding: 8px 16px;
        border-top: 1px solid var(--border);
        background: #fff;
        flex-shrink: 0;
    }

    .cdt-pagination[b-78j5iojeat] {
        display: flex;
        align-items: center;
        gap: 12px;
    }

    .cdt-pg-label[b-78j5iojeat] {
        font-size: 12px;
        color: var(--text-muted);
        white-space: nowrap;
    }

    .cdt-pg-select[b-78j5iojeat] {
        padding: 5px 10px;
        border: 1.5px solid var(--border);
        border-radius: 7px;
        font-size: 12px;
        background: var(--bg);
        color: var(--text);
        cursor: pointer;
        transition: border-color 0.18s;
        font-weight: 500;
    }

    .cdt-pg-select:hover[b-78j5iojeat]  { border-color: #b0b8cc; }
    .cdt-pg-select:focus[b-78j5iojeat]  {
        outline: none;
        border-color: var(--navy);
        box-shadow: 0 0 0 3px rgba(15,31,75,.08);
        background: white;
    }

    .cdt-pg-range[b-78j5iojeat] {
        font-size: 12px;
        color: var(--text);
        font-weight: 600;
        padding-left: 12px;
        border-left: 1.5px solid var(--border);
        white-space: nowrap;
    }

    .cdt-nav-btns[b-78j5iojeat] {
        display: flex;
        align-items: center;
        gap: 2px;
        padding-left: 12px;
        border-left: 1.5px solid var(--border);
    }

    .cdt-nav-btn[b-78j5iojeat] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        padding: 0;
        border: none;
        background: transparent;
        color: var(--text-muted);
        cursor: pointer;
        border-radius: 7px;
        transition: all 0.15s;
    }

    .cdt-nav-btn svg[b-78j5iojeat] { width: 18px; height: 18px; }

    .cdt-nav-btn:hover:not(:disabled)[b-78j5iojeat] {
        background: var(--bg);
        color: var(--navy);
    }

    .cdt-nav-btn:active:not(:disabled)[b-78j5iojeat] {
        background: #e8edf8;
        transform: scale(0.95);
    }

    .cdt-nav-btn:disabled[b-78j5iojeat] { opacity: 0.3; cursor: not-allowed; }

    /* ═══ RESPONSIVE ═══ */
    @media (max-width: 768px) {
        .cdt-toolbar[b-78j5iojeat] { padding: 8px 10px; }
        .cdt-search-input[b-78j5iojeat] { width: 150px; }
        .cdt-search-input:focus[b-78j5iojeat] { width: 190px; }
        .cdt-btn-text[b-78j5iojeat] { display: none; }
        .cdt-btn[b-78j5iojeat] { padding: 7px 10px; min-width: 34px; justify-content: center; }
        .cdt-footer[b-78j5iojeat] { padding: 6px 10px; }
    }

    @media (max-width: 480px) {
        .cdt-nav-btn[b-78j5iojeat] { width: 26px; height: 26px; }
        .cdt-nav-btn svg[b-78j5iojeat] { width: 16px; height: 16px; }
    }
    
    .cdt-btn-drag[b-78j5iojeat] {
    cursor: grab;
    background: #f8fafc;
    color: #64748b;
    border: 1px solid #d7dce7;
    }
    
    .cdt-btn-drag:hover[b-78j5iojeat] {
        background: #eef2ff;
        color: #1f3a8a;
        border-color: #c7d2fe;
    }
    
    .cdt-btn-drag:active[b-78j5iojeat] {
        cursor: grabbing;
    }
    
    .cdt-btn-drag-disabled[b-78j5iojeat] {
        cursor: not-allowed;
        color: #b0b8cc;
        background: #f9fafb;
        border-color: #e5e7eb;
    }
    
    .cdt-row-draggable td[b-78j5iojeat] {
        transition: background 0.16s ease, border-color 0.16s ease, opacity 0.16s ease;
    }
    
    .cdt-row-drop-target td[b-78j5iojeat] {
        background: #eef4ff !important;
        border-bottom-color: #7c98d6;
    }
    
    .cdt-row-dragging td[b-78j5iojeat] {
        opacity: 0.58;
    }

    .cdt-filter-btn[b-78j5iojeat] {
        background: transparent;
        border: none;
        color: rgba(255, 255, 255, 0.7);
        font-size: 11px;
        padding: 2px 4px;
        cursor: pointer;
        border-radius: 3px;
        line-height: 1;
        margin-left: 4px;
        transition: color 0.12s ease, background 0.12s ease;
    }

    .cdt-filter-btn:hover[b-78j5iojeat] {
        color: #fff;
        background: rgba(255, 255, 255, 0.12);
    }

    .cdt-filter-btn.active[b-78j5iojeat] {
        color: #ffd666;
    }
    
    .cdt-filter-bar[b-78j5iojeat] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 6px;
        padding: 8px 12px;
        background: #f5f7fa;
        border-bottom: 1px solid var(--border);
        font-size: 12px;
    }

    .cdt-filter-chip[b-78j5iojeat] {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        padding: 3px 8px;
        background: #fff;
        border: 1px solid var(--border);
        border-radius: 12px;
        color: var(--text);
        white-space: nowrap;
    }

    .cdt-filter-chip-x[b-78j5iojeat] {
        background: transparent;
        border: none;
        color: var(--text-muted);
        font-size: 14px;
        line-height: 1;
        padding: 0 2px;
        cursor: pointer;
    }

    .cdt-filter-chip-x:hover[b-78j5iojeat] { color: var(--text); }

    .cdt-filter-match-chip[b-78j5iojeat] {
        background: var(--navy);
        color: #fff;
        border: none;
        padding: 3px 10px;
        border-radius: 12px;
        font-size: 11px;
        font-weight: 600;
        cursor: pointer;
    }

    .cdt-filter-match-chip:hover[b-78j5iojeat] { background: var(--navy-light); }

    .cdt-filter-clear-all[b-78j5iojeat] {
        background: transparent;
        border: none;
        color: var(--crimson);
        font-size: 11px;
        font-weight: 500;
        cursor: pointer;
        padding: 3px 6px;
        margin-left: auto;
    }

    .cdt-filter-clear-all:hover[b-78j5iojeat] { text-decoration: underline; }
    
    .cdt-filter-portal-overlay[b-78j5iojeat] {
        position: fixed;
        inset: 0;
        background: transparent;
        z-index: 2099;
    }

    .cdt-filter-portal[b-78j5iojeat] {
        position: fixed;
        z-index: 2100;
    }
    
    .cdt-wrapper .cell-content[b-78j5iojeat] {
        white-space: nowrap;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    
    .cdt-wrapper td.cell-scroll-active[b-78j5iojeat] {
        background-color: #fffbeb !important;
        outline: 1.5px solid #f59e0b;
        z-index: 100 !important;
    }

    .cdt-wrapper td.cell-scroll-active .cell-content[b-78j5iojeat] {
        overflow-x: auto;
        text-overflow: unset;
        white-space: nowrap;
        width: 100%;
        max-width: 100%;
        display: block;
        cursor: text;
        scrollbar-width: thin;
    }

    .cdt-wrapper td.cell-scroll-active .cell-content[b-78j5iojeat]::-webkit-scrollbar {
        height: 3px;
    }

    .cdt-wrapper td.cell-scroll-active .cell-content[b-78j5iojeat]::-webkit-scrollbar-thumb {
        background: #94a3b8;
        border-radius: 2px;
    }
    
.cdt-wrapper .cdt-col-expand[b-78j5iojeat] {
    width: 30px;
    min-width: 30px;
    max-width: 30px;
    padding: 0;
    text-align: center;
}

.cdt-thead th.cdt-col-expand[b-78j5iojeat] {
    padding: 0;
}
.cdt-thead th.cdt-col-expand[b-78j5iojeat]::after {
    content: '\f105'; /* fa-angle-right — subtle marker on the navy header */
    font-family: 'Font Awesome 6 Free', 'Font Awesome 5 Free', FontAwesome;
    font-weight: 900;
    color: rgba(255,255,255,0.35);
    font-size: 11px;
    display: inline-block;
}

/* Body cell — keep transparent so it inherits row stripes / hover */
.cdt-wrapper tbody td.cdt-col-expand[b-78j5iojeat] {
    padding: 0;
    border-right: 1px solid transparent;
    transition: border-color 0.15s, background 0.15s;
}

/* Subtle indent guide while a row is expanded — left "rail" carries down */
.cdt-wrapper tr.cdt-row-is-expanded > td.cdt-col-expand[b-78j5iojeat] {
    border-right: 1px solid rgba(109,0,0,0.18);
}

/* Chevron toggle button — circular pill, fits cleanly in 30px column */
.cdt-wrapper .cdt-expand-btn[b-78j5iojeat] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    padding: 0;
    background: rgba(15,31,75,0.04);
    border: 1px solid rgba(15,31,75,0.08);
    border-radius: 50%;
    color: #6b7280;
    cursor: pointer;
    transition: background 0.18s, color 0.18s, border-color 0.18s, box-shadow 0.18s;
}

.cdt-wrapper .cdt-expand-btn i[b-78j5iojeat] {
    font-size: 9.5px;
    line-height: 1;
    transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Idle row hover — gentle hint that the chevron is interactive */
.cdt-wrapper tbody tr:hover .cdt-expand-btn[b-78j5iojeat] {
    background: #ffffff;
    border-color: #cbd5e1;
    color: #0f1f4b;
}

/* Direct hover on the chevron — pop it forward */
.cdt-wrapper .cdt-expand-btn:hover[b-78j5iojeat] {
    background: #ffffff;
    border-color: #8B0000;
    color: #8B0000;
    box-shadow: 0 2px 6px rgba(139,0,0,0.18);
}

/* Expanded state — solid crimson pill */
.cdt-wrapper .cdt-expand-btn.expanded[b-78j5iojeat] {
    background: linear-gradient(135deg, #6d0000 0%, #8B0000 100%);
    border-color: #6d0000;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(139,0,0,0.28);
}
.cdt-wrapper .cdt-expand-btn.expanded i[b-78j5iojeat] {
    transform: rotate(90deg);
}
.cdt-wrapper tbody tr:hover .cdt-expand-btn.expanded[b-78j5iojeat] {
    /* Don't fade the bright crimson when the row is hovered */
    background: linear-gradient(135deg, #6d0000 0%, #8B0000 100%);
    color: #ffffff;
}

/* Highlight the parent row while its expansion is open */
.cdt-wrapper tr.cdt-row-is-expanded > td[b-78j5iojeat] {
    background: #fafbff;
    border-bottom-color: transparent;
}
.cdt-wrapper tr.cdt-row-is-expanded:hover > td[b-78j5iojeat] {
    background: #f4f6fc;
}

.cdt-wrapper tr.cdt-row-expanded > td.cdt-expand-cell[b-78j5iojeat] {
    padding: 0;
    background: linear-gradient(180deg, #f6f8fc 0%, #ffffff 100%);
    border-bottom: 1px solid #e8eaef;
    box-shadow: inset 3px 0 0 #6d0000;
}

/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/DatatableGrid.razor.rz.scp.css */
.dg-wrapper[b-h1tvwrol36] {
    background: white;
    border-radius: 10px;
    box-shadow: 0 4px 24px rgba(15,31,75,.10);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    font-size: 13px;
    border: 1px solid #e8eaef;
}

/* ── Toolbar ── */
.dg-toolbar[b-h1tvwrol36] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid #e8eaef;
    background: #fff;
    flex-shrink: 0;
}

.dg-toolbar-right[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.dg-search-box[b-h1tvwrol36] {
    position: relative;
    display: flex;
    align-items: center;
}

.dg-search-icon[b-h1tvwrol36] {
    position: absolute;
    left: 11px;
    font-size: 11px;
    color: #8892a4;
    pointer-events: none;
}

.dg-search-input[b-h1tvwrol36] {
    padding: 7px 12px 7px 30px;
    border: 1.5px solid #e8eaef;
    border-radius: 8px;
    font-size: 12.5px;
    width: 210px;
    color: #1e2433;
    background: #f5f6fa;
    transition: all 0.2s;
}

.dg-search-input:hover[b-h1tvwrol36] { border-color: #b0b8cc; }

.dg-search-input:focus[b-h1tvwrol36] {
    outline: none;
    border-color: #0f1f4b;
    background: white;
    box-shadow: 0 0 0 3px rgba(15,31,75,.08);
    width: 250px;
}

.dg-btn[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border: none;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.18s;
    white-space: nowrap;
    letter-spacing: 0.01em;
}

.dg-btn i[b-h1tvwrol36] { font-size: 11px; }
.dg-btn-text[b-h1tvwrol36] { display: inline; }

.dg-btn-primary[b-h1tvwrol36] {
    background: #6d0000;
    color: white;
    box-shadow: 0 2px 8px rgba(109,0,0,.25);
}

.dg-btn-primary:hover[b-h1tvwrol36] {
    background: #580000;
    box-shadow: 0 4px 14px rgba(109,0,0,.35);
    transform: translateY(-1px);
}

.dg-btn-primary:active[b-h1tvwrol36] { transform: translateY(0); }

.dg-btn-danger[b-h1tvwrol36] {
    background: white;
    color: #6d0000;
    border: 1px solid #fca5a5;
}

.dg-btn-danger:hover[b-h1tvwrol36] {
    background: #fef2f2;
    border-color: #6d0000;
}

.dg-bulk-actions[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border-radius: 10px;
    background: #fff7f7;
    border: 1px solid #f1cdcf;
    box-shadow: 0 3px 10px rgba(192,25,42,.06);
}

.dg-bulk-count[b-h1tvwrol36] {
    font-size: 12px;
    font-weight: 700;
    color: #6d0000;
    white-space: nowrap;
}


.dg-grid-body[b-h1tvwrol36] {
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.dg-state[b-h1tvwrol36] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 24px;
    color: #8892a4;
    flex: 1;
    gap: 14px;
}

.dg-spinner[b-h1tvwrol36] {
    width: 38px;
    height: 38px;
    border: 3px solid #e8eaef;
    border-top-color: #6d0000;
    border-radius: 50%;
    animation: dg-spin-b-h1tvwrol36 0.7s linear infinite;
}

/* ── Columns button ── */
.dg-col-wrapper[b-h1tvwrol36] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.dg-col-btn[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border: 1.5px solid #e8eaef;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    background: white;
    color: #374151;
    transition: all 0.18s;
    position: relative;
    white-space: nowrap;
}

.dg-col-btn:hover[b-h1tvwrol36] {
    border-color: #0f1f4b;
    color: #0f1f4b;
    background: #f5f6fa;
}

.dg-col-btn.active[b-h1tvwrol36] {
    background: #0f1f4b;
    color: white;
    border-color: #0f1f4b;
    box-shadow: 0 2px 8px rgba(15,31,75,.25);
}

.dg-col-badge[b-h1tvwrol36] {
    background: #6d0000;
    color: white;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 9px;
    font-size: 9.5px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* ── Columns panel ── */
.dg-col-panel[b-h1tvwrol36] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 256px;
    background: white;
    border: 1px solid #e2e5ee;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(15,31,75,.13), 0 2px 8px rgba(15,31,75,.07);
    z-index: 500;
    animation: dg-slide-down-b-h1tvwrol36 0.18s ease;
    overflow: hidden;
}

@keyframes dg-slide-down-b-h1tvwrol36 {
    from { transform: translateY(-8px); opacity: 0; }
    to   { transform: translateY(0); opacity: 1; }
}

.dg-col-panel-header[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 14px;
    background: #f5f6fa;          
    border-bottom: 1px solid #e2e5ee;
    color: #4b5563;          
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
}

.dg-col-reset[b-h1tvwrol36] {
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    color: #0f1f4b;
    font-size: 10px;
    font-weight: 600;
    padding: 3px 9px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: all 0.15s;
}
.dg-col-reset:hover[b-h1tvwrol36] {
    background: #0f1f4b;
    color: white;
    border-color: #0f1f4b;
}

.dg-col-search[b-h1tvwrol36] {
    position: relative;
    padding: 8px 10px;
    border-bottom: 1px solid #eef0f7;
    background: white;
}

.dg-col-search-icon[b-h1tvwrol36] {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 11px;
    pointer-events: none;
}

.dg-col-search-input[b-h1tvwrol36] {
    width: 100%;
    height: 28px;
    padding: 0 26px 0 28px;
    border: 1px solid #e2e5ee;
    border-radius: 6px;
    font-size: 12px;
    color: #1f2937;
    background: #f9fafb;
    transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
    box-sizing: border-box;
}
.dg-col-search-input[b-h1tvwrol36]::placeholder { color: #9ca3af; }
.dg-col-search-input:hover[b-h1tvwrol36] { border-color: #c7cad6; background: white; }
.dg-col-search-input:focus[b-h1tvwrol36] {
    outline: none;
    border-color: #0f1f4b;
    background: white;
    box-shadow: 0 0 0 3px rgba(15,31,75,0.08);
}

.dg-col-search-clear[b-h1tvwrol36] {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: none;
    border-radius: 50%;
    background: #e5e7eb;
    color: #4b5563;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s, color 0.15s;
}
.dg-col-search-clear:hover[b-h1tvwrol36] { background: #0f1f4b; color: white; }

/* Empty-state when the search has no matches. */
.dg-col-empty[b-h1tvwrol36] {
    padding: 24px 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    color: #9ca3af;
    font-size: 11.5px;
    text-align: center;
}
.dg-col-empty i[b-h1tvwrol36] { font-size: 18px; opacity: 0.5; }

.dg-col-panel-body[b-h1tvwrol36] {
    max-height: 300px;
    overflow-y: auto;
    padding: 4px 0;
}

.dg-col-item[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    cursor: pointer;
    transition: background 0.12s;
    font-size: 12.5px;
    color: #374151;
}
.dg-col-item:hover[b-h1tvwrol36] {
    background: #eef0f7;
}

.dg-col-name[b-h1tvwrol36] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Toggle switch */
.dg-col-toggle[b-h1tvwrol36] {
    position: relative;
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}
.dg-col-toggle input[b-h1tvwrol36] {
    position: absolute;
    opacity: 0;
    width: 0; height: 0;
}
.dg-col-track[b-h1tvwrol36] {
    width: 30px; height: 16px;
    border-radius: 8px;
    background: #d1d5db;
    transition: background 0.2s;
    position: relative;
    display: block;
}
.dg-col-thumb[b-h1tvwrol36] {
    position: absolute;
    top: 2px; left: 2px;
    width: 12px; height: 12px;
    border-radius: 50%;
    background: white;
    box-shadow: 0 1px 3px rgba(0,0,0,.2);
    transition: transform 0.2s;
    display: block;
}
.dg-col-panel-body[b-h1tvwrol36]::-webkit-scrollbar { width: 4px; }
.dg-col-panel-body[b-h1tvwrol36]::-webkit-scrollbar-track { background: transparent; }
.dg-col-panel-body[b-h1tvwrol36]::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }
.dg-col-toggle input:checked + .dg-col-track[b-h1tvwrol36] { background: #0f1f4b; }
.dg-col-toggle input:checked + .dg-col-track .dg-col-thumb[b-h1tvwrol36] { transform: translateX(14px); }

@keyframes dg-spin-b-h1tvwrol36 { to { transform: rotate(360deg); } }

/* ── Empty state ──
   Refreshed in 2026-05 to match the new design language on the manage page:
   circular halo around the icon, slightly larger title, softer copy. */
.dg-empty[b-h1tvwrol36] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 56px 24px;
    flex: 1;
    text-align: center;
}
.dg-empty-icon-wrap[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: #f3f4f6;
    color: #6b7280;
    font-size: 26px;
    position: relative;
}
.dg-empty-icon-wrap[b-h1tvwrol36]::after {
    content: '';
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border: 1px dashed #e5e7eb;
}
.dg-empty-title[b-h1tvwrol36] { font-size: 14px; font-weight: 600; color: #374151; margin: 4px 0 0; }
.dg-empty-sub[b-h1tvwrol36] { font-size: 12.5px; color: #6b7280; margin: 0; max-width: 300px; line-height: 1.5; }
/* Legacy class — kept in case templates that didn't migrate still
   reference it. The new wrap-based icon above is preferred. */
.dg-empty-icon[b-h1tvwrol36] { font-size: 40px; color: #d5d9e2; }

/* ── Loading skeleton ──
   Replaces the centred spinner with shimmer-animated row silhouettes.
   Pure CSS animation, no JS, no extra DOM listeners. */
.dg-skel[b-h1tvwrol36] {
    padding: 6px 12px 14px;
    flex: 1;
    overflow: hidden;
}
.dg-skel-row[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 6px;
    border-bottom: 1px solid #f3f4f6;
}
.dg-skel-row:last-child[b-h1tvwrol36] { border-bottom: none; }
.dg-skel-row-head[b-h1tvwrol36] {
    border-bottom: 1px solid #e5e7eb;
    background: #fafbfc;
    border-radius: 6px;
    padding: 12px;
    margin: 0 -4px 6px;
}
.dg-skel-dot[b-h1tvwrol36] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #eef0f4;
    flex-shrink: 0;
    animation: dg-skel-pulse-b-h1tvwrol36 1.4s ease-in-out infinite;
}
.dg-skel-bar[b-h1tvwrol36] {
    height: 12px;
    border-radius: 4px;
    background: linear-gradient(90deg, #f3f4f6 0%, #e5e7eb 50%, #f3f4f6 100%);
    background-size: 200% 100%;
    animation: dg-skel-shimmer-b-h1tvwrol36 1.4s ease-in-out infinite;
    flex-shrink: 0;
}
.dg-skel-bar-grow[b-h1tvwrol36] { flex: 1 1 auto; max-width: 360px; }
@keyframes dg-skel-shimmer-b-h1tvwrol36 {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}
@keyframes dg-skel-pulse-b-h1tvwrol36 {
    0%, 100% { opacity: 1; }
    50%      { opacity: .5; }
}

/* ── Action buttons ── */
.dg-actions[b-h1tvwrol36] {
    display: flex;
    gap: 5px;
    justify-content: center;
    align-items: center;
    padding: 2px;
}

.dg-icon-btn[b-h1tvwrol36] {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
    border-radius: 8px;
    font-size: 12px;
    transition: background 0.15s, transform 0.12s, box-shadow 0.15s;
    padding: 0;
    position: relative;
}

.dg-edit[b-h1tvwrol36]   { background: #e8edf8; color: #0f1f4b; }
.dg-view[b-h1tvwrol36]   { background: #e3f5ec; color: #1a7a4a; }
.dg-delete[b-h1tvwrol36] { background: #fdecea; color: #6d0000; }

.dg-edit:hover[b-h1tvwrol36] {
    background: #0f1f4b; color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(15,31,75,.28);
}

.dg-view:hover[b-h1tvwrol36] {
    background: #1a7a4a; color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(26,122,74,.28);
}

.dg-delete:hover[b-h1tvwrol36] {
    background: #6d0000; color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(109,0,0,.28);
}

.dg-icon-btn:active[b-h1tvwrol36] { transform: translateY(0); box-shadow: none; }

.dg-icon-btn[b-h1tvwrol36]::after {
    content: attr(title);
    position: absolute;
    bottom: calc(100% + 7px);
    left: 50%;
    transform: translateX(-50%);
    background: #0f1f4b;
    color: rgba(255,255,255,.92);
    font-size: 10.5px;
    font-weight: 600;
    padding: 3px 9px;
    border-radius: 5px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.15s;
    z-index: 200;
}

.dg-icon-btn:hover[b-h1tvwrol36]::after { opacity: 1; }

.cell-content[b-h1tvwrol36] {
    /*overflow: hidden;*/
    /*text-overflow: ellipsis;*/
    white-space: nowrap;
    max-width: 100%;
}

/* ── Footer ── */
.dg-footer[b-h1tvwrol36] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 8px 16px;
    border-top: 1px solid #e8eaef;
    background: #fff;
    flex-shrink: 0;
}

.dg-pg[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.dg-pg-label[b-h1tvwrol36] { font-size: 12px; color: #8892a4; white-space: nowrap; }

.dg-pg-select[b-h1tvwrol36] {
    padding: 5px 10px;
    border: 1.5px solid #e8eaef;
    border-radius: 7px;
    font-size: 12px;
    background: #f5f6fa;
    color: #1e2433;
    cursor: pointer;
    font-weight: 500;
    transition: border-color 0.18s;
}

.dg-pg-select:hover[b-h1tvwrol36] { border-color: #b0b8cc; }

.dg-pg-select:focus[b-h1tvwrol36] {
    outline: none;
    border-color: #0f1f4b;
    box-shadow: 0 0 0 3px rgba(15,31,75,.08);
    background: white;
}

.dg-pg-range[b-h1tvwrol36] {
    font-size: 12px;
    color: #1e2433;
    font-weight: 600;
    padding-left: 12px;
    border-left: 1.5px solid #e8eaef;
    white-space: nowrap;
}

.dg-nav[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    gap: 2px;
    padding-left: 12px;
    border-left: 1.5px solid #e8eaef;
}

.dg-nav-btn[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    border: none;
    background: transparent;
    color: #8892a4;
    cursor: pointer;
    border-radius: 7px;
    transition: all 0.15s;
}

/* ── Cell Scroll Active ── */
.dg-grid-body[b-h1tvwrol36]  td.e-rowcell.cell-scroll-active {
    background-color: #fffbeb !important;
    outline: 1.5px solid #f59e0b;
    z-index: 100 !important;
}

.dg-grid-body[b-h1tvwrol36]  td.e-rowcell.cell-scroll-active .cell-content {
    overflow-x: auto !important;
    text-overflow: unset !important;
    white-space: nowrap !important;
    width: 100%;
    max-width: none !important;
    display: block;
    cursor: text;
    scrollbar-width: thin;
    scrollbar-color: #94a3b8 transparent;
}

.dg-grid-body[b-h1tvwrol36]  td.e-rowcell.cell-scroll-active .cell-content::-webkit-scrollbar {
    height: 3px;
}

.dg-grid-body[b-h1tvwrol36]  td.e-rowcell.cell-scroll-active .cell-content::-webkit-scrollbar-thumb {
    background: #94a3b8;
    border-radius: 2px;
}

.dg-nav-btn svg[b-h1tvwrol36] { width: 18px; height: 18px; }
.dg-nav-btn:hover:not(:disabled)[b-h1tvwrol36] { background: #f5f6fa; color: #0f1f4b; }
.dg-nav-btn:active:not(:disabled)[b-h1tvwrol36] { background: #e8edf8; transform: scale(0.95); }
.dg-nav-btn:disabled[b-h1tvwrol36] { opacity: 0.3; cursor: not-allowed; }

/* ── Syncfusion Grid Overrides ── */
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-detailheadercell {
    background-color: #0f1f4b !important;
    border-right-color: rgba(255,255,255,0.08) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-gridheader {
    border-bottom: 2px solid rgba(109,0,0,.6) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercelldiv,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell .e-headertext,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell span,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.e-sortfilter .e-headercelldiv,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.e-sortfilter .e-headertext,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercelldiv.e-sortfilter,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercelldiv.e-sortfilter .e-headertext {
    color: rgba(255,255,255,.92) !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.07em !important;
}

/* Multi-sort number badge — keep the chip readable on the dark header. */
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell .e-sortnumber {
    color: #ffffff !important;
    background-color: rgba(255,255,255,0.18) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell:hover {
    background-color: #1a2f6b !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-gridheader .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-gridheader .e-rightfreeze {
    background-color: #0f1f4b !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-gridheader .e-leftfreeze .e-headercelldiv,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-gridheader .e-rightfreeze .e-headercelldiv {
    color: rgba(255,255,255,.85) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell {
    padding: 10px 14px !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    color: #1e2433 !important;
    border-color: #e8eaef !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row:hover .e-rowcell {
    background-color: #f7f8fc !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row:hover .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row:hover .e-rightfreeze {
    background-color: #f7f8fc !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.e-selectionbackground .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.e-selectionbackground .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.e-selectionbackground .e-rightfreeze {
    background-color: #fff5f5 !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active .e-rightfreeze {
    background-color: #fef2f2 !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active .e-rowcell:first-child {
    box-shadow: inset 3px 0 0 0 #8B0000 !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active.e-selectionbackground .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active.e-selectionbackground .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-active.e-selectionbackground .e-rightfreeze {
    background-color: #fde8e8 !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-leftfreeze.e-rowcell {
    background-color: white !important;
    box-shadow: 2px 0 4px rgba(0,0,0,0.06) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rightfreeze.e-rowcell {
    background-color: white !important;
    box-shadow: -2px 0 4px rgba(0,0,0,0.06) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid input[type="checkbox"] {
    accent-color: #6d0000 !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell:not(.e-gridchkbox) {
    cursor: pointer;
    transition: background-color 0.15s;
}

/* Sort direction arrow — bordeaux disappears against the dark navy header, so we
   use near-white to match the header text. */
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell .e-sortfilterdiv,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell .e-sortfilterdiv::before,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell .e-icon-ascending,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell .e-icon-descending {
    color: rgba(255,255,255,.92) !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rhandler {
    border-color: #6d0000 !important;
    opacity: 0.5;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rhandler:hover { opacity: 1; }

.dg-grid-body[b-h1tvwrol36]  .e-grid ::-webkit-scrollbar { height: 5px; width: 5px; }
.dg-grid-body[b-h1tvwrol36]  .e-grid ::-webkit-scrollbar-thumb { background: #d0d4de; border-radius: 4px; }
.dg-grid-body[b-h1tvwrol36]  .e-grid ::-webkit-scrollbar-thumb:hover { background: #b0b8cc; }

/* ── Responsive ── */
@media (max-width: 768px) {
    .dg-toolbar[b-h1tvwrol36] { padding: 8px 10px; }
    .dg-search-input[b-h1tvwrol36] { width: 150px; }
    .dg-search-input:focus[b-h1tvwrol36] { width: 190px; }
    .dg-btn-text[b-h1tvwrol36] { display: none; }
    .dg-btn[b-h1tvwrol36] { padding: 7px 10px; min-width: 34px; justify-content: center; }
    .dg-footer[b-h1tvwrol36] { padding: 6px 10px; }
}

@media (max-width: 480px) {
    .dg-nav-btn[b-h1tvwrol36] { width: 26px; height: 26px; }
    .dg-nav-btn svg[b-h1tvwrol36] { width: 16px; height: 16px; }
}

.dg-grid-body[b-h1tvwrol36] {
    position: relative;
    overflow: auto;
    min-height: 0;
    flex: 1;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-sticky-left-col,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell.dg-sticky-left-col {
    position: sticky !important;
    left: 0 !important;
    z-index: 6 !important;
    background: #fff !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-sticky-right-col,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell.dg-sticky-right-col {
    position: sticky !important;
    right: 0 !important;
    z-index: 6 !important;
    background: #fff !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-sticky-left-col,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-sticky-right-col {
    background-color: #0f1f4b !important;
    color: #fff !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell.dg-sticky-left-col {
    box-shadow: 2px 0 6px rgba(15, 31, 75, 0.08);
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell.dg-sticky-right-col {
    box-shadow: -2px 0 6px rgba(15, 31, 75, 0.08);
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-sticky-left-col {
    box-shadow: 2px 0 6px rgba(15, 31, 75, 0.12);
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-sticky-right-col {
    box-shadow: -2px 0 6px rgba(15, 31, 75, 0.12);
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row:hover .e-rowcell.dg-sticky-left-col,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row:hover .e-rowcell.dg-sticky-right-col {
    background-color: #f7f8fc !important;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.e-selectionbackground .e-rowcell.dg-sticky-left-col,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.e-selectionbackground .e-rowcell.dg-sticky-right-col {
    background-color: #fff5f5 !important;
}

.dg-actions[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.dg-btn-danger:disabled[b-h1tvwrol36] {
    opacity: 0.45;
    cursor: not-allowed;
    background: #f8fafc;
    color: #94a3b8;
    border: 1px solid #e2e8f0;
    box-shadow: none;
}

.dg-col-overlay[b-h1tvwrol36] {
    position: fixed;
    inset: 0;
    z-index: 499; /* sits below dg-col-panel (z-index 500) */
    background: transparent;
    cursor: default;
}
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-checkbox-wrapper,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-checkbox-wrapper,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame {
    opacity: 0;
    transition: opacity 0.16s ease;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-row:hover .e-gridchkbox .e-checkbox-wrapper,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-row:hover .e-gridchkbox .e-frame,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell:hover .e-checkselectall .e-checkbox-wrapper,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell:hover .e-checkselectall .e-frame,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame.e-check,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame.e-stop,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame.e-check,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame.e-stop,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-checkselectall .e-checkbox-wrapper,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-checkbox-wrapper,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame {
    opacity: 1;
}

.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-row:hover .e-rowcell.e-gridchkbox,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-row.e-selectionbackground .e-rowcell.e-gridchkbox {
    background: linear-gradient(180deg, #fff8f8 0%, #fff2f2 100%) !important;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercontent .e-headercell:first-child,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercontent .e-leftfreeze.e-headercell:first-child {
    background-color: #0f1f4b !important;
}
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall *,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox * {
    transition: opacity 0.16s ease;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall *,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox * {
    opacity: 0;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell:hover .e-checkselectall,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell:hover .e-checkselectall *,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-row:hover .e-rowcell.e-gridchkbox .e-gridchkbox,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-row:hover .e-rowcell.e-gridchkbox .e-gridchkbox *,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall *,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox,
.dg-selection-enabled.dg-has-selection[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox *,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall .e-frame.e-check,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-headercell .e-checkselectall .e-frame.e-stop,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox .e-frame.e-check,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-rowcell.e-gridchkbox .e-gridchkbox .e-frame.e-stop {
    opacity: 1;
}
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame {
    width: 15px !important;
    height: 15px !important;
    min-width: 15px !important;
    min-height: 15px !important;
    line-height: 13px !important;
    border-radius: 2px !important;
    border: 1px solid #8a8a8a !important;
    background: #ffffff !important;
    color: transparent !important;
    box-shadow: none !important;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame.e-check,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame.e-check {
    background: #6d0000 !important;
    border-color: #6d0000 !important;
    color: #ffffff !important;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame.e-stop,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame.e-stop {
    background: #7b7b7b !important;
    border-color: #7f7f7f !important;
    color: #ffffff !important;
}

.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-checkselectall .e-frame::before,
.dg-selection-enabled[b-h1tvwrol36]  .e-grid .e-gridchkbox .e-frame::before {
    font-size: 10px !important;
}
.dg-grid-host[b-h1tvwrol36] {
    position: relative;
    flex: 1;
    min-height: 0;
}

.dg-loading-overlay[b-h1tvwrol36] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.68);
    backdrop-filter: blur(1.5px);
    z-index: 6;
    pointer-events: all;
}

.dg-loading-card[b-h1tvwrol36] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 18px 22px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid #e8eaef;
    box-shadow: 0 10px 28px rgba(15,31,75,.12);
    color: #5b6578;
}

.dg-loading-card p[b-h1tvwrol36] {
    margin: 0;
    font-size: 12.5px;
    font-weight: 600;
}

/* -----------------------------------------------------------------------
   Row status indicators (draft / deleted / custom flags)
   Applied by DatatableGrid.OnRowDataBoundHandler via e-row .AddClass().
   Cells inherit the background from the row; we paint .e-rowcell so
   Syncfusion's own cell background doesn't override our colour.
   ----------------------------------------------------------------------- */

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-draft .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-draft .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-draft .e-rightfreeze {
    background-color: #f1f2f4; /* light gray */
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-deleted .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-deleted .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-deleted .e-rightfreeze {
    background-color: #fde6ea; /* light pink */
    color: #8a3a48;
    text-decoration: line-through;
    text-decoration-color: rgba(138, 58, 72, 0.55);
}

/* Combined state — e.g. a draft record that has also been soft-deleted.
   Use a subtle diagonal stripe so both states are visible at a glance. */
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-multi .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-multi .e-leftfreeze,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-multi .e-rightfreeze {
    background-color: #fde6ea;
    background-image: repeating-linear-gradient(
        45deg,
        rgba(241, 242, 244, 0.85) 0,
        rgba(241, 242, 244, 0.85) 10px,
        rgba(253, 230, 234, 0.85) 10px,
        rgba(253, 230, 234, 0.85) 20px
    );
}

/* Selection and hover should still read clearly over the status tint.
   We darken the tint rather than replace it so the status stays visible. */
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-draft:hover .e-rowcell {
    background-color: #e4e7eb;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-deleted:hover .e-rowcell {
    background-color: #f8d0d9;
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-multi:hover .e-rowcell {
    background-image: repeating-linear-gradient(
        45deg,
        rgba(228, 231, 235, 0.9) 0,
        rgba(228, 231, 235, 0.9) 10px,
        rgba(248, 208, 217, 0.9) 10px,
        rgba(248, 208, 217, 0.9) 20px
    );
}

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-draft.e-selectionbackground .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-deleted.e-selectionbackground .e-rowcell,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-row.dg-row-multi.e-selectionbackground .e-rowcell {
    box-shadow: inset 3px 0 0 0 var(--dg-primary, #3451b2);
}

/* -----------------------------------------------------------------------
   Status icon column (leading column rendered when any flag accessor is set)
   ----------------------------------------------------------------------- */

.dg-grid-body[b-h1tvwrol36]  .e-grid .e-rowcell.dg-status-col,
.dg-grid-body[b-h1tvwrol36]  .e-grid .e-headercell.dg-status-col {
    padding-left: 4px !important;
    padding-right: 4px !important;
}

.dg-row-status[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    line-height: 1;
}

.dg-row-status-icon[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 10px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(0, 0, 0, 0.08);
}

.dg-row-status-icon--actual[b-h1tvwrol36] {
    color: #2f9e44;
    background: rgba(47, 158, 68, 0.1);
    border-color: rgba(47, 158, 68, 0.25);
}

.dg-row-status-icon--draft[b-h1tvwrol36] {
    color: #6b7280;
    background: rgba(107, 114, 128, 0.12);
    border-color: rgba(107, 114, 128, 0.28);
}

.dg-row-status-icon--deleted[b-h1tvwrol36] {
    color: #c03049;
    background: rgba(192, 48, 73, 0.12);
    border-color: rgba(192, 48, 73, 0.3);
}


.dg-col-header[b-h1tvwrol36] {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
}

.dg-col-header-title[b-h1tvwrol36] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dg-filter-btn[b-h1tvwrol36] {
    background: transparent;
    border: none;
    color: rgba(255,255,255,.7);
    font-size: 11px;
    padding: 2px 4px;
    cursor: pointer;
    border-radius: 3px;
    line-height: 1;
    margin-left: auto;
    transition: color .12s ease, background .12s ease;
}

.dg-filter-btn:hover[b-h1tvwrol36] {
    color: #fff;
    background: rgba(255,255,255,.12);
}

.dg-filter-btn.active[b-h1tvwrol36] {
    color: #ffd666;
}

.dg-filter-portal-overlay[b-h1tvwrol36] {
    position: fixed;
    inset: 0;
    background: transparent;
    z-index: 2099;
}

.dg-filter-portal[b-h1tvwrol36] {
    position: fixed;
    z-index: 2100;
}

.dg-filter-bar[b-h1tvwrol36] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    background: #f5f7fa;
    border-bottom: 1px solid #e5e9ef;
    font-size: 12px;
}

.dg-filter-chip[b-h1tvwrol36] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    background: #fff;
    border: 1px solid #d0d7de;
    border-radius: 12px;
    color: #1f2328;
    white-space: nowrap;
}

.dg-filter-chip-x[b-h1tvwrol36] {
    background: transparent;
    border: none;
    color: #656d76;
    font-size: 14px;
    line-height: 1;
    padding: 0 2px;
    cursor: pointer;
}

.dg-filter-chip-x:hover[b-h1tvwrol36] { color: #1f2328; }

.dg-filter-match-chip[b-h1tvwrol36] {
    background: #0969da;
    color: #fff;
    border: none;
    border-radius: 12px;
    padding: 3px 10px;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    letter-spacing: .3px;
}

.dg-filter-match-chip:hover[b-h1tvwrol36] { background: #0860c7; }

.dg-filter-clear-all[b-h1tvwrol36] {
    margin-left: auto;
    background: transparent;
    border: none;
    color: #656d76;
    font-size: 12px;
    cursor: pointer;
    padding: 3px 6px;
}

.dg-filter-clear-all:hover[b-h1tvwrol36] {
    color: #c03049;
    text-decoration: underline;
}

/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/DatatablePeekDrawer.razor.rz.scp.css */
.dt-peek[b-pxopmtayuc] {
    position: relative;
    flex: 0 0 auto;
    width: var(--dt-peek-width, 320px);
    min-width: 240px;
    max-width: 480px;
    background: #ffffff;
    border-left: 1px solid #e1e6f0;
    box-shadow: -6px 0 18px -8px rgba(20, 30, 60, 0.12);
    display: flex;
    flex-direction: column;
    /* No overflow:hidden here — the body section scrolls on its own and we
       need the resize handle to sit slightly over the left edge. */
    font-family: 'Segoe UI', system-ui, sans-serif;
    font-size: 12px;
    color: #1e2433;
    animation: dt-peek-slide-in-b-pxopmtayuc 180ms ease-out;
}

@keyframes dt-peek-slide-in-b-pxopmtayuc {
    from { transform: translateX(8px); opacity: 0; }
    to   { transform: translateX(0); opacity: 1; }
}

/* ── Resize handle (left edge) ── */
.dt-peek-resize-handle[b-pxopmtayuc] {
    position: absolute;
    top: 0;
    left: -3px;
    width: 6px;
    height: 100%;
    cursor: ew-resize;
    z-index: 5;
    user-select: none;
    background: transparent;
    transition: background 0.15s ease;
}
.dt-peek-resize-handle[b-pxopmtayuc]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 2px;
    height: 36px;
    background: transparent;
    border-radius: 1px;
    transition: background 0.15s ease;
}
.dt-peek-resize-handle:hover[b-pxopmtayuc]::after,
body.dt-peek-resizing .dt-peek-resize-handle[b-pxopmtayuc]::after {
    background: #6d0000;
}
body.dt-peek-resizing[b-pxopmtayuc] {
    cursor: ew-resize !important;
    user-select: none;
}
body.dt-peek-resizing *[b-pxopmtayuc] {
    user-select: none !important;
}

/* ── Header ── */
.dt-peek-header[b-pxopmtayuc] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px 14px 12px 14px;
    border-bottom: 1px solid #ecf0f7;
    background: linear-gradient(180deg, #fafbfd 0%, #ffffff 100%);
}
.dt-peek-header-icon[b-pxopmtayuc] {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #f3f0ea;
    color: #6d0000;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}
.dt-peek-header-text[b-pxopmtayuc] {
    flex: 1 1 auto;
    min-width: 0;
}
.dt-peek-header-title[b-pxopmtayuc] {
    font-size: 14px;
    font-weight: 700;
    color: #1e2433;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.25;
}
.dt-peek-header-sub[b-pxopmtayuc] {
    margin-top: 3px;
    font-size: 11px;
    color: #5a6070;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
    line-height: 1.4;
}
.dt-peek-header-sub i[b-pxopmtayuc] { font-size: 9px; margin-right: 3px; color: #8892a4; }
.dt-peek-header-sub .dt-peek-muted[b-pxopmtayuc] { color: #8892a4; }
.dt-peek-header-sub .dt-peek-sep[b-pxopmtayuc] { color: #c2c8d4; }
.dt-peek-header-sub .dt-peek-type[b-pxopmtayuc] {
    color: #6d0000;
    font-weight: 600;
}
.dt-peek-close[b-pxopmtayuc] {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: #8892a4;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.dt-peek-close:hover[b-pxopmtayuc] {
    background: #fdeaea;
    border-color: #f3c7c7;
    color: #911f1f;
}

/* ── Tabs ── */
.dt-peek-tabs[b-pxopmtayuc] {
    display: flex;
    border-bottom: 1px solid #ecf0f7;
    background: #ffffff;
    flex: 0 0 auto;
}
.dt-peek-tab[b-pxopmtayuc] {
    flex: 1 1 0;
    background: transparent;
    border: none;
    padding: 10px 4px;
    font-size: 11.5px;
    font-weight: 600;
    color: #5a6070;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-bottom: 2px solid transparent;
    transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}
.dt-peek-tab i[b-pxopmtayuc] { font-size: 11px; }
.dt-peek-tab:hover[b-pxopmtayuc] { background: #f6f8fc; color: #1e2433; }
.dt-peek-tab.active[b-pxopmtayuc] {
    color: #6d0000;
    border-bottom-color: #6d0000;
}
.dt-peek-tab-count[b-pxopmtayuc] {
    background: #f0f3fa;
    color: #5a6070;
    font-size: 10px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 999px;
    line-height: 1.4;
}
.dt-peek-tab.active .dt-peek-tab-count[b-pxopmtayuc] {
    background: #fdeaea;
    color: #6d0000;
}

/* ── Body (scrollable content area) ── */
.dt-peek-body[b-pxopmtayuc] {
    flex: 1 1 auto;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 12px 14px 14px 14px;
    background: #fbfcfe;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.dt-peek-body[b-pxopmtayuc]::-webkit-scrollbar { width: 8px; }
.dt-peek-body[b-pxopmtayuc]::-webkit-scrollbar-thumb { background: #d0d7e3; border-radius: 4px; }
.dt-peek-body[b-pxopmtayuc]::-webkit-scrollbar-thumb:hover { background: #b6becd; }

.dt-peek-state[b-pxopmtayuc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 28px 12px;
    color: #5a6070;
    font-size: 12px;
}
.dt-peek-state-error[b-pxopmtayuc] { color: #911f1f; }
.dt-peek-state-error i[b-pxopmtayuc] { font-size: 18px; }
.dt-peek-spinner[b-pxopmtayuc] {
    width: 22px;
    height: 22px;
    border: 2px solid #e1e6f0;
    border-top-color: #6d0000;
    border-radius: 50%;
    animation: dt-peek-spin-b-pxopmtayuc 0.85s linear infinite;
}
@keyframes dt-peek-spin-b-pxopmtayuc { to { transform: rotate(360deg); } }

/* ── Stat cards ── */
.dt-peek-stat-grid[b-pxopmtayuc] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 8px;
}
.dt-peek-stat[b-pxopmtayuc] {
    background: #ffffff;
    border: 1px solid #e6ebf3;
    border-radius: 8px;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.dt-peek-stat-label[b-pxopmtayuc] {
    font-size: 10px;
    font-weight: 600;
    color: #8892a4;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.dt-peek-stat-value[b-pxopmtayuc] {
    font-size: 17px;
    font-weight: 700;
    color: #1e2433;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dt-peek-status[b-pxopmtayuc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}
.dt-peek-status i[b-pxopmtayuc] { font-size: 9px; }
.dt-peek-status-healthy[b-pxopmtayuc] {
    background: #e7f6ea;
    color: #156533;
    box-shadow: 0 0 0 1px rgba(22, 101, 51, 0.14) inset;
}
.dt-peek-status-no-data[b-pxopmtayuc] {
    background: #fdeaea;
    color: #911f1f;
    box-shadow: 0 0 0 1px rgba(220, 38, 38, 0.14) inset;
}
.dt-peek-status-empty[b-pxopmtayuc] {
    background: #fef6e1;
    color: #8a5a0c;
    box-shadow: 0 0 0 1px rgba(217, 119, 6, 0.14) inset;
}
.dt-peek-status-orphan[b-pxopmtayuc] {
    background: #fdeedd;
    color: #8e3812;
    box-shadow: 0 0 0 1px rgba(234, 88, 12, 0.14) inset;
}

/* ── Section blocks ── */
.dt-peek-section[b-pxopmtayuc] {
    background: #ffffff;
    border: 1px solid #e6ebf3;
    border-radius: 10px;
    padding: 10px 12px 12px 12px;
}
.dt-peek-section-title[b-pxopmtayuc] {
    font-size: 10.5px;
    font-weight: 700;
    color: #8892a4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

/* ── Schema definition list ── */
.dt-peek-dl[b-pxopmtayuc] {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.dt-peek-dl-row[b-pxopmtayuc] {
    display: grid;
    grid-template-columns: 78px 1fr;
    gap: 8px;
    align-items: baseline;
    font-size: 12px;
}
.dt-peek-dl-row dt[b-pxopmtayuc] {
    color: #8892a4;
    font-weight: 600;
    font-size: 11px;
}
.dt-peek-dl-row dd[b-pxopmtayuc] {
    margin: 0;
    color: #1e2433;
    word-break: break-word;
}

/* ── Field preview (Overview tab) ── */
.dt-peek-fields-mini[b-pxopmtayuc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.dt-peek-field-mini[b-pxopmtayuc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    background: #f6f8fc;
    border-radius: 6px;
    font-size: 12px;
}
.dt-peek-field-mini-name[b-pxopmtayuc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-weight: 600;
    color: #1e2433;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dt-peek-field-mini-type[b-pxopmtayuc] {
    flex: 0 0 auto;
    font-size: 10.5px;
    font-weight: 600;
    color: #5a6070;
    background: #ffffff;
    border: 1px solid #dde2ec;
    border-radius: 4px;
    padding: 1px 6px;
}
.dt-peek-pk-badge[b-pxopmtayuc] {
    background: #fef6e1;
    color: #8a5a0c;
    font-size: 9.5px;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(217, 119, 6, 0.14);
    line-height: 1.3;
}
.dt-peek-calc-badge[b-pxopmtayuc] {
    background: #eef2ff;
    color: #3b3791;
    font-size: 9.5px;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(67, 56, 202, 0.16);
    line-height: 1.3;
    font-style: italic;
}
.dt-peek-req[b-pxopmtayuc] {
    color: #c52e2e;
    font-weight: 700;
    margin-left: 1px;
}

.dt-peek-link[b-pxopmtayuc] {
    background: none;
    border: none;
    color: #6d0000;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    padding: 6px 0 0 0;
    margin: 0;
}
.dt-peek-link:hover[b-pxopmtayuc] { text-decoration: underline; }

.dt-peek-empty[b-pxopmtayuc] {
    color: #8892a4;
    font-size: 11.5px;
    font-style: italic;
    padding: 4px 0;
}

/* ── Used-by chips ── */
.dt-peek-usage-label[b-pxopmtayuc] {
    font-size: 11px;
    font-weight: 600;
    color: #5a6070;
    margin: 4px 0 4px 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.dt-peek-usage-label i[b-pxopmtayuc] { color: #6d0000; font-size: 10px; }
.dt-peek-chips[b-pxopmtayuc] {
    list-style: none;
    padding: 0;
    margin: 0 0 6px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
.dt-peek-chip[b-pxopmtayuc] {
    background: #f0f3fa;
    border: 1px solid #d8deea;
    color: #1e2433;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 999px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dt-peek-chip-more[b-pxopmtayuc] {
    background: #ffffff;
    color: #6d0000;
    border-color: #f3c7c7;
    font-weight: 600;
}

button.dt-peek-chip[b-pxopmtayuc] {
    font: inherit;
    line-height: 1.3;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
button.dt-peek-chip-more:hover[b-pxopmtayuc] {
    background: #fdeaea;
    color: #6d0000;
    border-color: #e8a5a5;
}
.dt-peek-chip-li-more[b-pxopmtayuc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-flex;
}
.dt-peek-orphan[b-pxopmtayuc] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    background: #fdeedd;
    border: 1px solid rgba(234, 88, 12, 0.18);
    border-radius: 6px;
    color: #8e3812;
    font-size: 11.5px;
}
.dt-peek-orphan i[b-pxopmtayuc] { font-size: 12px; }


/* ── Activity (Overview mini + full Activity tab) ── */
.dt-peek-activity-mini[b-pxopmtayuc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.dt-peek-activity-mini-row[b-pxopmtayuc] {
    display: grid;
    grid-template-columns: 56px 1fr auto;
    gap: 8px;
    align-items: baseline;
    padding: 4px 8px;
    border-radius: 6px;
    background: #f6f8fc;
    font-size: 11.5px;
}
.dt-peek-activity-mini-when[b-pxopmtayuc] { color: #8892a4; font-size: 11px; }
.dt-peek-activity-mini-event[b-pxopmtayuc] { color: #1e2433; font-weight: 600; }
.dt-peek-activity-mini-actor[b-pxopmtayuc] { color: #5a6070; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }

.dt-peek-field-list[b-pxopmtayuc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.dt-peek-field-row[b-pxopmtayuc] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 8px 10px;
    background: #ffffff;
    border: 1px solid #e6ebf3;
    border-radius: 7px;
}
.dt-peek-field-row-main[b-pxopmtayuc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.dt-peek-field-row-name[b-pxopmtayuc] {
    font-size: 12.5px;
    font-weight: 600;
    color: #1e2433;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
}
.dt-peek-field-row-type[b-pxopmtayuc] {
    flex: 0 0 auto;
    font-size: 10.5px;
    font-weight: 600;
    color: #5a6070;
    background: #f0f3fa;
    border: 1px solid #d8deea;
    border-radius: 4px;
    padding: 1px 6px;
}
.dt-peek-field-row-meta[b-pxopmtayuc] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    font-size: 11px;
    color: #5a6070;
}
.dt-peek-field-row-display[b-pxopmtayuc] {
    background: #f6f8fc;
    border-radius: 4px;
    padding: 1px 6px;
    color: #5a6070;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

.dt-peek-activity-list[b-pxopmtayuc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.dt-peek-activity-row[b-pxopmtayuc] {
    display: flex;
    gap: 8px;
    padding: 8px 10px;
    background: #ffffff;
    border: 1px solid #e6ebf3;
    border-radius: 8px;
}
.dt-peek-activity-row-icon[b-pxopmtayuc] {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    border-radius: 6px;
    background: #f0f3fa;
    color: #5a6070;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
}
.dt-peek-activity-table[b-pxopmtayuc] { background: #f3f0ea; color: #6d0000; }
.dt-peek-activity-field[b-pxopmtayuc] { background: #eef2ff; color: #3b3791; }
.dt-peek-activity-data[b-pxopmtayuc]  { background: #e7f6ea; color: #156533; }
.dt-peek-activity-row-body[b-pxopmtayuc] { flex: 1 1 auto; min-width: 0; }
.dt-peek-activity-row-head[b-pxopmtayuc] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    align-items: baseline;
}
.dt-peek-activity-row-event[b-pxopmtayuc] {
    font-size: 12px;
    font-weight: 600;
    color: #1e2433;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dt-peek-activity-row-when[b-pxopmtayuc] {
    flex: 0 0 auto;
    color: #8892a4;
    font-size: 10.5px;
}
.dt-peek-activity-row-sub[b-pxopmtayuc] {
    margin-top: 2px;
    font-size: 11px;
    color: #5a6070;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}
.dt-peek-activity-row-actor[b-pxopmtayuc] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 60%;
}
.dt-peek-activity-row-field[b-pxopmtayuc] { color: #8892a4; }

/* ── Footer action bar ── */
.dt-peek-footer[b-pxopmtayuc] {
    flex: 0 0 auto;
    display: flex;
    gap: 6px;
    padding: 10px 12px;
    border-top: 1px solid #ecf0f7;
    background: #ffffff;
}
.dt-peek-fbtn[b-pxopmtayuc] {
    flex: 1 1 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: #ffffff;
    border: 1px solid #d8deea;
    color: #1e2433;
    font-size: 11.5px;
    font-weight: 600;
    padding: 7px 4px;
    border-radius: 6px;
    cursor: pointer;
    min-width: 0;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.dt-peek-fbtn i[b-pxopmtayuc] { font-size: 11px; flex: 0 0 auto; }
.dt-peek-fbtn span[b-pxopmtayuc] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}
.dt-peek-fbtn:hover[b-pxopmtayuc] {
    background: #f6f8fc;
    border-color: #c2c8d4;
}
.dt-peek-fbtn-primary[b-pxopmtayuc] {
    background: #6d0000;
    border-color: #6d0000;
    color: #ffffff;
}
.dt-peek-fbtn-primary:hover[b-pxopmtayuc] {
    background: #520000;
    border-color: #520000;
    color: #ffffff;
}
.dt-peek-fbtn-pinned[b-pxopmtayuc] {
    background: #fef6e1;
    border-color: #f4d29a;
    color: #8a5a0c;
}
.dt-peek-fbtn-pinned:hover[b-pxopmtayuc] {
    background: #fceec4;
    border-color: #e6b667;
    color: #6b4209;
}

/* ── Narrow drawer / mobile fallback ── */
@media (max-width: 720px) {
    .dt-peek[b-pxopmtayuc] {
        position: fixed;
        right: 0;
        top: 0;
        bottom: 0;
        width: 92vw !important;
        max-width: 480px;
        z-index: 1200;
    }
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/DatatableToastContainer.razor.rz.scp.css */
/* ── Datatable toast container — pinned to bottom-right ────────────────── */

.dt-toast-container[b-i86rskknkd] {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 2000;
    display: flex;
    flex-direction: column-reverse; /* newest toast at the bottom (closest to corner) */
    gap: 10px;
    pointer-events: none; /* don't block clicks behind empty container */
}

/* ── Single toast card ─────────────────────────────────────────────────── */

.dt-toast[b-i86rskknkd] {
    pointer-events: auto;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 300px;
    max-width: 420px;
    padding: 12px 14px;
    border-radius: 10px;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.35;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
    animation: dt-toast-in-b-i86rskknkd .22s ease-out;
    background: #334155; /* default neutral */
}

.dt-toast-icon[b-i86rskknkd] {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: rgba(255, 255, 255, .95);
}

.dt-toast-message[b-i86rskknkd] {
    flex: 1 1 auto;
    word-wrap: break-word;
}

.dt-toast-close[b-i86rskknkd] {
    flex: 0 0 auto;
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, .85);
    font-size: 14px;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    transition: background .15s, color .15s;
}

.dt-toast-close:hover[b-i86rskknkd] {
    background: rgba(255, 255, 255, .15);
    color: #fff;
}

/* ── Severity colours ──────────────────────────────────────────────────── */

.dt-toast-success[b-i86rskknkd] { background: linear-gradient(135deg, #16a34a 0%, #15803d 100%); }
.dt-toast-error[b-i86rskknkd]   { background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%); }
.dt-toast-warning[b-i86rskknkd] { background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%); color: #1f2937; }
.dt-toast-warning .dt-toast-icon[b-i86rskknkd],
.dt-toast-warning .dt-toast-close[b-i86rskknkd] { color: #1f2937; }
.dt-toast-warning .dt-toast-close:hover[b-i86rskknkd] { background: rgba(31, 41, 55, .12); }
.dt-toast-info[b-i86rskknkd]    { background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%); }
.dt-toast-normal[b-i86rskknkd]  { background: linear-gradient(135deg, #475569 0%, #334155 100%); }

/* ── Entrance animation ────────────────────────────────────────────────── */

@keyframes dt-toast-in-b-i86rskknkd {
    from {
        opacity: 0;
        transform: translateX(40px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ── Mobile ────────────────────────────────────────────────────────────── */

@media (max-width: 600px) {
    .dt-toast-container[b-i86rskknkd] {
        right: 10px;
        bottom: 10px;
        left: 10px;
    }
    .dt-toast[b-i86rskknkd] {
        min-width: 0;
        max-width: 100%;
    }
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/FieldUsageDialog.razor.rz.scp.css */
.fud-overlay[b-n9zmtp15g6] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10010;
    animation: fud-fade-b-n9zmtp15g6 0.18s ease;
}
@keyframes fud-fade-b-n9zmtp15g6 { from { opacity: 0; } to { opacity: 1; } }

.fud-dialog[b-n9zmtp15g6] {
    width: 90%;
    max-width: 560px;
    max-height: 80vh;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 24px 56px rgba(15, 23, 42, 0.22);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: fud-up-b-n9zmtp15g6 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}
@keyframes fud-up-b-n9zmtp15g6 {
    from { transform: translateY(16px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* ── Header ─────────────────────────────────────────────────────── */
.fud-header[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    background: #0f1f4b;
    color: #ffffff;
    border-bottom: 2px solid #8B0000;
    flex-shrink: 0;
}
.fud-title[b-n9zmtp15g6] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    font-weight: 600;
}
.fud-title i[b-n9zmtp15g6] { font-size: 13px; color: #cbd5e1; }
.fud-warn-icon[b-n9zmtp15g6] { color: #fbbf24 !important; }
.fud-title code[b-n9zmtp15g6] {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    padding: 1px 6px;
    border-radius: 4px;
    font-family: 'JetBrains Mono', 'Consolas', monospace;
    font-size: 12px;
    color: #f8fafc;
}
.fud-close[b-n9zmtp15g6] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.14);
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
    padding: 0;
}
.fud-close:hover[b-n9zmtp15g6] {
    background: rgba(239, 68, 68, 0.2);
    color: #fca5a5;
    border-color: rgba(239, 68, 68, 0.35);
    transform: rotate(90deg);
}
.fud-close i[b-n9zmtp15g6] { font-size: 11px; }

/* ── Body ───────────────────────────────────────────────────────── */
.fud-body[b-n9zmtp15g6] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding: 16px 18px;
    background: #ffffff;
}

.fud-loading[b-n9zmtp15g6],
.fud-empty[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 24px 4px;
    color: #6b7280;
    font-size: 13px;
}
.fud-loading i[b-n9zmtp15g6],
.fud-empty i[b-n9zmtp15g6] { font-size: 18px; color: #94a3b8; }
.fud-empty i.fa-check-circle[b-n9zmtp15g6] { color: #16a34a; }
.fud-empty-text[b-n9zmtp15g6] { display: flex; flex-direction: column; gap: 2px; }
.fud-empty-text strong[b-n9zmtp15g6] { color: #1f2937; }
.fud-empty-sub[b-n9zmtp15g6] { color: #16a34a; font-size: 12px; }
.fud-error i[b-n9zmtp15g6] { color: #ef4444; }

.fud-warn-banner[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    background: #fef3c7;
    border: 1px solid #fde68a;
    border-radius: 8px;
    margin-bottom: 14px;
    font-size: 12.5px;
    color: #78350f;
}
.fud-warn-banner i[b-n9zmtp15g6] { color: #d97706; font-size: 16px; flex-shrink: 0; }
.fud-warn-banner strong[b-n9zmtp15g6] { color: #92400e; }

/* ── Bulk-delete: aggregate summary + per-field blocks ──────────────── */
.fud-bulk-summary[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 14px;
    background: #fef3c7;
    border: 1px solid #fde68a;
    border-radius: 8px;
    margin-bottom: 16px;
    font-size: 12.5px;
    color: #78350f;
}
.fud-bulk-summary i[b-n9zmtp15g6] { color: #d97706; font-size: 16px; flex-shrink: 0; }
.fud-bulk-summary strong[b-n9zmtp15g6] { color: #92400e; }
.fud-bulk-summary .fa-check-circle[b-n9zmtp15g6] { color: #16a34a; }
.fud-bulk-summary:has(.fa-check-circle)[b-n9zmtp15g6] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #166534;
}
.fud-bulk-summary:has(.fa-check-circle) strong[b-n9zmtp15g6] { color: #14532d; }

.fud-bulk-field[b-n9zmtp15g6] {
    margin-bottom: 18px;
}
.fud-bulk-field:last-child[b-n9zmtp15g6] { margin-bottom: 0; }

.fud-bulk-field-head[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 4px 9px;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 600;
    color: #1f2937;
}
.fud-bulk-field-head > i[b-n9zmtp15g6] { color: #94a3b8; font-size: 12px; }
.fud-bulk-field-name code[b-n9zmtp15g6] {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    padding: 1px 7px;
    font-family: 'JetBrains Mono', 'Consolas', monospace;
    font-size: 11.5px;
    color: #0f172a;
    font-weight: 600;
}
.fud-bulk-field-meta[b-n9zmtp15g6] {
    margin-left: auto;
    font-size: 10.5px;
    font-weight: 600;
    color: #475569;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    padding: 2px 8px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.fud-bulk-field-meta-ok[b-n9zmtp15g6] {
    background: #f0fdf4;
    color: #15803d;
    border-color: #bbf7d0;
}
.fud-bulk-field-meta-ok i[b-n9zmtp15g6] { font-size: 9px; margin-right: 3px; }
.fud-bulk-field-meta-err[b-n9zmtp15g6] {
    background: #fef2f2;
    color: #b91c1c;
    border-color: #fecaca;
}

/* ── Sections ──────────────────────────────────────────────────── */
.fud-section[b-n9zmtp15g6] { margin-bottom: 16px; }
.fud-section:last-child[b-n9zmtp15g6] { margin-bottom: 0; }

.fud-section-head[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 0 0 7px;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 8px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #4b5563;
}
.fud-section-head i[b-n9zmtp15g6] { font-size: 11px; color: #6b7280; }
.fud-section-count[b-n9zmtp15g6] {
    margin-left: auto;
    background: #f1f5f9;
    color: #475569;
    padding: 1px 7px;
    border-radius: 10px;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0;
}

/* ── Items (card-style with avatar) ────────────────────────────────
   Each referencer renders as a quiet card: a coloured-tint avatar on
   the left whose colour signals the kind (forms = blue, formulas =
   purple, queries = teal), the artefact name + id chip + optional
   external-link on the right of the first row, and a connector row
   below showing the binding label + value with an "↳" elbow so the
   relationship is unmistakable. */
.fud-item[b-n9zmtp15g6] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 11px 12px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin-bottom: 8px;
    background: #ffffff;
    transition: border-color 0.14s ease, box-shadow 0.14s ease, transform 0.14s ease;
}
.fud-item:last-child[b-n9zmtp15g6] { margin-bottom: 0; }
.fud-item:hover[b-n9zmtp15g6] {
    border-color: #cbd5e1;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.05);
}

/* Avatar — coloured tile with the kind icon. Per-kind colour wash. */
.fud-item-avatar[b-n9zmtp15g6] {
    width: 32px;
    height: 32px;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: #f1f5f9;
    color: #475569;
}
.fud-item-avatar i[b-n9zmtp15g6] { font-size: 13px; }
.fud-item-form .fud-item-avatar[b-n9zmtp15g6]     { background: #dbeafe; color: #1d4ed8; }
.fud-item-formula .fud-item-avatar[b-n9zmtp15g6]  { background: #ede9fe; color: #6d28d9; }
.fud-item-query .fud-item-avatar[b-n9zmtp15g6]    { background: #ccfbf1; color: #0f766e; }
.fud-item-workflow .fud-item-avatar[b-n9zmtp15g6] { background: #ffedd5; color: #c2410c; }
.fud-item-email .fud-item-avatar[b-n9zmtp15g6]    { background: #fce7f3; color: #be185d; }

.fud-item-body[b-n9zmtp15g6] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* Top row: name + #id chip + (optional) external-link icon */
.fud-item-name-row[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.fud-item-name[b-n9zmtp15g6] {
    font-size: 13.5px;
    font-weight: 600;
    color: #0f172a;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    letter-spacing: -0.1px;
}
.fud-item-id[b-n9zmtp15g6] {
    font-size: 10.5px;
    font-weight: 600;
    color: #64748b;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    padding: 1px 6px;
    font-variant-numeric: tabular-nums;
    flex-shrink: 0;
    line-height: 1.4;
}

/* Kind tag — small uppercase pill that spells out which artefact this row
   is (Form / Field / Workflow / Template / Query). Lives right before the
   name; mirrors the avatar's colour so the visual + textual cue agree. */
.fud-item-kind-tag[b-n9zmtp15g6] {
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    padding: 2px 7px;
    border-radius: 4px;
    flex-shrink: 0;
    line-height: 1.4;
    border: 1px solid transparent;
}
.fud-item-kind-form[b-n9zmtp15g6]     { background: #dbeafe; color: #1d4ed8; border-color: #bfdbfe; }
.fud-item-kind-formula[b-n9zmtp15g6]  { background: #ede9fe; color: #6d28d9; border-color: #ddd6fe; }
.fud-item-kind-query[b-n9zmtp15g6]    { background: #ccfbf1; color: #0f766e; border-color: #99f6e4; }
.fud-item-kind-workflow[b-n9zmtp15g6] { background: #ffedd5; color: #c2410c; border-color: #fed7aa; }
.fud-item-kind-email[b-n9zmtp15g6]    { background: #fce7f3; color: #be185d; border-color: #fbcfe8; }

/* Bottom row: ↳ elbow + small label + monospace chip with the binding value */
.fud-item-ctx-row[b-n9zmtp15g6] {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    padding-left: 2px;
}
.fud-item-ctx-arrow[b-n9zmtp15g6] {
    font-size: 9px;
    color: #cbd5e1;
    transform: rotate(90deg);
    flex-shrink: 0;
}
.fud-item-ctx-label[b-n9zmtp15g6] {
    font-size: 10.5px;
    font-weight: 600;
    color: #64748b;
    flex-shrink: 0;
    letter-spacing: 0.1px;
}
.fud-item-ctx[b-n9zmtp15g6] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 5px;
    padding: 3px 8px;
    font-size: 11.5px;
    line-height: 1.4;
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    color: #334155;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    flex: 1 1 auto;
}

/* ── Footer ────────────────────────────────────────────────────── */
.fud-footer[b-n9zmtp15g6] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 18px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.fud-btn[b-n9zmtp15g6] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 16px;
    border-radius: 6px;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.16s ease;
}
.fud-btn i[b-n9zmtp15g6] { font-size: 11px; }
.fud-btn-ghost[b-n9zmtp15g6] {
    background: #ffffff;
    border: 1px solid #d1d5db;
    color: #4b5563;
}
.fud-btn-ghost:hover[b-n9zmtp15g6] {
    background: #f3f4f6;
    color: #1f2937;
    border-color: #9ca3af;
}
.fud-btn-danger[b-n9zmtp15g6] {
    background: #dc2626;
    border: 1px solid #dc2626;
    color: #ffffff;
    box-shadow: 0 1px 2px rgba(220, 38, 38, 0.22);
}
.fud-btn-danger:hover[b-n9zmtp15g6] {
    background: #b91c1c;
    border-color: #b91c1c;
    box-shadow: 0 4px 10px rgba(220, 38, 38, 0.28);
    transform: translateY(-1px);
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/RecordPanel.razor.rz.scp.css */
.rp-panel[b-86n5nn3upx] {
    --rp-width: 320px;
    --rp-accent: #8B0000;
    --rp-accent-soft: rgba(139, 0, 0, 0.08);
    --rp-bg: #ffffff;
    --rp-bg-soft: #f8fafc;
    --rp-border: #e5e7eb;
    --rp-border-soft: #f1f5f9;
    --rp-text: #1f2937;
    --rp-text-muted: #6b7280;
    --rp-text-faint: #9ca3af;

    width: var(--rp-width);
    flex: 0 0 var(--rp-width);
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: var(--rp-bg);
    border-left: 1px solid var(--rp-border);
    box-shadow: -6px 0 18px rgba(15, 23, 42, 0.05);
    position: relative;
    transition: width 0.2s cubic-bezier(0.16, 1, 0.3, 1),
                flex-basis 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.rp-closed[b-86n5nn3upx] {
    width: 0;
    flex-basis: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

.rp-resize-handle[b-86n5nn3upx] {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 6px;
    margin-left: -3px;
    cursor: col-resize;
    z-index: 10;
    background: transparent;
    transition: background 0.18s ease;
}
.rp-resize-handle[b-86n5nn3upx]::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 2px;
    height: 32px;
    border-radius: 1px;
    background: transparent;
    transition: background 0.18s ease;
}
.rp-resize-handle:hover[b-86n5nn3upx]::after,
:global(body.dt-rp-resizing) .rp-resize-handle[b-86n5nn3upx]::after {
    background: var(--rp-accent);
}
:global(body.dt-rp-resizing)[b-86n5nn3upx] {
    user-select: none;
    cursor: col-resize;
}

.rp-header[b-86n5nn3upx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 12px 11px 16px;
    background: #ffffff;
    border-bottom: 1px solid var(--rp-border);
    flex-shrink: 0;
    position: sticky;
    top: 0;
    z-index: 5;
    backdrop-filter: saturate(180%) blur(6px);
    -webkit-backdrop-filter: saturate(180%) blur(6px);
}

.rp-header-title[b-86n5nn3upx] {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
    flex: 1;
}
.rp-header-status[b-86n5nn3upx] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #10b981;
    flex-shrink: 0;
    transition: background 0.18s ease, box-shadow 0.18s ease;
    position: relative;
}
.rp-header-status-dirty[b-86n5nn3upx] {
    background: #f59e0b;
    box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.16);
    animation: rp-status-pulse-b-86n5nn3upx 1.8s ease-in-out infinite;
}
@keyframes rp-status-pulse-b-86n5nn3upx {
    0%, 100% { box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.16); }
    50%      { box-shadow: 0 0 0 6px rgba(245, 158, 11, 0.08); }
}

.rp-header-label[b-86n5nn3upx] {
    font-size: 13px;
    font-weight: 600;
    color: var(--rp-text);
    letter-spacing: -0.1px;
    line-height: 1;
}

.rp-header-counter[b-86n5nn3upx] {
    display: inline-flex;
    align-items: baseline;
    gap: 2px;
    font-size: 11.5px;
    font-variant-numeric: tabular-nums;
    color: var(--rp-text-faint);
    margin-left: 2px;
}
.rp-header-counter-cur[b-86n5nn3upx] {
    color: var(--rp-text-muted);
    font-weight: 600;
}
.rp-header-counter-sep[b-86n5nn3upx] {
    color: var(--rp-border);
    font-weight: 400;
    margin: 0 1px;
}
.rp-header-counter-total[b-86n5nn3upx] {
    color: var(--rp-text-faint);
    font-weight: 500;
}

.rp-header-actions[b-86n5nn3upx] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.rp-nav-group[b-86n5nn3upx] {
    display: inline-flex;
    align-items: stretch;
    background: var(--rp-bg-soft);
    border: 1px solid var(--rp-border-soft);
    border-radius: 6px;
    padding: 1px;
    gap: 1px;
}
.rp-nav-group .rp-icon-btn[b-86n5nn3upx] {
    width: 22px;
    height: 22px;
    border-radius: 4px;
    background: transparent;
    border: none;
}
.rp-nav-group .rp-icon-btn i[b-86n5nn3upx] { font-size: 9px; }
.rp-nav-group .rp-icon-btn:hover:not(:disabled)[b-86n5nn3upx] {
    background: #ffffff;
    color: var(--rp-text);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
}

.rp-icon-btn[b-86n5nn3upx] {
    width: 26px;
    height: 26px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: var(--rp-text-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.14s ease;
    padding: 0;
}
.rp-icon-btn i[b-86n5nn3upx] { font-size: 11px; line-height: 1; }
.rp-icon-btn:hover:not(:disabled)[b-86n5nn3upx] {
    background: var(--rp-bg-soft);
    color: var(--rp-text);
    border-color: var(--rp-border-soft);
}
.rp-icon-btn:active:not(:disabled)[b-86n5nn3upx] { transform: scale(0.94); }
.rp-icon-btn:disabled[b-86n5nn3upx] {
    opacity: 0.28;
    cursor: not-allowed;
}

.rp-close i[b-86n5nn3upx] { font-size: 12px; }
.rp-close:hover:not(:disabled)[b-86n5nn3upx] {
    background: #fef2f2 !important;
    color: #b91c1c !important;
    border-color: #fecaca !important;
}

.rp-tabs[b-86n5nn3upx] {
    display: flex;
    gap: 2px;
    padding: 4px;
    margin: 10px 12px 4px;
    background: #f1f5f9;
    border-radius: 8px;
    flex-shrink: 0;
}
.rp-tab[b-86n5nn3upx] {
    flex: 1;
    padding: 6px 8px;
    border: none;
    background: transparent;
    font-size: 11.5px;
    font-weight: 500;
    color: #64748b;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 6px;
    transition: all 0.16s ease;
    letter-spacing: 0.1px;
}
.rp-tab i[b-86n5nn3upx] { font-size: 11px; opacity: 0.7; }
.rp-tab:hover[b-86n5nn3upx] { color: #0f1f4b; background: rgba(15, 31, 75, 0.04); }
.rp-tab.on[b-86n5nn3upx] {
    background: #ffffff;
    color: #0f1f4b;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06),
                0 0 0 1px rgba(15, 23, 42, 0.04);
}
.rp-tab.on i[b-86n5nn3upx] { opacity: 1; color: var(--rp-accent); }

.rp-body[b-86n5nn3upx] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding: 8px 0 20px;
    background: var(--rp-bg);
}
.rp-body[b-86n5nn3upx]::-webkit-scrollbar {
    width: 10px;
}
.rp-body[b-86n5nn3upx]::-webkit-scrollbar-thumb {
    background: rgba(15, 23, 42, 0.12);
    border-radius: 5px;
    border: 2px solid var(--rp-bg);
}
.rp-body[b-86n5nn3upx]::-webkit-scrollbar-thumb:hover {
    background: rgba(15, 23, 42, 0.2);
}

.rp-empty[b-86n5nn3upx] {
    padding: 40px 20px;
    text-align: center;
    color: var(--rp-text-faint);
    font-size: 12px;
    font-style: normal;
    line-height: 1.5;
}

.rp-fields[b-86n5nn3upx] {
    display: flex;
    flex-direction: column;
}
.rp-field[b-86n5nn3upx] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 10px 14px;
    border-left: 2px solid transparent;
    background: transparent;
    cursor: text;
    transition: background 0.12s ease, border-color 0.16s ease;
    position: relative;
}
.rp-field:not(:last-child)[b-86n5nn3upx]::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 0;
    height: 1px;
    background: var(--rp-border-soft);
}
.rp-field:hover[b-86n5nn3upx] { background: var(--rp-bg-soft); }
.rp-field-dirty[b-86n5nn3upx] {
    border-left-color: #f59e0b;
    background: rgba(254, 243, 199, 0.35);
}
.rp-field-dirty:hover[b-86n5nn3upx] { background: rgba(254, 243, 199, 0.6); }
.rp-field-error[b-86n5nn3upx] {
    border-left-color: #ef4444;
    background: rgba(254, 226, 226, 0.35);
}
.rp-field-error:hover[b-86n5nn3upx] { background: rgba(254, 226, 226, 0.55); }
.rp-field-readonly[b-86n5nn3upx] {
    cursor: default;
    background: transparent;
}
.rp-field-readonly:hover[b-86n5nn3upx] { background: var(--rp-bg-soft); }

.rp-field-head[b-86n5nn3upx] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 16px;
}
.rp-field-name[b-86n5nn3upx] {
    font-size: 11px;
    color: var(--rp-text-muted);
    font-weight: 500;
    text-transform: none;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    letter-spacing: 0.1px;
}
.rp-field-dirty .rp-field-name[b-86n5nn3upx] { color: #92400e; }
.rp-field-error .rp-field-name[b-86n5nn3upx] { color: #991b1b; }

.rp-field-tag[b-86n5nn3upx] {
    font-size: 8.5px;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 3px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    flex-shrink: 0;
    line-height: 1.4;
}
.rp-field-tag-pk[b-86n5nn3upx] {
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
}
.rp-field-tag-calc[b-86n5nn3upx] {
    background: #ede9fe;
    color: #6d28d9;
    border: 1px solid #ddd6fe;
}
.rp-field-tag-type[b-86n5nn3upx] {
    background: transparent;
    color: var(--rp-text-faint);
    border: 1px solid var(--rp-border);
}

.rp-input[b-86n5nn3upx] {
    width: 100%;
    padding: 7px 10px;
    font-size: 12.5px;
    color: var(--rp-text);
    background: var(--rp-bg-soft);
    border: 1px solid transparent;
    border-radius: 6px;
    outline: none;
    transition: background 0.14s ease,
                border-color 0.14s ease,
                box-shadow 0.14s ease;
    font-family: inherit;
    line-height: 1.4;
}
.rp-input:hover:not([readonly]):not(:focus)[b-86n5nn3upx] {
    background: #f3f4f6;
}
.rp-input:focus[b-86n5nn3upx] {
    background: #ffffff;
    border-color: var(--rp-accent);
    box-shadow: 0 0 0 3px var(--rp-accent-soft);
}
.rp-input[readonly][b-86n5nn3upx] {
    background: transparent;
    color: var(--rp-text-muted);
    cursor: default;
    border-style: dashed;
    border-color: var(--rp-border);
}
.rp-textarea[b-86n5nn3upx] {
    resize: vertical;
    min-height: 56px;
    font-family: inherit;
}
.rp-field-error .rp-input[b-86n5nn3upx] {
    background: #ffffff;
    border-color: rgba(239, 68, 68, 0.5);
}
.rp-field-error .rp-input:focus[b-86n5nn3upx] {
    border-color: #ef4444;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}

.rp-field-error-msg[b-86n5nn3upx] {
    font-size: 11px;
    color: #b91c1c;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-top: 2px;
}
.rp-field-error-msg i[b-86n5nn3upx] { font-size: 10px; }

.rp-toggle[b-86n5nn3upx] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    user-select: none;
    padding: 4px 0;
}
.rp-toggle input[b-86n5nn3upx] { position: absolute; opacity: 0; width: 0; height: 0; }
.rp-toggle-track[b-86n5nn3upx] {
    width: 34px;
    height: 18px;
    border-radius: 9px;
    background: #cbd5e1;
    transition: background 0.18s ease;
    position: relative;
    display: inline-block;
    flex-shrink: 0;
}
.rp-toggle-thumb[b-86n5nn3upx] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.rp-toggle input:checked + .rp-toggle-track[b-86n5nn3upx] {
    background: var(--rp-accent);
}
.rp-toggle input:checked + .rp-toggle-track .rp-toggle-thumb[b-86n5nn3upx] {
    transform: translateX(16px);
}
.rp-toggle input:disabled + .rp-toggle-track[b-86n5nn3upx] { opacity: 0.5; cursor: not-allowed; }
.rp-toggle-label[b-86n5nn3upx] {
    font-size: 12.5px;
    color: var(--rp-text);
    font-weight: 500;
}

.rp-value-tab[b-86n5nn3upx] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: 100%;
    padding: 8px 14px 12px;
}
.rp-value-head[b-86n5nn3upx] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--rp-border-soft);
}
.rp-value-field-name[b-86n5nn3upx] {
    font-size: 12.5px;
    font-weight: 600;
    color: var(--rp-text);
}
.rp-value-meta[b-86n5nn3upx] {
    font-size: 10.5px;
    color: var(--rp-text-faint);
    margin-left: auto;
    font-variant-numeric: tabular-nums;
}
.rp-value-text[b-86n5nn3upx] {
    margin: 0;
    padding: 12px 14px;
    background: var(--rp-bg-soft);
    border: 1px solid var(--rp-border-soft);
    border-radius: 8px;
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', 'Monaco', monospace;
    font-size: 12px;
    line-height: 1.55;
    color: var(--rp-text);
    white-space: pre-wrap;
    word-break: break-word;
    overflow-y: auto;
    flex: 1;
    min-height: 120px;
}

.rp-agg-tab[b-86n5nn3upx] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 8px 14px 12px;
}
.rp-agg-table-wrap[b-86n5nn3upx] {
    overflow-x: auto;
    border: 1px solid var(--rp-border-soft);
    border-radius: 8px;
    background: var(--rp-bg);
}
.rp-agg-table[b-86n5nn3upx] {
    width: 100%;
    border-collapse: collapse;
    font-size: 11.5px;
}
.rp-agg-table th[b-86n5nn3upx] {
    text-align: left;
    padding: 7px 10px;
    background: var(--rp-bg-soft);
    color: var(--rp-text-muted);
    font-weight: 600;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    border-bottom: 1px solid var(--rp-border-soft);
    position: sticky;
    top: 0;
}
.rp-agg-table th + th[b-86n5nn3upx] { text-align: right; }
.rp-agg-table td[b-86n5nn3upx] {
    padding: 6px 10px;
    border-bottom: 1px solid var(--rp-border-soft);
    color: var(--rp-text);
    font-variant-numeric: tabular-nums;
}
.rp-agg-table tr:last-child td[b-86n5nn3upx] { border-bottom: none; }
.rp-agg-table tbody tr:hover td[b-86n5nn3upx] { background: var(--rp-bg-soft); }
.rp-agg-table td + td[b-86n5nn3upx] { text-align: right; }
.rp-agg-field[b-86n5nn3upx] {
    color: var(--rp-text-muted);
    font-size: 11px;
    max-width: 130px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
}
.rp-agg-hint[b-86n5nn3upx] {
    font-size: 10.5px;
    color: var(--rp-text-faint);
    padding: 0 4px;
    font-style: italic;
}

.rp-footer[b-86n5nn3upx] {
    display: flex;
    gap: 8px;
    padding: 10px 14px;
    border-top: 1px solid var(--rp-border-soft);
    background: var(--rp-bg);
    flex-shrink: 0;
    box-shadow: 0 -4px 12px rgba(15, 23, 42, 0.04);
    animation: rp-footer-rise-b-86n5nn3upx 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}
@keyframes rp-footer-rise-b-86n5nn3upx {
    from { transform: translateY(100%); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}
.rp-btn[b-86n5nn3upx] {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 34px;
    padding: 0 14px;
    border-radius: 6px;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.16s ease;
    letter-spacing: 0.1px;
}
.rp-btn i[b-86n5nn3upx] { font-size: 11px; }
.rp-btn:disabled[b-86n5nn3upx] { opacity: 0.55; cursor: not-allowed; }
.rp-btn-ghost[b-86n5nn3upx] {
    background: transparent;
    border: 1px solid var(--rp-border);
    color: var(--rp-text-muted);
    flex: 0 0 auto;
    min-width: 96px;
}
.rp-btn-ghost:hover:not(:disabled)[b-86n5nn3upx] {
    background: var(--rp-bg-soft);
    color: var(--rp-text);
    border-color: #cbd5e1;
}
.rp-btn-primary[b-86n5nn3upx] {
    background: var(--rp-accent);
    border: 1px solid var(--rp-accent);
    color: #ffffff;
    box-shadow: 0 1px 2px rgba(139, 0, 0, 0.18);
}
.rp-btn-primary:hover:not(:disabled)[b-86n5nn3upx] {
    background: #6d0000;
    border-color: #6d0000;
    box-shadow: 0 4px 10px rgba(139, 0, 0, 0.25);
    transform: translateY(-1px);
}
.rp-btn-primary:active:not(:disabled)[b-86n5nn3upx] {
    transform: translateY(0);
    box-shadow: 0 1px 2px rgba(139, 0, 0, 0.2);
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/SplitView.razor.rz.scp.css */
/* ═══ FULLSCREEN SHELL ═══ */
.sv-fullscreen[b-kt2ruk1fp8] {
    position: fixed;
    inset: 0;
    background: #eef0f6;
    z-index: 1300;
    display: flex;
    flex-direction: column;
    animation: sv-slide-in-b-kt2ruk1fp8 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    font-family: 'Segoe UI', system-ui, sans-serif;
}

@keyframes sv-slide-in-b-kt2ruk1fp8 {
    from { transform: translateX(100%); opacity: 0; }
    to   { transform: translateX(0);    opacity: 1; }
}

/* ═══ HEADER ═══ */
.sv-header[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    height: 68px;
    background: linear-gradient(105deg, #060e28 0%, #0a1436 35%, #0f1f4b 70%, #142258 100%);
    border-bottom: 2.5px solid #6d0000;
    flex-shrink: 0;
    box-shadow: 0 4px 20px rgba(6,14,40,.45);
    position: relative;
    overflow: hidden;
}

/* Dot grid texture */
.sv-header[b-kt2ruk1fp8]::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(255,255,255,.045) 1px, transparent 1px);
    background-size: 24px 24px;
    pointer-events: none;
}

/* Crimson left accent bar */
.sv-header[b-kt2ruk1fp8]::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, transparent 0%, #6d0000 30%, #6d0000 70%, transparent 100%);
    pointer-events: none;
}

.sv-header-left[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    gap: 16px;
    position: relative;
    z-index: 1;
    min-width: 0;
    flex: 1;
}

.sv-table-icon[b-kt2ruk1fp8] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(255,255,255,.1), rgba(255,255,255,.04));
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 11px;
    color: #7a9cc8;
    font-size: 18px;
    flex-shrink: 0;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 4px 12px rgba(0,0,0,.25);
}

.sv-table-info[b-kt2ruk1fp8] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

/* Table name + badge on same row */
.sv-table-name-row[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.sv-table-name[b-kt2ruk1fp8] {
    margin: 0;
    font-size: 15.5px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.15px;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 600px;
}

.sv-type-badge[b-kt2ruk1fp8] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    background: rgba(109,0,0,.3);
    border: 1px solid rgba(109,0,0,.5);
    border-radius: 20px;
    font-size: 9.5px;
    font-weight: 700;
    color: #fca5a5;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    flex-shrink: 0;
}

/* Green dot before badge text */
.sv-type-badge[b-kt2ruk1fp8]::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #4ade80;
    display: inline-block;
    box-shadow: 0 0 6px rgba(74,222,128,.6);
    flex-shrink: 0;
}

.sv-bc[b-kt2ruk1fp8] {
    list-style: none;
    margin: 2px 0 0 0;
    padding: 0;
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
    min-width: 0;
    max-width: 100%;
    line-height: 1;
}

.sv-bc-step[b-kt2ruk1fp8] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 16px 0 14px;
    height: 22px;
    margin-right: -8px;
    background: rgba(255,255,255,.07);
    color: #b8c8e0;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.1px;
    white-space: nowrap;
    overflow: hidden;
    user-select: none;
    transition: background 0.18s, color 0.18s, filter 0.18s;
    clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 50%, calc(100% - 9px) 100%, 0 100%, 9px 50%);
    min-width: 0;
}

.sv-bc-step:first-child[b-kt2ruk1fp8] {
    padding-left: 10px;
    clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 50%, calc(100% - 9px) 100%, 0 100%);
}

.sv-bc-step:last-child[b-kt2ruk1fp8] {
    margin-right: 0;
    padding-right: 12px;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 9px 50%);
}

.sv-bc-clickable[b-kt2ruk1fp8] {
    cursor: pointer;
}

.sv-bc-clickable:hover[b-kt2ruk1fp8] {
    filter: brightness(1.18);
}

.sv-bc-clickable:focus-visible[b-kt2ruk1fp8] {
    outline: 2px solid #6d0000;
    outline-offset: 2px;
}

.sv-bc-done[b-kt2ruk1fp8] {
    background: linear-gradient(135deg, rgba(106,154,210,.22) 0%, rgba(106,154,210,.32) 100%);
    color: #d6e2f5;
}
.sv-bc-done .sv-bc-check[b-kt2ruk1fp8] {
    color: #4ade80;
}

.sv-bc-current[b-kt2ruk1fp8] {
    background: linear-gradient(135deg, #6d0000 0%, #8B0000 100%);
    color: #ffffff;
    font-weight: 700;
}
.sv-bc-current .sv-bc-check[b-kt2ruk1fp8] {
    color: #fde68a;
}

.sv-bc-pending[b-kt2ruk1fp8] {
    background: rgba(255,255,255,.05);
    color: #7a8aa6;
}
.sv-bc-pending .sv-bc-check[b-kt2ruk1fp8] {
    color: #5a6a85;
}

.sv-bc-check[b-kt2ruk1fp8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 13px;
    height: 13px;
    font-size: 9px;
    flex-shrink: 0;
}

.sv-bc-text[b-kt2ruk1fp8] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 110px;
    min-width: 0;
}

.sv-bc-name .sv-bc-text[b-kt2ruk1fp8] {
    max-width: 160px;
}

.sv-header-right[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    margin-left: 16px;
}

/* Vertical separator before buttons */
.sv-header-sep[b-kt2ruk1fp8] {
    width: 1px;
    height: 24px;
    background: rgba(255,255,255,.1);
    margin: 0 2px;
}

/* Chevron toggle */
.sv-icon-btn[b-kt2ruk1fp8] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 7px;
    cursor: pointer;
    color: #7a9cc8;
    font-size: 12px;
    transition: all 0.18s;
}
.sv-icon-btn:hover[b-kt2ruk1fp8],
.sv-icon-btn.active[b-kt2ruk1fp8] {
    background: rgba(255,255,255,.16);
    color: white;
    border-color: rgba(255,255,255,.24);
}

.sv-chevron[b-kt2ruk1fp8] { transition: transform 0.25s ease; }
.sv-chevron.rotated[b-kt2ruk1fp8] { transform: rotate(180deg); }

/* Close button */
.sv-close-btn[b-kt2ruk1fp8] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.88);
    border: none;
    border-radius: 7px;
    cursor: pointer;
    color: #0f1f4b;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.18s;
}
.sv-close-btn:hover[b-kt2ruk1fp8] {
    background: white;
    box-shadow: 0 2px 10px rgba(0,0,0,.2);
    transform: scale(1.06) rotate(90deg);
}

/* ═══ INFO CARDS ═══ */
.sv-info-cards[b-kt2ruk1fp8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px;
    padding: 12px 14px;
    background: white;
    border-bottom: 1px solid #e0e3ec;
    flex-shrink: 0;
    animation: sv-slide-down-b-kt2ruk1fp8 0.22s ease;
}

@keyframes sv-slide-down-b-kt2ruk1fp8 {
    from { opacity: 0; transform: translateY(-8px); }
    to   { opacity: 1; transform: translateY(0); }
}

.sv-info-card[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 13px;
    background: #f8f9fc;
    border: 1.5px solid #e8eaef;
    border-radius: 8px;
    transition: all 0.18s;
}
.sv-info-card:hover[b-kt2ruk1fp8] {
    border-color: #6d0000;
    box-shadow: 0 2px 10px rgba(109,0,0,.1);
    background: white;
}

.sv-info-icon[b-kt2ruk1fp8] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #0f1f4b;
    border-radius: 7px;
    color: #7a9cc8;
    font-size: 13px;
    flex-shrink: 0;
}

.sv-info-content[b-kt2ruk1fp8] { display: flex; flex-direction: column; gap: 2px; min-width: 0; }

.sv-info-label[b-kt2ruk1fp8] {
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #8892a4;
}

.sv-info-value[b-kt2ruk1fp8] {
    font-size: 12.5px;
    font-weight: 600;
    color: #1e2433;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sv-info-mono[b-kt2ruk1fp8] {
    font-family: 'Consolas', monospace;
    font-size: 10.5px;
    color: #6b7280;
    font-weight: 500;
}

/* ═══ TABS CONTAINER ═══ */
.sv-tabs-container[b-kt2ruk1fp8] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: white;
    margin: 10px;
    border-radius: 10px;
    box-shadow: 0 2px 12px rgba(15,31,75,.09);
    border: 1px solid #e0e3ec;
    min-height: 0;
}

/* ═══ TABS NAVIGATION ═══ */
.sv-tabs-nav[b-kt2ruk1fp8] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0 14px;
    background: #fafbfd;
    border-bottom: 1px solid #e8eaef;
    height: 48px;
    flex-shrink: 0;
}

.sv-tabs-left[b-kt2ruk1fp8] {
    /* empty left spacer — keeps tabs centered */
    display: flex;
    align-items: center;
}

/* ── CENTER: tab buttons ── */
.sv-tabs-center[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    height: 100%;
}

.sv-tabs-right[b-kt2ruk1fp8] {
    display: flex;
    gap: 6px;
    align-items: center;
    justify-content: flex-end;
}

/* Tab pill buttons */
.sv-tab-btn[b-kt2ruk1fp8] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 0 18px;
    height: 34px;
    border: 1.5px solid transparent;
    background: transparent;
    color: #8892a4;
    cursor: pointer;
    font-size: 12.5px;
    font-weight: 500;
    border-radius: 8px;
    transition: all 0.18s;
    font-family: inherit;
}
.sv-tab-btn i[b-kt2ruk1fp8] { font-size: 11px; }

.sv-tab-btn:hover[b-kt2ruk1fp8] {
    color: #1e2433;
    background: #f0f2f7;
    border-color: #e0e3ec;
}

.sv-tab-btn.active[b-kt2ruk1fp8] {
    color: #0f1f4b;
    background: white;
    border-color: #e0e3ec;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(15,31,75,.1);
}

/* Active bottom accent */
.sv-tab-indicator[b-kt2ruk1fp8] {
    position: absolute;
    bottom: -2px;
    left: 20%;
    right: 20%;
    height: 2.5px;
    background: #6d0000;
    border-radius: 2px 2px 0 0;
}

/* ── Separator between tabs ── */
.sv-tab-sep[b-kt2ruk1fp8] {
    width: 1px;
    height: 18px;
    background: #e0e3ec;
    flex-shrink: 0;
}

/* Split button */
.sv-split-btn[b-kt2ruk1fp8] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: white;
    border: 1.5px solid #e8eaef;
    border-radius: 7px;
    color: #6b7280;
    cursor: pointer;
    font-size: 11.5px;
    font-weight: 600;
    transition: all 0.18s;
    font-family: inherit;
}
.sv-split-btn:hover[b-kt2ruk1fp8] {
    border-color: #0f1f4b;
    color: #0f1f4b;
    background: #f0f2f7;
}
.sv-split-btn.active[b-kt2ruk1fp8] {
    background: #0f1f4b;
    border-color: #0f1f4b;
    color: white;
    box-shadow: 0 2px 8px rgba(15,31,75,.25);
}

/* Orientation button */
.sv-action-btn[b-kt2ruk1fp8] {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1.5px solid #e8eaef;
    border-radius: 7px;
    color: #8892a4;
    cursor: pointer;
    transition: all 0.18s;
}
.sv-action-btn:hover[b-kt2ruk1fp8] {
    border-color: #6d0000;
    color: #6d0000;
    background: #fef2f2;
}

/* ═══ TABS CONTENT ═══ */
.sv-tabs-content[b-kt2ruk1fp8] {
    flex: 1;
    overflow: hidden;
    background: white;
    display: flex;
    flex-direction: column;
}

.sv-tabs-content:not(.sv-split-horizontal):not(.sv-split-vertical)[b-kt2ruk1fp8] {
    overflow-y: auto;
}

.sv-split-horizontal[b-kt2ruk1fp8] { flex-direction: column; }
.sv-split-vertical[b-kt2ruk1fp8]   { flex-direction: row; }

/* ═══ SPLIT PANELS ═══ */
.sv-panel[b-kt2ruk1fp8] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    min-width: 0;
    background: white;
    animation: sv-panel-in-b-kt2ruk1fp8 0.2s ease;
}

@keyframes sv-panel-in-b-kt2ruk1fp8 {
    from { opacity: 0; transform: scale(0.99); }
    to   { opacity: 1; transform: scale(1); }
}

.sv-panel-header[b-kt2ruk1fp8] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #f8f9fc;
    border-bottom: 1px solid #e8eaef;
    flex-shrink: 0;
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #374151;
}
.sv-panel-header i[b-kt2ruk1fp8] { color: #6d0000; font-size: 11px; }

.sv-panel-body[b-kt2ruk1fp8] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}

/* ═══ SPLIT DIVIDER ═══ */
.sv-divider[b-kt2ruk1fp8] {
    background: #e8eaef;
    position: relative;
    flex-shrink: 0;
    user-select: none;
    transition: background 0.18s;
    z-index: 10;
}

.sv-split-horizontal .sv-divider[b-kt2ruk1fp8] { height: 5px; width: 100%; cursor: row-resize; }
.sv-split-vertical   .sv-divider[b-kt2ruk1fp8] { width: 5px; height: 100%; cursor: col-resize; }

.sv-divider:hover[b-kt2ruk1fp8] { background: #6d0000; }

.sv-divider[b-kt2ruk1fp8]::before {
    content: '';
    position: absolute;
    background: rgba(255,255,255,.6);
    border-radius: 999px;
    pointer-events: none;
    transition: background 0.18s;
}
.sv-split-horizontal .sv-divider[b-kt2ruk1fp8]::before {
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 40px; height: 3px;
}
.sv-split-vertical .sv-divider[b-kt2ruk1fp8]::before {
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 3px; height: 40px;
}
.sv-divider:hover[b-kt2ruk1fp8]::before { background: rgba(255,255,255,.8); }

/* ═══════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════ */
@media (max-width: 768px) {
    .sv-header[b-kt2ruk1fp8] { padding: 0 12px; height: 52px; }
    .sv-tabs-nav[b-kt2ruk1fp8] { grid-template-columns: 1fr; justify-items: center; }
    .sv-tabs-left[b-kt2ruk1fp8], .sv-tabs-right[b-kt2ruk1fp8] { display: none; }
    .sv-split-vertical[b-kt2ruk1fp8] { flex-direction: column; }
    .sv-info-cards[b-kt2ruk1fp8] { grid-template-columns: 1fr; }
    .sv-table-name[b-kt2ruk1fp8] { font-size: 13px; }
    .sv-bc-text[b-kt2ruk1fp8] { max-width: 80px; }
    .sv-bc-name .sv-bc-text[b-kt2ruk1fp8] { max-width: 90px; }
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/WorkflowTableDataEditor.razor.rz.scp.css */
/* ══════════════════════════════════════════════
   DATA SHELL (wraps banner + info bar + grid)
══════════════════════════════════════════════ */
.dt-data-shell[b-rtd5f53kbp] {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 0;
}

.dt-data-shell[b-rtd5f53kbp] >  .cdt-wrapper,
.dt-data-shell[b-rtd5f53kbp] >  .dg-wrapper {
    flex: 1;
    min-height: 0;
}

.dt-grid-panel-row[b-rtd5f53kbp] {
    flex: 1;
    min-height: 0;
    min-width: 0;
    display: flex;
    flex-direction: row;
    align-items: stretch;
}
.dt-grid-panel-row[b-rtd5f53kbp] >  .dg-wrapper {
    flex: 1;
    min-width: 0;
    min-height: 0;
}

/* ═══ ERROR BANNER ═══ */
.dt-data-err-banner[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 14px;
    background: #fcebeb;
    border: 1px solid #f09595;
    border-radius: 8px;
    margin: 0 0 8px;
    flex-shrink: 0;
}
.dt-data-err-banner i[b-rtd5f53kbp] {
    color: #a32d2d;
    font-size: 14px;
    flex-shrink: 0;
}
.dt-data-err-banner span[b-rtd5f53kbp] {
    font-size: 12px;
    color: #791f1f;
    flex: 1;
    line-height: 1.4;
}
.dt-data-err-banner strong[b-rtd5f53kbp] { font-weight: 700; }

.dt-data-err-filter[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: white;
    border: 1px solid #f09595;
    color: #a32d2d;
    font-size: 11px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    flex-shrink: 0;
}
.dt-data-err-filter:hover[b-rtd5f53kbp] {
    background: #a32d2d;
    color: white;
}
.dt-data-err-filter.active[b-rtd5f53kbp] {
    background: #a32d2d;
    color: white;
}
.dt-data-err-filter i[b-rtd5f53kbp] { font-size: 10px; }

/* ═══ INFO BAR ═══ */
.dt-data-info-bar[b-rtd5f53kbp] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    padding: 7px 12px;
    background: #f8f9fc;
    border: 1px solid #e8eaef;
    border-radius: 8px;
    margin: 0 0 8px;
    flex-shrink: 0;
}

.dt-data-info-chip[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    color: #5a6070;
}
.dt-data-info-chip strong[b-rtd5f53kbp] {
    color: #1e2433;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}
.dt-data-info-chip i[b-rtd5f53kbp] {
    color: #8892a4;
    font-size: 11px;
}

.dt-data-info-err strong[b-rtd5f53kbp] { color: #a32d2d; }
.dt-data-info-err i[b-rtd5f53kbp]      { color: #a32d2d; }

/* Highlight invalid rows when banner is visible (left red border) */
.dt-data-shell.has-invalid[b-rtd5f53kbp]  tr.dg-row-invalid > td:first-child {
    border-left: 2px solid #a32d2d;
}
.dt-data-shell.has-invalid[b-rtd5f53kbp]  tr.dg-row-invalid > td {
    background: rgba(229, 57, 53, 0.04);
}

/* ═══ REFRESH BUTTON ═══ */
.rec-refresh-btn[b-rtd5f53kbp] {
    width: 30px;
    height: 30px;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: #f3f4f6;
    color: #6b7280;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}
.rec-refresh-btn:hover:not(:disabled)[b-rtd5f53kbp] {
    background: #0a1436;
    border-color: #0a1436;
    color: white;
    box-shadow: 0 2px 8px rgba(10, 20, 54, 0.25);
}
.rec-refresh-btn:active:not(:disabled)[b-rtd5f53kbp] { transform: scale(0.93); }
.rec-refresh-btn:disabled[b-rtd5f53kbp] { opacity: 0.45; cursor: not-allowed; }
.rec-refresh-icon[b-rtd5f53kbp] { width: 16px; height: 16px; position: relative; z-index: 1; }
.rec-refresh-btn:disabled .rec-refresh-icon[b-rtd5f53kbp] { animation: rec-spin-b-rtd5f53kbp 0.9s linear infinite; }

@keyframes rec-spin-b-rtd5f53kbp { to { transform: rotate(360deg); } }

/* ═══ DIALOG OVERLAY ═══ */
.rec-overlay[b-rtd5f53kbp] {
    position: fixed;
    inset: 0;
    background: rgba(10, 20, 54, 0.5);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    animation: rec-fade-b-rtd5f53kbp 0.2s ease;
}
@keyframes rec-fade-b-rtd5f53kbp { from { opacity: 0; } to { opacity: 1; } }

/* ═══ DIALOG ═══ */
.rec-dialog[b-rtd5f53kbp] {
    background: white;
    border-radius: 8px;
    width: 90%;
    max-width: 520px;
    max-height: 88vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 48px rgba(10, 20, 54, 0.22);
    animation: rec-up-b-rtd5f53kbp 0.25s ease;
}
.rec-dialog-wide[b-rtd5f53kbp] { max-width: 800px; }
@keyframes rec-up-b-rtd5f53kbp {
    from { transform: translateY(20px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* Dialog header */
.rec-dialog-header[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    height: 48px;
    background: #0a1436;
    border-bottom: 2px solid #8B0000;
    flex-shrink: 0;
}
.rec-dialog-title[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    font-size: 13px;
    font-weight: 600;
}
.rec-dialog-title i[b-rtd5f53kbp] { color: #8fa3c0; font-size: 13px; }

.rec-close-btn[b-rtd5f53kbp] {
    width: 30px; height: 30px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 5px;
    cursor: pointer;
    color: #8fa3c0;
    font-size: 13px;
    transition: all 0.18s ease;
}
.rec-close-btn:hover[b-rtd5f53kbp] {
    background: rgba(255,255,255,0.18);
    color: white;
    transform: rotate(90deg);
}

/* Dialog body */
.rec-dialog-body[b-rtd5f53kbp] {
    padding: 16px;
    overflow-y: auto;
    flex: 1;
    font-size: 12px;
}

/* Dialog footer */
.rec-dialog-footer[b-rtd5f53kbp] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 16px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}

/* ═══ DIALOG FOOTER BUTTONS ═══ */
.dt-btn[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 16px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    border: none;
    transition: all 0.18s ease;
    white-space: nowrap;
}
.dt-btn i[b-rtd5f53kbp] { font-size: 11px; }

/* Primary — Red */
.dt-btn-primary[b-rtd5f53kbp] {
    background: #8B0000;
    color: white;
    border: 1px solid #8B0000;
}
.dt-btn-primary:hover[b-rtd5f53kbp] {
    background: #6d0000;
    border-color: #6d0000;
    box-shadow: 0 3px 8px rgba(139, 0, 0, 0.3);
    transform: translateY(-1px);
}
.dt-btn-primary:active[b-rtd5f53kbp] { transform: translateY(0); box-shadow: none; }

/* Ghost — outlined */
.dt-btn-ghost[b-rtd5f53kbp] {
    background: white;
    color: #374151;
    border: 1px solid #d1d5db;
}
.dt-btn-ghost:hover[b-rtd5f53kbp] {
    background: #f3f4f6;
    border-color: #9ca3af;
    color: #111827;
}
.dt-btn-ghost:active[b-rtd5f53kbp] { background: #e5e7eb; }

/* ═══ PROVENANCE ITEMS ═══ */
.rec-provenance-item[b-rtd5f53kbp] {
    padding: 12px 0;
    border-bottom: 1px solid #f3f4f6;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.rec-provenance-item:last-child[b-rtd5f53kbp] { border-bottom: none; }
.rec-provenance-row[b-rtd5f53kbp] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    font-size: 12px;
    color: #374151;
}
.rec-prov-label[b-rtd5f53kbp] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #8B0000;
    min-width: 68px;
    flex-shrink: 0;
}
.rec-prov-muted[b-rtd5f53kbp] { color: #9ca3af; font-size: 11px; }
.rec-prov-code[b-rtd5f53kbp] {
    font-family: 'Courier New', monospace;
    font-size: 11px;
    background: #f3f4f6;
    padding: 1px 6px;
    border-radius: 3px;
    color: #374151;
}

/* ═══ SETTINGS MENU ═══ */
.cdt-settings-wrapper[b-rtd5f53kbp] { position: relative; }

.cdt-settings-btn[b-rtd5f53kbp] {
    width: 32px; height: 32px;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    font-size: 13px;
}
.cdt-settings-btn:hover[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

.cdt-settings-menu[b-rtd5f53kbp] {
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 12px 28px rgba(10, 20, 54, 0.18);
    min-width: 230px;
    z-index: 1000;
    padding: 8px;
    animation: rec-up-b-rtd5f53kbp 0.15s ease;
}
.cdt-settings-menu-title[b-rtd5f53kbp] {
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
}
.cdt-settings-item[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px;
    font-size: 12px;
    color: #374151;
    gap: 24px;
    border-radius: 6px;
}

/* Action rows host the embedded Import component — make its inner trigger
   button span full width and look identical to Category Manager's cmz-action-btn. */
.cdt-settings-item-action[b-rtd5f53kbp] {
    padding: 3px 4px;
    gap: 0;
}
.cdt-settings-item-action[b-rtd5f53kbp]  > * { width: 100%; }
.cdt-settings-item-action[b-rtd5f53kbp]  .fi-wrapper,
.cdt-settings-item-action[b-rtd5f53kbp]  .di-wrapper {
    width: 100%;
    display: block;
}
.cdt-settings-item-action[b-rtd5f53kbp]  .fi-trigger-btn,
.cdt-settings-item-action[b-rtd5f53kbp]  .di-trigger-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: left;
    box-sizing: border-box;
    justify-content: flex-start;
}
.cdt-settings-item-action[b-rtd5f53kbp]  .fi-trigger-btn:hover,
.cdt-settings-item-action[b-rtd5f53kbp]  .di-trigger-btn:hover {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

/* ── Inline export sub-list (mirrors Category Manager's cmz-action-* set) ── */
.cdt-action-btn[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: left;
    box-sizing: border-box;
}
.cdt-action-btn:hover[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.cdt-action-btn-split[b-rtd5f53kbp] {
    justify-content: space-between;
}
.cdt-action-btn-label[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.cdt-action-chevron[b-rtd5f53kbp] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}
.cdt-settings-item-sub[b-rtd5f53kbp] {
    padding-left: 16px;
}
.cdt-action-btn-sub[b-rtd5f53kbp] {
    height: 28px;
    background: #fbfcfe;
    border-color: #e5e7eb;
    font-weight: 500;
    color: #4b5563;
}
.cdt-action-btn-sub:hover[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.cdt-action-btn-sub i[b-rtd5f53kbp] {
    color: #8B0000;
    margin-right: 2px;
}

/* Hidden export host — keeps ExportDatasComponent mounted (so its JS interop, audit,
   and progress bar still work) while the visible UI lives in the settings menu. */
.cdt-export-host[b-rtd5f53kbp] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    pointer-events: none;
}
/* Re-show the in-flight progress bar at the bottom-right of the viewport so users
   see export progress even though the trigger button is hidden. */
.cdt-export-host[b-rtd5f53kbp]  .export-progress {
    position: fixed;
    right: 16px;
    bottom: 16px;
    width: 280px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(10,20,54,0.18);
    padding: 10px 12px;
    pointer-events: auto;
    z-index: 1500;
}
.cdt-toggle input[b-rtd5f53kbp] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.cdt-toggle-label[b-rtd5f53kbp] {
    font-size: 12px;
    color: #374151;
    user-select: none;
    flex: 1;
}
.cdt-toggle[b-rtd5f53kbp] {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    flex-shrink: 0;
}
.cdt-toggle-track[b-rtd5f53kbp] {
    width: 34px;
    height: 18px;
    border-radius: 9px;
    background: #d1d5db;
    transition: background 0.2s ease;
    position: relative;
    display: block;
}
.cdt-toggle-thumb[b-rtd5f53kbp] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    transition: transform 0.2s ease;
    display: block;
}
.cdt-settings-section-header[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px 3px;
    cursor: pointer;
    user-select: none;
    border-radius: 6px;
}
.cdt-settings-section-header:hover[b-rtd5f53kbp] { background: #f5f6fa; }
.cdt-section-chevron[b-rtd5f53kbp] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}
.cdt-toggle input:checked + .cdt-toggle-track[b-rtd5f53kbp] {
    background: #8B0000;
}
.cdt-toggle input:checked + .cdt-toggle-track .cdt-toggle-thumb[b-rtd5f53kbp] {
    transform: translateX(16px);
}
.cdt-settings-item:hover[b-rtd5f53kbp] { background: transparent; }
.cdt-settings-checkbox[b-rtd5f53kbp] { accent-color: #8B0000; width: 14px; height: 14px; cursor: pointer; }
.cdt-settings-divider[b-rtd5f53kbp] { height: 1px; background: #f1f5f9; margin: 6px 4px; }

/* ── Auto-refresh dropdown ── */
.dg-refresh-wrapper[b-rtd5f53kbp] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0;
}

.dg-refresh-interval-btn[b-rtd5f53kbp] {
    height: 32px;
    padding: 0 9px;
    border: 1.5px solid #e8eaef;
    border-left: none;
    border-radius: 0 8px 8px 0;
    background: #f5f6fa;
    color: #8892a4;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.18s;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.dg-refresh-interval-btn i[b-rtd5f53kbp] { font-size: 9px; }

.dg-refresh-interval-btn:hover[b-rtd5f53kbp] {
    border-color: #0f1f4b;
    color: #0f1f4b;
    background: white;
}

.dg-refresh-interval-btn.active[b-rtd5f53kbp] {
    background: #e8edf8;
    color: #0f1f4b;
    border-color: #0f1f4b;
}

.dg-refresh-wrapper .rec-refresh-btn[b-rtd5f53kbp] {
    border-radius: 8px 0 0 8px !important;
    border-right: none;
}

.dg-refresh-menu[b-rtd5f53kbp] {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    background: white;
    border: 1px solid #e2e5ee;
    border-radius: 10px;
    box-shadow: 0 8px 28px rgba(15,31,75,.12);
    z-index: 600;
    min-width: 110px;
    overflow: hidden;
    animation: dg-slide-down 0.15s ease;
}

.dg-refresh-option[b-rtd5f53kbp] {
    width: 100%;
    padding: 8px 14px;
    background: none;
    border: none;
    color: #374151;
    font-size: 12.5px;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background 0.12s;
}

.dg-refresh-option:hover[b-rtd5f53kbp] { background: #f5f6fa; }
.dg-refresh-option.selected[b-rtd5f53kbp] { color: #0f1f4b; font-weight: 700; }
.dg-refresh-option.selected i[b-rtd5f53kbp] { color: #6d0000; font-size: 10px; }

@keyframes rec-spin-b-rtd5f53kbp {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.rec-refresh-spinning[b-rtd5f53kbp] {
    animation: rec-spin-b-rtd5f53kbp 1.5s linear infinite;
    transform-origin: center;
}

.dg-refresh-overlay[b-rtd5f53kbp] {
    position: fixed;
    inset: 0;
    z-index: 599;
    background: transparent;
    cursor: default;
}

.cdt-data-settings-overlay[b-rtd5f53kbp] {
    position: fixed;
    inset: 0;
    z-index: 999;
    background: transparent;
    cursor: default;
}

.dt-vmenu-wrapper[b-rtd5f53kbp] {
    position: relative;
    display: inline-flex;
    flex-shrink: 0;
}

.dt-vmenu-btn[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 32px;
    padding: 0 8px;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    font-size: 12px;
}
.dt-vmenu-btn:hover[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.dt-vmenu-btn.active[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.dt-vmenu-btn i[b-rtd5f53kbp] { font-size: 12px; }
.dt-vmenu-chev[b-rtd5f53kbp] { font-size: 9px !important; color: #9ca3af; }
.dt-vmenu-btn.active .dt-vmenu-chev[b-rtd5f53kbp],
.dt-vmenu-btn:hover .dt-vmenu-chev[b-rtd5f53kbp] { color: #8B0000; }

.dt-vmenu-overlay[b-rtd5f53kbp] {
    position: fixed;
    inset: 0;
    z-index: 999;
    background: transparent;
    cursor: default;
}

.dt-vmenu-menu[b-rtd5f53kbp] {
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    min-width: 170px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 12px 28px rgba(10, 20, 54, 0.18);
    z-index: 1000;
    padding: 6px;
    animation: rec-up-b-rtd5f53kbp 0.15s ease;
}

.dt-vmenu-header[b-rtd5f53kbp] {
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
    padding: 4px 10px 6px;
}

.dt-vmenu-item[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 7px 10px;
    background: transparent;
    border: none;
    color: #374151;
    font-size: 12.5px;
    text-align: left;
    cursor: pointer;
    border-radius: 6px;
    transition: background 0.12s ease, color 0.12s ease;
}
.dt-vmenu-item:hover[b-rtd5f53kbp] { background: #f5f6fa; color: #111827; }
.dt-vmenu-item.selected[b-rtd5f53kbp] { color: #8B0000; font-weight: 600; }
.dt-vmenu-item-icon[b-rtd5f53kbp] {
    font-size: 12px;
    width: 14px;
    text-align: center;
    color: #6b7280;
    flex-shrink: 0;
}
.dt-vmenu-item.selected .dt-vmenu-item-icon[b-rtd5f53kbp] { color: #8B0000; }
.dt-vmenu-item-label[b-rtd5f53kbp] { flex: 1; }
.dt-vmenu-item-check[b-rtd5f53kbp] {
    font-size: 10px;
    color: #8B0000;
    flex-shrink: 0;
}

/* ── Tree-mode toolbar: Expand-all / Collapse-all toggle button ──────── */
.dt-tree-bulk-btn[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    padding: 0 12px;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.dt-tree-bulk-btn:hover[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.dt-tree-bulk-btn i[b-rtd5f53kbp] { font-size: 11px; }

/* Standalone JSON pretty/minified toggle (lives outside the JSON/CSV group) */
.dt-fmt-btn-standalone[b-rtd5f53kbp] {
    border: 1px solid #d1d5db;
    border-radius: 6px;
    height: 32px;
    padding: 0 10px;
}

/* Settings menu — small hint text next to toggle labels */
.cdt-toggle-hint[b-rtd5f53kbp] {
    color: #9ca3af;
    font-weight: 400;
    font-size: 10.5px;
    margin-left: 4px;
}

.dt-text-action[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    padding: 0 12px;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
    white-space: nowrap;
    line-height: 1;
}
.dt-text-action i[b-rtd5f53kbp] {
    font-size: 13px;
    line-height: 1;
}
.dt-text-action:hover:not(:disabled)[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.dt-text-action:active:not(:disabled)[b-rtd5f53kbp] { transform: translateY(1px); }
.dt-text-action:disabled[b-rtd5f53kbp] {
    opacity: 0.5;
    cursor: not-allowed;
}

.dt-text-action-primary[b-rtd5f53kbp] {
    background: #8B0000;
    border-color: #8B0000;
    color: white;
}
.dt-text-action-primary:hover:not(:disabled)[b-rtd5f53kbp] {
    background: #6d0000;
    border-color: #6d0000;
    color: white;
    box-shadow: 0 3px 8px rgba(139, 0, 0, 0.25);
}
.dt-text-action-primary:disabled[b-rtd5f53kbp] {
    background: #c9a3a3;
    border-color: #c9a3a3;
    color: white;
}

.dt-fmt-group[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: stretch;
    height: 30px;
    border-radius: 5px;
    overflow: hidden;
    background: #f3f4f6;
    border: 1px solid #d1d5db;
}
.dt-fmt-btn[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 10px;
    background: transparent;
    border: none;
    color: #4b5563;
    font-size: 11.5px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s ease;
}
.dt-fmt-btn + .dt-fmt-btn[b-rtd5f53kbp] { border-left: 1px solid #d1d5db; }
.dt-fmt-btn:hover[b-rtd5f53kbp] { background: #e5e7eb; color: #111827; }
.dt-fmt-btn.on[b-rtd5f53kbp] {
    background: #e6f1fb;
    color: #185fa5;
}
.dt-fmt-btn i[b-rtd5f53kbp] { font-size: 11px; }

/* Empty / loading / error placeholders for the alt body region. The
   dt-alt-empty-on-dark variant flips colors for the dark text view. */
.dt-alt-empty[b-rtd5f53kbp] {
    padding: 28px;
    text-align: center;
    color: #6b7280;
    font-size: 12px;
}
.dt-alt-error[b-rtd5f53kbp] { color: #a32d2d; }
.dt-alt-empty-on-dark[b-rtd5f53kbp] { color: #cbd5e1; background: transparent; }

/* ══════════════════════════════════════════════
   TREE VIEW
══════════════════════════════════════════════ */
.dt-tree-wrap[b-rtd5f53kbp] {
    /* Fills the dg-grid-body region in DatatableGrid */
    height: 100%;
    overflow-y: auto;
    padding: 10px 12px;
    background: #f8f9fc;
}

.dt-tree-record[b-rtd5f53kbp] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin-bottom: 8px;
    overflow: hidden;
    transition: box-shadow 0.18s ease, border-color 0.18s ease;
}
.dt-tree-record:hover[b-rtd5f53kbp] { box-shadow: 0 2px 8px rgba(10,20,54,0.06); }
.dt-tree-record.is-draft[b-rtd5f53kbp] { border-left: 3px solid #f59e0b; }
.dt-tree-record.is-deleted[b-rtd5f53kbp] { opacity: 0.6; border-left: 3px solid #a32d2d; }

.dt-tree-header[b-rtd5f53kbp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: #f8f9fc;
    border-bottom: 1px solid #e5e7eb;
    cursor: pointer;
    user-select: none;
    transition: background 0.12s ease;
}
.dt-tree-header:hover[b-rtd5f53kbp] { background: #eef2f9; }

.dt-tree-chev[b-rtd5f53kbp] {
    width: 14px;
    text-align: center;
    color: #6b7280;
    font-size: 11px;
    flex-shrink: 0;
}
.dt-tree-rec-id[b-rtd5f53kbp] {
    font-size: 12px;
    font-weight: 600;
    color: #1e2433;
    flex-shrink: 0;
}
.dt-tree-rec-tag[b-rtd5f53kbp] {
    font-size: 9.5px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    flex-shrink: 0;
}
.dt-tree-rec-tag-draft[b-rtd5f53kbp] { background: #fef3c7; color: #92400e; border: 1px solid #fcd34d; }
.dt-tree-rec-tag-deleted[b-rtd5f53kbp] { background: #fee2e2; color: #991b1b; border: 1px solid #fca5a5; }

.dt-tree-actions[b-rtd5f53kbp] {
    display: inline-flex;
    gap: 4px;
    margin-left: auto;
    flex-shrink: 0;
}
.dt-tree-act[b-rtd5f53kbp] {
    width: 26px;
    height: 26px;
    border-radius: 5px;
    border: 1px solid #e5e7eb;
    background: white;
    color: #4b5563;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
}
.dt-tree-act:hover[b-rtd5f53kbp] {
    background: #f9fafb;
    border-color: #185fa5;
    color: #185fa5;
}
.dt-tree-act-danger:hover[b-rtd5f53kbp] {
    border-color: #a32d2d;
    color: #a32d2d;
}
.dt-tree-act i[b-rtd5f53kbp] { font-size: 11px; }

.dt-tree-body[b-rtd5f53kbp] {
    padding: 6px 12px 8px;
}
.dt-tree-empty[b-rtd5f53kbp] {
    padding: 8px 0;
    font-size: 11px;
    color: #9ca3af;
    font-style: italic;
}
.dt-tree-field[b-rtd5f53kbp] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 4px 0;
    border-bottom: 1px solid #f3f4f6;
    font-size: 11.5px;
}
.dt-tree-field:last-child[b-rtd5f53kbp] { border-bottom: none; }
.dt-tree-key[b-rtd5f53kbp] {
    color: #6b7280;
    font-size: 10.5px;
    width: 220px;
    flex-shrink: 0;
    word-break: break-word;
}
.dt-tree-val[b-rtd5f53kbp] {
    color: #1e2433;
    flex: 1;
    word-break: break-word;
    white-space: pre-wrap;
}
.dt-tree-val-null[b-rtd5f53kbp] {
    color: #9ca3af;
    font-style: italic;
}

/* ══════════════════════════════════════════════
   TEXT VIEW (JSON / CSV)
══════════════════════════════════════════════ */
.dt-text-wrap[b-rtd5f53kbp] {
    /* Fills the dg-grid-body region in DatatableGrid */
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #0f172a;
    overflow: hidden;
}
.dt-text-code[b-rtd5f53kbp] {
    flex: 1;
    min-height: 0;
    overflow: auto;
    margin: 0;
    padding: 14px 18px;
    background: #0f172a;
    color: #e2e8f0;
    font-family: 'Courier New', 'Consolas', 'Monaco', monospace;
    font-size: 12px;
    line-height: 1.6;
    white-space: pre;
    word-break: normal;
    tab-size: 2;
}

.dt-text-frame[b-rtd5f53kbp] {
    flex: 1;
    min-height: 0;
    overflow: auto;
    background: #0f172a;
}
.dt-text-row[b-rtd5f53kbp] {
    display: flex;
    align-items: flex-start;
    min-width: max-content;
}
.dt-text-linenos[b-rtd5f53kbp] {
    flex: 0 0 auto;
    margin: 0;
    padding: 14px 12px 14px 18px;
    background: #0f172a;
    color: #475569;
    font-family: 'Courier New', 'Consolas', 'Monaco', monospace;
    font-size: 12px;
    line-height: 1.6;
    text-align: right;
    border-right: 1px solid #1e293b;
    user-select: none;
    -webkit-user-select: none;
    font-variant-numeric: tabular-nums;
    white-space: pre;
    overflow: visible;
    position: sticky;
    left: 0;
    z-index: 1;
}
.dt-text-frame .dt-text-code[b-rtd5f53kbp] {
    flex: 1 1 auto;
    margin: 0;
    border: none;
    overflow: visible; /* frame owns both axes of scroll */
}

/* Full-width (no line numbers) variant fills the frame and scrolls on its own. */
.dt-text-code-full[b-rtd5f53kbp] {
    flex: 1;
    min-height: 0;
}

.dt-text-pager[b-rtd5f53kbp] {
    padding: 7px 14px;
    background: #1e293b;
    color: #cbd5e1;
    border-top: 1px solid #334155;
    font-size: 11.5px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}
.dt-text-pager-stat[b-rtd5f53kbp] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #cbd5e1;
}
.dt-text-pager-stat i[b-rtd5f53kbp] {
    font-size: 11px;
    color: #64748b;
}
.dt-text-pager-stat strong[b-rtd5f53kbp] {
    color: #f1f5f9;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}
.dt-text-pager-sep[b-rtd5f53kbp] { color: #475569; }
.dt-text-pager-mode[b-rtd5f53kbp] {
    font-size: 10.5px;
    padding: 1px 6px;
    border-radius: 4px;
    background: rgba(148, 163, 184, 0.12);
    color: #cbd5e1;
    text-transform: lowercase;
    margin-left: 4px;
    letter-spacing: 0.2px;
}

/* ═══ RESPONSIVE ═══ */
@media (max-width: 768px) {
    .rec-dialog[b-rtd5f53kbp],
    .rec-dialog-wide[b-rtd5f53kbp] { width: 96%; }
    .rec-dialog-footer[b-rtd5f53kbp] { flex-direction: column; }
    .rec-dialog-footer .dt-btn[b-rtd5f53kbp] { width: 100%; justify-content: center; }
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/Components/WorkflowTableFieldEditor.razor.rz.scp.css */
/* ── Wrapper ── */
.fields-wrapper[b-irff0j4e32] {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* ═══ FIELD NAME CELL ═══ */
.fld-name-cell[b-irff0j4e32] {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Colored dot indicating type */
.fld-type-dot[b-irff0j4e32] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.fld-dot-string[b-irff0j4e32]   { background: #3b82f6; }
.fld-dot-integer[b-irff0j4e32]  { background: #f59e0b; }
.fld-dot-boolean[b-irff0j4e32]  { background: #8b5cf6; }
.fld-dot-datetime[b-irff0j4e32] { background: #ec4899; }
.fld-dot-money[b-irff0j4e32]    { background: #10b981; }
.fld-dot-guid[b-irff0j4e32]     { background: #6366f1; }
.fld-dot-date[b-irff0j4e32]     { background: #0ea5e9; }
.fld-dot-time[b-irff0j4e32]     { background: #a855f7; }

/* ═══ TYPE BADGES ═══ */
.fld-type-badge[b-irff0j4e32] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.fld-type-string[b-irff0j4e32]   { background: #dbeafe; color: #1e40af; }
.fld-type-integer[b-irff0j4e32]  { background: #fef3c7; color: #92400e; }
.fld-type-boolean[b-irff0j4e32]  { background: #ede9fe; color: #5b21b6; }
.fld-type-datetime[b-irff0j4e32] { background: #fce7f3; color: #9f1239; }
.fld-type-money[b-irff0j4e32]    { background: #d1fae5; color: #065f46; }
.fld-type-guid[b-irff0j4e32]     { background: #e0e7ff; color: #3730a3; }
.fld-type-date[b-irff0j4e32]     { background: #e0f2fe; color: #075985; }
.fld-type-time[b-irff0j4e32]     { background: #f3e8ff; color: #6b21a8; }


.fld-type-badge-clickable[b-irff0j4e32] {
    border: none;
    cursor: pointer;
    font-family: inherit;
    transition: filter 0.15s ease, box-shadow 0.15s ease;
}
.fld-type-badge-clickable:hover[b-irff0j4e32] {
    filter: brightness(0.95);
    box-shadow: 0 0 0 1px rgba(15, 31, 75, 0.18);
}
.fld-type-badge-clickable:focus-visible[b-irff0j4e32] {
    outline: 2px solid rgba(139, 0, 0, 0.55);
    outline-offset: 2px;
}

.fld-inline-type-editor[b-irff0j4e32] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.fld-inline-type-select[b-irff0j4e32] {
    padding: 2px 22px 2px 8px;
    border: 1px solid #8B0000;
    border-radius: 10px;
    background: white;
    color: #1f2937;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    cursor: pointer;
    box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.12);
    outline: none;
    /* match badge intrinsic width-ish so the cell doesn't jump */
    min-width: 96px;
}
.fld-inline-type-select:disabled[b-irff0j4e32] {
    opacity: 0.6;
    cursor: progress;
}
.fld-inline-type-spinner[b-irff0j4e32] {
    color: #8B0000;
    font-size: 11px;
}

/* ═══ PK BADGE ═══ */
.fld-pk-badge[b-irff0j4e32] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: #fff5f5;
    color: #8B0000;
    border: 1px solid #fca5a5;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
}

.fld-pk-badge i[b-irff0j4e32] { font-size: 10px; }

/* ═══ CALCULATED CELL ═══ */
.fld-calc-cell[b-irff0j4e32] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fld-calc-badge[b-irff0j4e32] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #86efac;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
}

.fld-calc-badge i[b-irff0j4e32] { font-size: 10px; }

.fld-calc-code[b-irff0j4e32] {
    display: block;
    background: #f8f9fa;
    border: 1px dashed #d1d5db;
    border-radius: 4px;
    padding: 3px 6px;
    font-size: 11px;
    font-family: 'Courier New', monospace;
    color: #374151;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.15s;
}

.fld-calc-code:hover[b-irff0j4e32] {
    background: #f0fdf4;
    border-color: #86efac;
    color: #166534;
}

/* ═══ DASH (empty state in cell) ═══ */
.fld-dash[b-irff0j4e32] {
    color: #d1d5db;
    font-size: 14px;
    font-weight: 300;
}

/* ═══ REQUIRED CHECKMARK ═══ */
.fld-required-check[b-irff0j4e32] {
    color: #3b6d11;
    font-size: 13px;
}

/* ═══ DEFAULT VALUE CODE ═══ */
.fld-default-value[b-irff0j4e32] {
    display: inline-block;
    background: #f8f9fa;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    padding: 2px 7px;
    font-size: 11px;
    font-family: 'Courier New', monospace;
    color: #374151;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

/* ═══ SETTINGS MENU ═══ */
.cdt-settings-wrapper[b-irff0j4e32] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.cdt-settings-btn[b-irff0j4e32] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    flex-shrink: 0;
}

.cdt-settings-btn:hover[b-irff0j4e32] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

.cdt-settings-btn i[b-irff0j4e32] { font-size: 13px; }

.cdt-settings-menu[b-irff0j4e32] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 12px 28px rgba(10, 20, 54, 0.18);
    padding: 8px;
    min-width: 230px;
    z-index: 1000;
    animation: fld-fade-b-irff0j4e32 0.15s ease;
}

.cdt-settings-menu-title[b-irff0j4e32] {
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
}

.cdt-settings-item[b-irff0j4e32] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 14px;
    font-size: 12px;
    color: #374151;
    cursor: pointer;
    transition: background 0.15s ease;
}

.cdt-settings-item:hover[b-irff0j4e32] { background: #f9fafb; }

.cdt-settings-divider[b-irff0j4e32] {
    height: 1px;
    background: #f1f5f9;
    margin: 6px 4px;
}

.cdt-settings-checkbox[b-irff0j4e32] {
    width: 14px;
    height: 14px;
    cursor: pointer;
    accent-color: #8B0000;
    flex-shrink: 0;
}

/* ═══ DIALOG OVERLAY ═══ */
.fld-overlay[b-irff0j4e32] {
    position: fixed;
    inset: 0;
    background: rgba(10, 20, 54, 0.5);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    animation: fld-fade-b-irff0j4e32 0.2s ease;
}

@keyframes fld-fade-b-irff0j4e32 {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ═══ DIALOG ═══ */
.fld-dialog[b-irff0j4e32] {
    background: white;
    border-radius: 8px;
    width: 90%;
    max-width: 460px;
    max-height: 88vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 48px rgba(10, 20, 54, 0.22);
    animation: fld-up-b-irff0j4e32 0.25s ease;
}

@keyframes fld-up-b-irff0j4e32 {
    from { transform: translateY(20px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* Dialog header */
.fld-dialog-header[b-irff0j4e32] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    height: 48px;
    background: #0a1436;
    border-bottom: 2px solid #8B0000;
    flex-shrink: 0;
}

.fld-dialog-title[b-irff0j4e32] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    font-size: 13px;
    font-weight: 600;
}

.fld-dialog-title i[b-irff0j4e32] {
    color: #8fa3c0;
    font-size: 13px;
}

.fld-close-btn[b-irff0j4e32] {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 5px;
    cursor: pointer;
    color: #8fa3c0;
    font-size: 13px;
    transition: all 0.18s ease;
}

.fld-close-btn:hover[b-irff0j4e32] {
    background: rgba(255,255,255,0.18);
    color: white;
    transform: rotate(90deg);
}

/* Dialog body */
.fld-dialog-body[b-irff0j4e32] {
    padding: 20px 16px;
    overflow-y: auto;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* Form elements */
.fld-form-group[b-irff0j4e32] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.fld-label[b-irff0j4e32] {
    font-size: 11px;
    font-weight: 700;
    color: #374151;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.fld-required[b-irff0j4e32] {
    color: #8B0000;
    margin-left: 2px;
}

.fld-input[b-irff0j4e32] {
    width: 100%;
    padding: 9px 12px;
    border: 1px solid #d1d5db;
    border-radius: 5px;
    font-size: 12px;
    color: #1f2937;
    background: white;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.fld-input:hover[b-irff0j4e32] { border-color: #8B0000; }
.fld-input:focus[b-irff0j4e32] {
    outline: none;
    border-color: #8B0000;
    box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1);
}

.fld-textarea[b-irff0j4e32] {
    resize: vertical;
    min-height: 72px;
    font-family: 'Courier New', monospace;
    font-size: 12px;
}

.fld-select[b-irff0j4e32] {
    width: 100%;
    padding: 9px 32px 9px 12px;
    border: 1px solid #d1d5db;
    border-radius: 5px;
    font-size: 12px;
    color: #1f2937;
    background: white;
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238B0000' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

.fld-select:hover[b-irff0j4e32] { border-color: #8B0000; }
.fld-select:focus[b-irff0j4e32] {
    outline: none;
    border-color: #8B0000;
    box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.1);
}

/* Checkbox row */
.fld-checkbox-row[b-irff0j4e32] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 5px;
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    color: #374151;
    transition: border-color 0.18s ease, background 0.18s ease;
    user-select: none;
}

.fld-checkbox-row:hover[b-irff0j4e32] {
    border-color: #8B0000;
    background: #fff5f5;
}

.fld-checkbox[b-irff0j4e32] {
    width: 14px;
    height: 14px;
    cursor: pointer;
    accent-color: #8B0000;
    flex-shrink: 0;
}

.fld-checkbox-icon[b-irff0j4e32] {
    font-size: 13px;
    flex-shrink: 0;
}

/* Dialog footer */
.fld-dialog-footer[b-irff0j4e32] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 12px 16px;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
    flex-shrink: 0;
}
.cdt-settings-section-header[b-irff0j4e32] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px 3px;
    cursor: pointer;
    user-select: none;
    border-radius: 6px;
}
.cdt-settings-section-header:hover[b-irff0j4e32] { background: #f5f6fa; }
.cdt-section-chevron[b-irff0j4e32] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}
.cdt-toggle-label[b-irff0j4e32] {
    font-size: 12px;
    color: #374151;
    user-select: none;
    flex: 1;
}
.cdt-toggle[b-irff0j4e32] {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    flex-shrink: 0;
}
.cdt-toggle input[b-irff0j4e32] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.cdt-toggle-track[b-irff0j4e32] {
    width: 34px;
    height: 18px;
    border-radius: 9px;
    background: #d1d5db;
    transition: background 0.2s ease;
    position: relative;
    display: block;
}
.cdt-toggle-thumb[b-irff0j4e32] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    transition: transform 0.2s ease;
    display: block;
}
.cdt-toggle input:checked + .cdt-toggle-track[b-irff0j4e32] { background: #8B0000; }
.cdt-toggle input:checked + .cdt-toggle-track .cdt-toggle-thumb[b-irff0j4e32] { transform: translateX(16px); }
.cdt-settings-item[b-irff0j4e32] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px;
    font-size: 12px;
    color: #374151;
    gap: 24px;
    border-radius: 6px;
}
.cdt-settings-item:hover[b-irff0j4e32] { background: transparent; }

/* Action rows host the embedded Import component — make its inner trigger
   button span full width and look identical to Category Manager's cmz-action-btn. */
.cdt-settings-item-action[b-irff0j4e32] {
    padding: 3px 4px;
    gap: 0;
}
.cdt-settings-item-action[b-irff0j4e32]  > * { width: 100%; }
.cdt-settings-item-action[b-irff0j4e32]  .fi-wrapper {
    width: 100%;
    display: block;
}
.cdt-settings-item-action[b-irff0j4e32]  .fi-trigger-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: left;
    box-sizing: border-box;
    justify-content: flex-start;
}
.cdt-settings-item-action[b-irff0j4e32]  .fi-trigger-btn:hover {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

/* ── Inline export sub-list (mirrors Category Manager's cmz-action-* set) ── */
.cdt-action-btn[b-irff0j4e32] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: left;
    box-sizing: border-box;
}
.cdt-action-btn:hover[b-irff0j4e32] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.cdt-action-btn-split[b-irff0j4e32] {
    justify-content: space-between;
}
.cdt-action-btn-label[b-irff0j4e32] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.cdt-action-chevron[b-irff0j4e32] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}
.cdt-settings-item-sub[b-irff0j4e32] {
    padding-left: 16px;
}
.cdt-action-btn-sub[b-irff0j4e32] {
    height: 28px;
    background: #fbfcfe;
    border-color: #e5e7eb;
    font-weight: 500;
    color: #4b5563;
}
.cdt-action-btn-sub:hover[b-irff0j4e32] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}
.cdt-action-btn-sub i[b-irff0j4e32] {
    color: #8B0000;
    margin-right: 2px;
}

/* Hidden export host — keeps ExportFieldComponent mounted (so its JS interop and
   snackbar still work) while the visible UI lives in the settings menu. */
.cdt-export-host[b-irff0j4e32] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    pointer-events: none;
}

/* ═══ RESPONSIVE ═══ */
@media (max-width: 768px) {
    .fld-dialog[b-irff0j4e32] { width: 96%; }

    .fld-dialog-footer[b-irff0j4e32] {
        flex-direction: column;
    }

    .fld-dialog-footer .dt-btn[b-irff0j4e32] {
        width: 100%;
        justify-content: center;
    }
}

/* ═══ DIALOG FOOTER BUTTONS ═══ */
.dt-btn[b-irff0j4e32] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 34px;
    padding: 0 16px;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    border: none;
    transition: all 0.18s ease;
    white-space: nowrap;
}

.dt-btn i[b-irff0j4e32] { font-size: 11px; }

.dt-btn-primary[b-irff0j4e32] {
    background: #8B0000;
    color: white;
    border: 1px solid #8B0000;
}

.dt-btn-primary:hover[b-irff0j4e32] {
    background: #6d0000;
    border-color: #6d0000;
    box-shadow: 0 3px 8px rgba(139, 0, 0, 0.3);
    transform: translateY(-1px);
}

.dt-btn-primary:active[b-irff0j4e32] { transform: translateY(0); box-shadow: none; }

.dt-btn-ghost[b-irff0j4e32] {
    background: white;
    color: #374151;
    border: 1px solid #d1d5db;
}

.dt-btn-ghost:hover[b-irff0j4e32] {
    background: #f3f4f6;
    border-color: #9ca3af;
    color: #111827;
}

.dt-btn-ghost:active[b-irff0j4e32] { background: #e5e7eb; }

.cdt-field-settings-overlay[b-irff0j4e32] {
    position: fixed;
    inset: 0;
    z-index: 999;
    background: transparent;
    cursor: default;
}

/* ═══ REFRESH BUTTON + AUTO-REFRESH DROPDOWN ═══ */
.rec-refresh-btn[b-irff0j4e32] {
    width: 30px;
    height: 30px;
    border-radius: 5px 0 0 5px;
    border: 1px solid #d1d5db;
    border-right: none;
    background: #f3f4f6;
    color: #6b7280;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}
.rec-refresh-btn:hover:not(:disabled)[b-irff0j4e32] {
    background: #0a1436;
    border-color: #0a1436;
    color: white;
    box-shadow: 0 2px 8px rgba(10, 20, 54, 0.25);
}
.rec-refresh-btn:active:not(:disabled)[b-irff0j4e32] { transform: scale(0.93); }
.rec-refresh-btn:disabled[b-irff0j4e32] { opacity: 0.45; cursor: not-allowed; }
.rec-refresh-icon[b-irff0j4e32] { width: 16px; height: 16px; position: relative; z-index: 1; }
.rec-refresh-btn:disabled .rec-refresh-icon[b-irff0j4e32] { animation: rec-spin-b-irff0j4e32 0.9s linear infinite; }

.dg-refresh-wrapper[b-irff0j4e32] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0;
    margin-right: 6px;
}

.dg-refresh-interval-btn[b-irff0j4e32] {
    height: 30px;
    padding: 0 9px;
    border: 1px solid #d1d5db;
    border-left: none;
    border-radius: 0 5px 5px 0;
    background: #f3f4f6;
    color: #8892a4;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.18s;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
.dg-refresh-interval-btn i[b-irff0j4e32] { font-size: 9px; }
.dg-refresh-interval-btn:hover[b-irff0j4e32] {
    border-color: #0a1436;
    color: #0a1436;
    background: white;
}
.dg-refresh-interval-btn.active[b-irff0j4e32] {
    background: #e8edf8;
    color: #0a1436;
    border-color: #0a1436;
}

.dg-refresh-menu[b-irff0j4e32] {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(10, 20, 54, 0.15);
    z-index: 1000;
    min-width: 110px;
    overflow: hidden;
    animation: fld-fade-b-irff0j4e32 0.15s ease;
}
.dg-refresh-option[b-irff0j4e32] {
    width: 100%;
    padding: 8px 14px;
    background: none;
    border: none;
    color: #374151;
    font-size: 12.5px;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background 0.12s;
}
.dg-refresh-option:hover[b-irff0j4e32] { background: #f9fafb; }
.dg-refresh-option.selected[b-irff0j4e32] { color: #0a1436; font-weight: 700; }
.dg-refresh-option.selected i[b-irff0j4e32] { color: #8B0000; font-size: 10px; }

.dg-refresh-overlay[b-irff0j4e32] {
    position: fixed;
    inset: 0;
    z-index: 999;
    background: transparent;
    cursor: default;
}

@keyframes rec-spin-b-irff0j4e32 {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.rec-refresh-spinning[b-irff0j4e32] {
    animation: rec-spin-b-irff0j4e32 1.5s linear infinite;
    transform-origin: center;
}
/* _content/Evolve.Web/Components/Pages/ManageDatatables/WorkflowTableEditor.razor.rz.scp.css */
/* ── Page Shell ── */
.dt-page[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    height: calc(100% + 32px);
    overflow: hidden;
    background: #eef0f6;
    font-size: 12px;
    margin: -16px;
    font-family: 'Segoe UI', system-ui, sans-serif;
}

/* ══════════════════════════════════════════════
   QUICK VIEW BANNER (when a quick view is active)
══════════════════════════════════════════════ */
.dt-qv-banner[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 12px;
    background: #f0f3fa;
    border: 1px solid #c8d2e8;
    border-radius: 8px;
    margin-bottom: 8px;
    flex-shrink: 0;
}
.dt-qv-banner-left[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #1e2433;
}
.dt-qv-banner-left i[b-8rxcjgta23] { color: #6d0000; font-size: 12px; }
.dt-qv-banner-left strong[b-8rxcjgta23] { font-weight: 700; }
.dt-qv-banner-count[b-8rxcjgta23] {
    color: #8892a4;
    font-size: 11.5px;
    font-weight: 500;
}
.dt-qv-banner-clear[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: white;
    border: 1px solid #c8d2e8;
    color: #5a6070;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 9px;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.dt-qv-banner-clear:hover[b-8rxcjgta23] {
    background: #6d0000;
    color: white;
    border-color: #6d0000;
}
.dt-qv-banner-clear i[b-8rxcjgta23] { font-size: 9px; }

/* ══════════════════════════════════════════════
   QUICK VIEWS SIDEBAR ICON ACCENTS
══════════════════════════════════════════════ */
.dt-qv-pinned-icon[b-8rxcjgta23]  { color: #c97a14 !important; }
.dt-qv-nodata-icon[b-8rxcjgta23]  { color: #c52e2e !important; }
.dt-qv-orphan-icon[b-8rxcjgta23]  { color: #c95a17 !important; }
.dt-qv-count-pinned[b-8rxcjgta23] { background: #fef6e1; color: #8a5a0c; box-shadow: 0 0 0 1px rgba(217, 119, 6, .14); }
.dt-qv-count-nodata[b-8rxcjgta23] { background: #fdeaea; color: #911f1f; box-shadow: 0 0 0 1px rgba(220, 38, 38, .14); }
.dt-qv-count-orphan[b-8rxcjgta23] { background: #fdeedd; color: #8e3812; box-shadow: 0 0 0 1px rgba(234, 88, 12, .14); }

/* ══════════════════════════════════════════════
   ROW PIN BUTTON
══════════════════════════════════════════════ */
[b-8rxcjgta23] .dt-pin-btn {
    color: #d1d5db;
    transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}
[b-8rxcjgta23] tr:hover .dt-pin-btn {
    color: #6b7280;
}
[b-8rxcjgta23] .dt-pin-btn:hover {
    color: #d97706 !important;
    background: #fef3c7;
    border-color: #fcd34d;
}
[b-8rxcjgta23] .dt-pin-btn.pinned {
    color: #d97706 !important;
    background: #fef3c7;
    border-color: #fcd34d;
}
[b-8rxcjgta23] .dt-pin-btn.pinned:hover {
    background: #fed7aa;
    color: #92400e !important;
}


/* ═══ HEADER ═══ */
.dt-header[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(100deg, #0a1436 0%, #0f1f4b 60%, #162560 100%);
    color: white;
    padding: 0 20px;
    height: 58px;
    flex-shrink: 0;
    border-bottom: 2.5px solid #6d0000;
    box-shadow: 0 3px 16px rgba(10,20,60,.28);
    position: relative;
    z-index: 1000;
}

/* Decorative grid dots in header */
.dt-header[b-8rxcjgta23]::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 22px 22px;
    pointer-events: none;
}

/* Crimson glow accent on left */
.dt-header[b-8rxcjgta23]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, transparent, #6d0000 40%, #6d0000 60%, transparent);
}

.dt-header-left[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 14px;
    position: relative;
    z-index: 1;
}

.dt-header-icon[b-8rxcjgta23] {
    width: 38px;
    height: 38px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #7a9cc8;
    font-size: 15px;
    flex-shrink: 0;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 2px 6px rgba(0,0,0,.2);
}

.dt-header-text[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dt-header-title[b-8rxcjgta23] {
    margin: 0;
    font-size: 14.5px;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0.15px;
    line-height: 1.2;
}

.dt-header-sub[b-8rxcjgta23] {
    margin: 0;
    font-size: 11px;
    color: #6a88aa;
    line-height: 1.2;
    font-weight: 400;
}

.dt-header-right[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
    z-index: 1;
}

/* Divider between header buttons */
.dt-header-right[b-8rxcjgta23]::before {
    content: '';
    display: block;
    width: 1px;
    height: 20px;
    background: rgba(255,255,255,.12);
    margin-right: 2px;
}

/* ═══ BUTTONS ═══ */
.dt-btn[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 13px;
    border: none;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.18s;
    white-space: nowrap;
    letter-spacing: 0.01em;
}

.dt-btn i[b-8rxcjgta23] { font-size: 11px; }

/* Outline — header */
.dt-btn-outline[b-8rxcjgta23] {
    background: rgba(255,255,255,.07);
    color: #b8ccdf;
    border: 1px solid rgba(255,255,255,.14);
    backdrop-filter: blur(4px);
}
.dt-btn-outline:hover[b-8rxcjgta23] {
    background: rgba(255,255,255,.14);
    color: #fff;
    border-color: rgba(255,255,255,.26);
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0,0,0,.2);
}

/* Filter */
.dt-btn-filter[b-8rxcjgta23] {
    background: rgba(255,255,255,.07);
    color: #b8ccdf;
    border: 1px solid rgba(255,255,255,.14);
    position: relative;
    backdrop-filter: blur(4px);
}
.dt-btn-filter:hover[b-8rxcjgta23] {
    background: rgba(255,255,255,.14);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0,0,0,.2);
}
.dt-btn-filter.active[b-8rxcjgta23] {
    background: #6d0000;
    color: #fff;
    border-color: #6d0000;
    box-shadow: 0 3px 12px rgba(109,0,0,.45);
}

/* Primary */
.dt-btn-primary[b-8rxcjgta23] {
    background: #6d0000;
    color: #fff;
    box-shadow: 0 2px 8px rgba(109,0,0,.3);
}
.dt-btn-primary:hover[b-8rxcjgta23] {
    background: #580000;
    box-shadow: 0 4px 14px rgba(109,0,0,.45);
    transform: translateY(-1px);
}
.dt-btn-primary:active[b-8rxcjgta23] { transform: translateY(0); }

/* Ghost */
.dt-btn-ghost[b-8rxcjgta23] {
    background: white;
    color: #4b5563;
    border: 1.5px solid #e5e7eb;
}
.dt-btn-ghost:hover[b-8rxcjgta23] {
    background: #f5f6fa;
    border-color: #9ca3af;
}

/* Filter active badge */
.dt-filter-badge[b-8rxcjgta23] {
    position: absolute;
    top: -7px;
    right: -7px;
    background: white;
    color: #6d0000;
    min-width: 17px;
    height: 17px;
    padding: 0 3px;
    border-radius: 9px;
    font-size: 9.5px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #6d0000;
    line-height: 1;
    box-shadow: 0 1px 4px rgba(0,0,0,.2);
}

.dt-btn-filter:not(.active) .dt-filter-badge[b-8rxcjgta23] {
    background: #6d0000;
    color: white;
    border-color: #0a1436;
}

/* ══════════════════════════════════════════════
   OVERLAY
══════════════════════════════════════════════ */
.dt-overlay[b-8rxcjgta23] {
    position: fixed;
    inset: 0;
    background: rgba(6,13,38,.52);
    /*backdrop-filter: blur(3px);*/
    /* z-index must beat .dt-header (1000) so the page header is also
       dimmed/covered when the Filters drawer is open. The drawer itself
       sits one level higher (.dt-drawer = 1502). */
    z-index: 1501;
    animation: dt-fade-in-b-8rxcjgta23 0.2s ease;
}

.dt-overlay[b-8rxcjgta23]::before {
    content: '';
    position: fixed;
    inset: 0;
    backdrop-filter: blur(3px);
    z-index: -1;
    pointer-events: none;
}

@keyframes dt-fade-in-b-8rxcjgta23 {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* ═══ FILTER DRAWER ═══ */
.dt-drawer[b-8rxcjgta23] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 360px;
    background: white;
    box-shadow: -8px 0 40px rgba(10,20,60,.18);
    transform: translateX(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    /* z-index must beat .dt-header (1000) so when the drawer is open
       it cleanly covers the page header rather than letting the page
       header peek through (which causes a jarring "header sandwich"
       on narrow viewports where the drawer header and page header
       sit at different y-coordinates). */
    z-index: 1502;
    display: flex;
    flex-direction: column;
    border-left: 1px solid #e0e3ec;
}
.dt-drawer.open[b-8rxcjgta23] { transform: translateX(0); }

.dt-drawer-header[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    height: 58px;
    background: linear-gradient(100deg, #0a1436, #0f1f4b);
    border-bottom: 2.5px solid #6d0000;
    flex-shrink: 0;
}

.dt-drawer-title[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: 0.1px;
}
.dt-drawer-title i[b-8rxcjgta23] { color: #7a9cc8; font-size: 13px; }

.dt-drawer-badge[b-8rxcjgta23] {
    background: #6d0000;
    color: white;
    padding: 2px 9px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.2px;
    box-shadow: 0 2px 6px rgba(109,0,0,.35);
}

.dt-drawer-close[b-8rxcjgta23] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    cursor: pointer;
    color: #6a88aa;
    font-size: 12px;
    transition: all 0.2s;
}
.dt-drawer-close:hover[b-8rxcjgta23] {
    background: rgba(255,255,255,.16);
    color: white;
    transform: rotate(90deg);
}

/* ── Drawer body ── */
.dt-drawer-body[b-8rxcjgta23] {
    flex: 1;
    overflow-y: auto;
    padding: 20px 18px 12px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* Introductory label at the top of the body */
.dt-drawer-section-title[b-8rxcjgta23] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #a0a8bb;
    padding: 0 2px;
    margin-bottom: -4px;
}

/* ── Filter card: one per filter ── */
.dt-filter-card[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px 16px;
    background: #f8f9fc;
    border: 1.5px solid #e8ebf2;
    border-left: 3px solid #e8ebf2;
    border-radius: 9px;
    transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
}
.dt-filter-card:has(.dt-select--active)[b-8rxcjgta23] {
    border-color: #c8d2e8;
    border-left-color: #6d0000;
    background: #fff;
    box-shadow: 0 2px 10px rgba(15,31,75,.07);
}

.dt-filter-card-label[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 10.5px;
    font-weight: 700;
    color: #5a6070;
    text-transform: uppercase;
    letter-spacing: 0.7px;
}
.dt-filter-card-label i[b-8rxcjgta23] {
    color: #6d0000;
    font-size: 11px;
    width: 16px;
    text-align: center;
    flex-shrink: 0;
}

/* ── Select dropdown ── */
.dt-select[b-8rxcjgta23] {
    width: 100%;
    padding: 9px 32px 9px 12px;
    border: 1.5px solid #dde1ec;
    border-radius: 7px;
    font-size: 12.5px;
    background: white;
    color: #1e2433;
    cursor: pointer;
    transition: all 0.18s;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236d0000' stroke-width='2.2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    font-family: inherit;
    line-height: 1.4;
}
.dt-select:hover[b-8rxcjgta23] { border-color: #9ca3b8; background-color: #fafbfd; }
.dt-select:focus[b-8rxcjgta23] {
    outline: none;
    border-color: #0f1f4b;
    box-shadow: 0 0 0 3px rgba(15,31,75,.08);
}

/* Active state: filter has a real value selected */
.dt-select--active[b-8rxcjgta23] {
    border-color: #9badd0;
    background-color: #f0f3fa;
    color: #0f1f4b;
    font-weight: 600;
}

/* ── Empty state ── */
.dt-filter-empty[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 13px;
    background: #f5f6fa;
    border: 1.5px dashed #dde1ea;
    border-radius: 7px;
    color: #9ca3af;
    font-size: 12px;
    font-style: italic;
}
.dt-filter-empty i[b-8rxcjgta23] { font-size: 13px; color: #c4c9d8; flex-shrink: 0; }

/* ── Auto-apply hint row ── */
.dt-filter-hint[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    color: #8b93a8;
    padding: 8px 12px;
    background: #f0f4ff;
    border: 1px solid #dce4f5;
    border-radius: 7px;
    margin-top: 2px;
}
.dt-filter-hint i[b-8rxcjgta23] { font-size: 10px; color: #6d0000; flex-shrink: 0; }

/* ── Footer ── */
.dt-drawer-footer[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 14px 18px 16px;
    border-top: 1px solid #edf0f5;
    background: #f8f9fc;
    flex-shrink: 0;
}

/* Done button: full-width primary */
.dt-btn-done[b-8rxcjgta23] {
    width: 100%;
    justify-content: center;
}

/* Reset link: text-style, only visible when filters are active */
.dt-btn-link[b-8rxcjgta23] {
    background: none;
    border: none;
    color: #6b7280;
    font-size: 11.5px;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 4px 0;
    transition: color 0.18s;
    text-decoration: none;
    font-family: inherit;
}
.dt-btn-link:hover[b-8rxcjgta23] { color: #6d0000; }
.dt-btn-link i[b-8rxcjgta23] { font-size: 10px; }

/* Disabled reset link */
.dt-btn-link:disabled[b-8rxcjgta23] {
    opacity: 0.35;
    cursor: not-allowed;
    pointer-events: none;
}

/* ══════════════════════════════════════════════
   BODY (sidebar + content split)
══════════════════════════════════════════════ */
.dt-body[b-8rxcjgta23] {
    flex: 1;
    display: flex;
    flex-direction: row;
    min-height: 0;
    overflow: hidden;
    position: relative;
}

/* ── Sidebar collapse header (lives at the top of the sidebar) ── */
.dt-sidebar-header[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 10px 12px;
    margin: -4px -2px 8px;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(15, 31, 75, .08);
    cursor: pointer;
    color: #1e2433;
    font: inherit;
    text-align: left;
    transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
    border-radius: 10px;
    flex-shrink: 0;
    backdrop-filter: blur(2px);
}
.dt-sidebar-header:hover[b-8rxcjgta23] {
    background: white;
    border-color: rgba(15, 31, 75, .14);
    box-shadow: 0 2px 8px rgba(15, 31, 75, .06);
}
.dt-sidebar-header-label[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #4a5061;
    min-width: 0;
}
.dt-sidebar-header-label i[b-8rxcjgta23] {
    color: #8B0000;
    font-size: 12px;
    width: 14px;
    text-align: center;
}
.dt-sidebar-header-chevron[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #f3f5fa;
    border: 1px solid rgba(15, 31, 75, .10);
    color: #6b7280;
    font-size: 10px;
    transition: all 0.2s ease;
    flex-shrink: 0;
}
.dt-sidebar-header:hover .dt-sidebar-header-chevron[b-8rxcjgta23] {
    background: #0a1436;
    color: white;
    border-color: #0a1436;
    transform: scale(1.05);
}
.dt-sidebar.collapsed .dt-sidebar-header[b-8rxcjgta23] {
    justify-content: center;
    padding: 10px 0;
    margin: -8px 0 6px;
}
.dt-sidebar.collapsed .dt-sidebar-header-label[b-8rxcjgta23] {
    display: none;
}

/* ── LEFT SIDEBAR ── */
.dt-sidebar[b-8rxcjgta23] {
    flex: 0 0 var(--dt-sidebar-width, 232px);
    background: linear-gradient(180deg, #fbfbfd 0%, #f5f6fa 100%);
    border-right: 1px solid #e8eaf0;
    padding: 12px 10px 14px;
    overflow-y: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    gap: 2px;
    font-feature-settings: "cv11", "ss01";
    position: relative; /* anchors .dt-sidebar-resize-handle */
}

.dt-sidebar.dt-sidebar-pending[b-8rxcjgta23] {
    visibility: hidden;
}

/* ── Sidebar drag-resize handle (sibling of aside) ──
   Lives in .dt-body (which is position: relative), positioned absolutely
   so the aside's overflow-hidden no longer clips it. Tracks the
   sidebar's right edge via the inherited --dt-sidebar-width CSS variable
   that JS sets on .dt-body.

   Design — refined:
   - 12 px wide hit zone, centred on the boundary between sidebar and
     content via left: width + translateX(-50%).
   - At rest: a single faint 1 px vertical hairline (the ::after) tinted
     in the project's neutral border colour — barely perceptible, but a
     consistent visual anchor that something is there to grab.
   - On hover: hairline gently turns crimson, gets a hint of width, and
     a soft tinted strip fills the hit zone.
   - On drag: the strip darkens; the hairline becomes 2 px crimson. No
     chunky pills, no animated gripper bars — kalem ucu inceliğinde. */
.dt-sidebar-resize-handle[b-8rxcjgta23] {
    position: absolute;
    top: 0;
    left: var(--dt-sidebar-width, 232px);
    transform: translateX(-50%);
    width: 12px;
    height: 100%;
    cursor: ew-resize;
    z-index: 10;
    user-select: none;
    background: transparent;
    transition: background 0.18s ease;
}

/* Compact crimson pill — small, centred vertically. The hit zone is the
   full sidebar height (12 px wide) so the grab is forgiving even though
   the visible affordance is tiny. */
.dt-sidebar-resize-handle[b-8rxcjgta23]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 4px;
    height: 28px;
    background: #8B0000;
    border-radius: 2px;
    opacity: 0.7;
    transition: opacity 0.15s ease, height 0.15s ease, background 0.15s ease;
    pointer-events: none;
}

.dt-sidebar-resize-handle:hover[b-8rxcjgta23]::after {
    opacity: 1;
    height: 36px;
}
body.dt-sidebar-resizing .dt-sidebar-resize-handle[b-8rxcjgta23]::after {
    opacity: 1;
    height: 44px;
    background: #6d0000;
}
body.dt-sidebar-resizing[b-8rxcjgta23] {
    cursor: ew-resize !important;
    user-select: none;
}
body.dt-sidebar-resizing *[b-8rxcjgta23] {
    user-select: none !important;
}
/* Handle is now a sibling of .dt-sidebar (lives under .dt-body), so the
   old descendant selector no longer matches. Use adjacent-sibling instead:
   when the aside is .collapsed, the handle that immediately follows it is
   hidden. */
.dt-sidebar.collapsed .dt-sidebar-resize-handle[b-8rxcjgta23],
.dt-sidebar.collapsed + .dt-sidebar-resize-handle[b-8rxcjgta23] {
    display: none;
}
/* Custom thin scrollbar so the rail doesn't show a chunky scroll affordance */
.dt-sidebar[b-8rxcjgta23]::-webkit-scrollbar { width: 6px; }
.dt-sidebar[b-8rxcjgta23]::-webkit-scrollbar-thumb {
    background: rgba(15, 31, 75, .12);
    border-radius: 4px;
}
.dt-sidebar[b-8rxcjgta23]::-webkit-scrollbar-thumb:hover { background: rgba(15, 31, 75, .22); }

/* Collapsed: shrink to icon-only rail (VS Code activity-bar feel) */
.dt-sidebar.collapsed[b-8rxcjgta23] {
    flex: 0 0 44px;
    padding: 10px 4px;
    background: #f3f5fa;
    border-right-color: #dde1ea;
}
.dt-sidebar.collapsed .dt-sidebar-label[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-text[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-count[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-empty[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-action[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-clear[b-8rxcjgta23] {
    display: none;
}

/* Collapsed mode showcases only icons that are visually distinct enough
   to be read at a glance: Quick Views (clock / pin / exclamation / unlink)
   and the universal "All Tables". Tüm kategori folder ikonlari ayni gorunur
   ve rail'i sik bir scroll-bar'a doneker — bu yuzden onlari gizliyoruz.
   Granular filtering icin kullanici paneli geri acar. */
.dt-sidebar.collapsed .dt-sidebar-item-category[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-section-database[b-8rxcjgta23],
.dt-sidebar.collapsed .dt-sidebar-divider[b-8rxcjgta23] {
    display: none;
}
.dt-sidebar.collapsed .dt-sidebar-item[b-8rxcjgta23] {
    width: 36px;
    height: 36px;
    padding: 0;
    justify-content: center;
    margin: 1px auto;
    border-radius: 8px;
    position: relative;
}
.dt-sidebar.collapsed .dt-sidebar-item-name[b-8rxcjgta23] {
    justify-content: center;
    width: 100%;
    gap: 0;
}
.dt-sidebar.collapsed .dt-sidebar-icon[b-8rxcjgta23] {
    font-size: 15px;
    width: auto;
    color: #5a6070;
}
.dt-sidebar.collapsed .dt-sidebar-item.active[b-8rxcjgta23] {
    background: #0a1436;
    border-color: #0a1436;
}
/* In collapsed icon-only mode the crimson left bar from the expanded
   design would clash with the dark navy active background — suppress it. */
.dt-sidebar.collapsed .dt-sidebar-item.active[b-8rxcjgta23]::before {
    opacity: 0;
}
.dt-sidebar.collapsed .dt-sidebar-item.active .dt-sidebar-icon[b-8rxcjgta23] {
    color: white;
}
.dt-sidebar.collapsed .dt-sidebar-item:hover:not(.active)[b-8rxcjgta23] {
    background: white;
    border-color: #d1d5db;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}
/* Slim visual separator between Categories and Database sections in collapsed mode */
.dt-sidebar.collapsed .dt-sidebar-divider[b-8rxcjgta23] {
    height: 1px;
    background: #dde1ea;
    margin: 6px 8px;
}

.dt-sidebar-section[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    /* Sections used to be separated only by their internal padding which
       made the rail feel cramped. Now each section reserves a bit of room
       and renders a hairline divider on top, except the first one. */
    padding: 4px 0 14px;
    margin-bottom: 0;
}
.dt-sidebar-section + .dt-sidebar-section[b-8rxcjgta23] {
    border-top: 1px solid #eceef4;
    padding-top: 12px;
}
/* The sticky Quick Views section has its own background to mask scrolled
   content; suppress the top border there so the seam stays clean. */
.dt-sidebar-section-quick-views[b-8rxcjgta23] {
    border-top: 0 !important;
}

/* Quick Views always reachable: pinned to the top of the sidebar so the
   user can hit Recent/Pinned/Orphans/No-data without scrolling past a
   long Categories list. Works because `.dt-sidebar` is the scroll
   container (overflow-y: auto) and this section is its direct child. */
.dt-sidebar-section-quick-views[b-8rxcjgta23] {
    position: sticky;
    top: -12px; /* offset the sidebar's 12px top padding so the section
                   visually sticks at y=0, not below the padding band */
    background: linear-gradient(180deg, #fbfbfd 0%, #f9fafc 100%);
    z-index: 2;
    padding-top: 12px;
    margin-top: -12px;
    box-shadow: 0 8px 12px -10px rgba(15, 31, 75, 0.10);
}
/* Collapsed rail uses a different background colour — keep the sticky
   block matching so there's no visible seam when content scrolls under. */
.dt-sidebar.collapsed .dt-sidebar-section-quick-views[b-8rxcjgta23] {
    background: #f3f5fa;
    box-shadow: none;
}

.dt-sidebar-label[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 10.5px;
    font-weight: 600;
    text-transform: uppercase;
    /* Tighter letter-spacing reads more modern and reduces visual noise
       compared to the previous 0.9px which felt over-tracked. */
    letter-spacing: 0.5px;
    color: #6b7480;
    padding: 4px 10px 10px;
    min-height: 24px;
    user-select: none;
}
.dt-sidebar-action[b-8rxcjgta23] {
    background: transparent;
    border: 1px solid transparent;
    color: #8892a4;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    transition: all 0.15s ease;
}
.dt-sidebar-action:hover[b-8rxcjgta23] {
    background: white;
    border-color: #d1d5db;
    color: #8B0000;
}

.dt-sidebar-empty[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 10px 9px;
    background: white;
    border: 1px dashed #d1d5db;
    border-radius: 6px;
    color: #6b7280;
    font-size: 11.5px;
    margin: 2px 0;
}
.dt-sidebar-empty > i[b-8rxcjgta23] {
    font-size: 14px;
    color: #b0b7c2;
}
.dt-sidebar-empty-add[b-8rxcjgta23] {
    background: none;
    border: none;
    color: #8B0000;
    font-size: 11px;
    font-weight: 600;
    padding: 0;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.dt-sidebar-empty-add:hover[b-8rxcjgta23] { color: #5a0000; }

.dt-sidebar-item[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* Slightly more generous vertical padding (8 vs 7) gives breathing room
       and grows the click target. Left padding bumped to 14 to make room
       for the solid 3 px active accent bar without overlapping text. */
    padding: 8px 10px 8px 14px;
    border-radius: 7px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
    border: 1px solid transparent;
    min-width: 0;
    position: relative;
    user-select: none;
}

/* The accent bar used to fade in from 0 to 14 px on hover; the new design
   keeps hover quiet (just a subtle background) and reserves the bar for
   the active state, where it spans the full height as a confident marker. */
.dt-sidebar-item[b-8rxcjgta23]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 3px;
    height: 100%;
    background: #8B0000;
    border-radius: 0 2px 2px 0;
    opacity: 0;
    transition: opacity 0.15s ease;
}
.dt-sidebar-item:hover[b-8rxcjgta23] {
    background: #f3f4f8;
}

/* Active: flat soft pink tint + solid left accent. No gradient, no inset
   shadow — reads cleaner and matches the rest of the project's flat UI. */
.dt-sidebar-item.active[b-8rxcjgta23] {
    background: #fff5f5;
}
.dt-sidebar-item.active[b-8rxcjgta23]::before {
    opacity: 1;
}
.dt-sidebar-item.active .dt-sidebar-item-name[b-8rxcjgta23] {
    color: #8B0000;
    font-weight: 600;
}
.dt-sidebar-item.active .dt-sidebar-icon[b-8rxcjgta23] {
    color: #8B0000;
}

.dt-sidebar-item-name[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    font-size: 13px;
    font-weight: 500;
    color: #1f2937;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dt-sidebar-icon[b-8rxcjgta23] {
    width: 16px;
    text-align: center;
    color: #6b7280;
    font-size: 13px;
    flex-shrink: 0;
    transition: color 0.15s ease;
}
.dt-sidebar-item:hover .dt-sidebar-icon[b-8rxcjgta23] {
    color: #5a6070;
}

.dt-sidebar-count[b-8rxcjgta23] {
    flex-shrink: 0;
    background: #eef0f5;
    color: #5b6371;
    font-size: 11px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    padding: 2px 9px;
    border-radius: 999px;
    margin-left: 8px;
    line-height: 1.4;
    min-width: 22px;
    text-align: center;
    transition: background 0.15s ease, color 0.15s ease;
}
.dt-sidebar-item:hover .dt-sidebar-count[b-8rxcjgta23] {
    background: #e2e5ec;
    color: #4a5061;
}
.dt-sidebar-count-active[b-8rxcjgta23] {
    background: rgba(139, 0, 0, .12);
    color: #8B0000;
}
.dt-sidebar-item.active .dt-sidebar-count[b-8rxcjgta23] {
    background: #fee2e2;
    color: #8B0000;
}

/* Legacy `.dt-sidebar-divider` element has been removed from the markup —
   each `.dt-sidebar-section` now draws its own top hairline via the
   adjacent-sibling rule above. The collapsed icon-rail's
   `.dt-sidebar.collapsed .dt-sidebar-divider` rules earlier in this file
   are dead code but kept to avoid touching the collapsed flow; they have
   no element to target anymore. */

.dt-sidebar-clear[b-8rxcjgta23] {
    margin-top: 4px;
    padding: 6px 9px;
    font-size: 11px;
    color: #6b7280;
    cursor: pointer;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.dt-sidebar-clear:hover[b-8rxcjgta23] {
    background: rgba(0,0,0,.04);
    color: #6d0000;
}

/* ══════════════════════════════════════════════
   CONTENT AREA
══════════════════════════════════════════════ */
.dt-content[b-8rxcjgta23] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    padding: 12px;
}

/* ══════════════════════════════════════════════
   GRID CELL RENDERING (status dot, name, subtitle,
   meta chips, database badges)
   Rendered inside CustomDataTable rows; use `::deep`
   to pierce the child component's scoped-CSS boundary.
══════════════════════════════════════════════ */
.dt-content[b-8rxcjgta23]  .dt-name-cell {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.dt-content[b-8rxcjgta23]  .dt-name-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}
.dt-content[b-8rxcjgta23]  .dt-status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
    box-shadow: 0 0 0 2px #fff, 0 0 0 3px rgba(0,0,0,.05);
    display: inline-block;
}
.dt-content[b-8rxcjgta23]  .dt-dot-green { background: #3b6d11; }
.dt-content[b-8rxcjgta23]  .dt-dot-gray  { background: #b0b7c2; }

.dt-content[b-8rxcjgta23]  .dt-table-name {
    font-weight: 600;
    color: #1e2433;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.dt-content[b-8rxcjgta23]  .dt-table-subtitle {
    font-size: 11px;
    color: #8892a4;
    margin-left: 16px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 340px;
}

.dt-content[b-8rxcjgta23]  .dt-meta-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11.5px;
    color: #5a6070;
    background: #f3f5fa;
    border: 1px solid #e3e7f0;
    padding: 2px 8px;
    border-radius: 10px;
    font-variant-numeric: tabular-nums;
}
.dt-content[b-8rxcjgta23]  .dt-meta-chip i {
    font-size: 10px;
    color: #8892a4;
}

.dt-content[b-8rxcjgta23]  .dt-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10.5px;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 10px;
    letter-spacing: 0.2px;
}
.dt-content[b-8rxcjgta23]  .dt-badge i { font-size: 10px; }
.dt-content[b-8rxcjgta23]  .dt-badge-blue { background: #e6f1fb; color: #185fa5; }
.dt-content[b-8rxcjgta23]  .dt-badge-gray { background: #eef0f6; color: #6b7280; }

.dt-import-panel[b-8rxcjgta23] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 0 10px;
}

.dt-content > :last-child[b-8rxcjgta23] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}

/* ═══ SETTINGS MENU ═══ */
.dt-settings-wrapper[b-8rxcjgta23] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.dt-settings-btn[b-8rxcjgta23] {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    cursor: pointer;
    color: #374151;
    font-size: 13px;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.dt-settings-btn:hover[b-8rxcjgta23] {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

.dt-settings-menu[b-8rxcjgta23] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 230px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 10px 32px rgba(10,20,60,.14);
    padding: 8px;
    z-index: 200;
    animation: dt-slide-down-b-8rxcjgta23 0.18s ease;
}

@keyframes dt-slide-down-b-8rxcjgta23 {
    from { transform: translateY(-8px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

.dt-settings-menu-title[b-8rxcjgta23] {
    font-size: 9.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    color: #6b7280;
}

.dt-settings-item[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    color: #374151;
    cursor: pointer;
    transition: background 0.15s;
}
.dt-settings-item:hover[b-8rxcjgta23] { background: transparent; }

.dt-settings-checkbox[b-8rxcjgta23] {
    width: 15px;
    height: 15px;
    cursor: pointer;
    accent-color: #6d0000;
    flex-shrink: 0;
}

.dt-settings-divider[b-8rxcjgta23] { height: 1px; background: #f1f5f9; margin: 6px 4px; }

/* Action rows host the embedded Import/Export components — make their inner trigger
   buttons span full width and look identical to Category Manager's cmz-action-btn. */
.dt-settings-item-action[b-8rxcjgta23] {
    padding: 3px 4px;
    gap: 0;
    cursor: default;
}
.dt-settings-item-action:hover[b-8rxcjgta23] { background: transparent; }
.dt-settings-item-action[b-8rxcjgta23]  > * { width: 100%; }
.dt-settings-item-action[b-8rxcjgta23]  .ti-wrapper,
.dt-settings-item-action[b-8rxcjgta23]  .te-wrapper {
    width: 100%;
    display: block;
}
.dt-settings-item-action[b-8rxcjgta23]  .ti-btn,
.dt-settings-item-action[b-8rxcjgta23]  .te-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 5px;
    border: 1px solid #d1d5db;
    background: white;
    color: #374151;
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: left;
    box-sizing: border-box;
    justify-content: flex-start;
}
.dt-settings-item-action[b-8rxcjgta23]  .ti-btn:hover,
.dt-settings-item-action[b-8rxcjgta23]  .te-btn:hover {
    background: #f9fafb;
    border-color: #8B0000;
    color: #8B0000;
}

/* ═══ DIALOG ═══ */
.dt-dialog-overlay[b-8rxcjgta23] {
    position: fixed;
    inset: 0;
    background: rgba(6,13,38,.55);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: dt-fade-in-b-8rxcjgta23 0.2s ease;
}

.dt-dialog[b-8rxcjgta23] {
    background: white;
    border-radius: 12px;
    width: 90%;
    max-width: 460px;
    max-height: 90vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 28px 64px rgba(10,20,60,.26);
    border: 1px solid #e0e3ec;
    animation: dt-slide-up-b-8rxcjgta23 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes dt-slide-up-b-8rxcjgta23 {
    from { transform: translateY(28px) scale(0.97); opacity: 0; }
    to   { transform: translateY(0) scale(1);       opacity: 1; }
}

.dt-dialog-header[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 18px;
    height: 52px;
    background: linear-gradient(100deg, #0a1436, #0f1f4b);
    border-bottom: 2.5px solid #6d0000;
    flex-shrink: 0;
}

.dt-dialog-title[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: white;
    font-size: 13px;
    font-weight: 700;
}
.dt-dialog-title i[b-8rxcjgta23] { color: #6a88aa; }

.dt-dialog-body[b-8rxcjgta23] {
    padding: 22px 18px;
    overflow-y: auto;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.dt-form-group[b-8rxcjgta23] { display: flex; flex-direction: column; gap: 6px; }

.dt-form-label[b-8rxcjgta23] {
    font-size: 10.5px;
    font-weight: 700;
    color: #374151;
    text-transform: uppercase;
    letter-spacing: 0.55px;
}

.dt-required[b-8rxcjgta23] { color: #6d0000; margin-left: 2px; }

.dt-input[b-8rxcjgta23] {
    width: 100%;
    padding: 9px 12px;
    border: 1.5px solid #e8eaef;
    border-radius: 7px;
    font-size: 12.5px;
    color: #1e2433;
    background: #f5f6fa;
    transition: all 0.18s;
    box-sizing: border-box;
    font-family: inherit;
}
.dt-input:hover[b-8rxcjgta23] { border-color: #b0b8cc; }
.dt-input:focus[b-8rxcjgta23] {
    outline: none;
    border-color: #0f1f4b;
    background: white;
    box-shadow: 0 0 0 3px rgba(15,31,75,.08);
}

.dt-dialog-footer[b-8rxcjgta23] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 14px 18px;
    border-top: 1px solid #edf0f5;
    background: #f8f9fc;
    flex-shrink: 0;
}

.dt-settings-section-header[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 4px 8px 3px;
    cursor: pointer;
    user-select: none;
    border-radius: 6px;
}
.dt-settings-section-header:hover[b-8rxcjgta23] { background: #f5f6fa; }
.dt-section-chevron[b-8rxcjgta23] {
    font-size: 9px;
    color: #b0b8cc;
    transition: transform 0.2s ease;
}
.dt-toggle-label[b-8rxcjgta23] {
    font-size: 12px;
    color: #374151;
    user-select: none;
    flex: 1;
}
.dt-toggle[b-8rxcjgta23] {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    flex-shrink: 0;
}
.dt-toggle input[b-8rxcjgta23] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}
.dt-toggle-track[b-8rxcjgta23] {
    width: 34px;
    height: 18px;
    border-radius: 9px;
    background: #d1d5db;
    transition: background 0.2s ease;
    position: relative;
    display: block;
}
.dt-toggle-thumb[b-8rxcjgta23] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    transition: transform 0.2s ease;
    display: block;
}
.dt-toggle input:checked + .dt-toggle-track[b-8rxcjgta23] { background: #6d0000; }
.dt-toggle input:checked + .dt-toggle-track .dt-toggle-thumb[b-8rxcjgta23] { transform: translateX(16px); }
.dt-settings-item[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    color: #374151;
    cursor: pointer;
    transition: background 0.15s;
}
.dt-settings-item:hover[b-8rxcjgta23] { background: transparent; }

.dt-settings-overlay[b-8rxcjgta23] {
    position: fixed;
    inset: 0;
    z-index: 199;
    background: transparent;
    cursor: default;
}

/* ══════════════════════════════════════════════
   EMPTY STATES (passed to CustomDataTable as <EmptyTemplate>)
   Two flavours: a friendly "no tables yet" with a primary CTA, and a
   muted "no tables match your filters" with a Clear-filters action.
══════════════════════════════════════════════ */
.dt-empty[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 56px 32px;
    flex: 1;
    text-align: center;
}
.dt-empty-icon[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 76px;
    height: 76px;
    border-radius: 50%;
    background: #fef2f2;
    color: #8B0000;
    font-size: 28px;
    position: relative;
}
.dt-empty-icon[b-8rxcjgta23]::after {
    /* Faint dashed halo gives the icon a friendly, illustration-like ring
       without needing an actual SVG illustration. */
    content: '';
    position: absolute;
    inset: -8px;
    border-radius: 50%;
    border: 1px dashed #fecaca;
}
.dt-empty-icon-muted[b-8rxcjgta23] {
    background: #f3f4f6;
    color: #6b7280;
}
.dt-empty-icon-muted[b-8rxcjgta23]::after {
    border-color: #e5e7eb;
}
.dt-empty-title[b-8rxcjgta23] {
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
    margin: 4px 0 0;
}
.dt-empty-desc[b-8rxcjgta23] {
    font-size: 12.5px;
    color: #6b7280;
    margin: 0;
    max-width: 320px;
    line-height: 1.55;
}
.dt-empty-actions[b-8rxcjgta23] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 4px;
}
.dt-empty-btn[b-8rxcjgta23] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 7px;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.dt-empty-btn-primary[b-8rxcjgta23] {
    background: #8B0000;
    color: white;
    border: 1px solid #8B0000;
}
.dt-empty-btn-primary:hover[b-8rxcjgta23] { background: #6d0000; border-color: #6d0000; }
.dt-empty-btn-outline[b-8rxcjgta23] {
    background: white;
    color: #1f2937;
    border: 1px solid #d1d5db;
}
.dt-empty-btn-outline:hover[b-8rxcjgta23] { border-color: #9ca3af; }

/* ══════════════════════════════════════════════
   LOADING SKELETON (passed to CustomDataTable as <LoadingTemplate>)
   Pulses a row silhouette so users see the eventual shape of the grid
   immediately. Pure CSS animation — no JS, no extra DOM listeners.
══════════════════════════════════════════════ */
.dt-skel[b-8rxcjgta23] {
    padding: 6px 12px 14px;
    flex: 1;
    overflow: hidden;
}
.dt-skel-row[b-8rxcjgta23] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 6px;
    border-bottom: 1px solid #f3f4f6;
}
.dt-skel-row:last-child[b-8rxcjgta23] { border-bottom: none; }
.dt-skel-row-head[b-8rxcjgta23] {
    border-bottom: 1px solid #e5e7eb;
    background: #fafbfc;
    border-radius: 6px;
    padding: 12px;
    margin: 0 -4px 6px;
}
.dt-skel-dot[b-8rxcjgta23] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #eef0f4;
    flex-shrink: 0;
    animation: dt-skel-pulse-b-8rxcjgta23 1.4s ease-in-out infinite;
}
.dt-skel-bar[b-8rxcjgta23] {
    height: 12px;
    border-radius: 4px;
    background: linear-gradient(90deg, #f3f4f6 0%, #e5e7eb 50%, #f3f4f6 100%);
    background-size: 200% 100%;
    animation: dt-skel-shimmer-b-8rxcjgta23 1.4s ease-in-out infinite;
    flex-shrink: 0;
}
.dt-skel-bar-grow[b-8rxcjgta23] { flex: 1 1 auto; max-width: 320px; }
@keyframes dt-skel-shimmer-b-8rxcjgta23 {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}
@keyframes dt-skel-pulse-b-8rxcjgta23 {
    0%, 100% { opacity: 1; }
    50%      { opacity: .5; }
}

/* ══════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════ */
@media (max-width: 1280px) {
    .dt-drawer[b-8rxcjgta23] { width: 330px; }
}

@media (max-width: 1024px) {
    .dt-sidebar[b-8rxcjgta23] { flex: 0 0 180px; padding: 10px 6px; }
}

@media (max-width: 768px) {
    .dt-header[b-8rxcjgta23] { padding: 0 12px; height: 52px; }
    .dt-drawer[b-8rxcjgta23] { width: 100%; max-width: 320px; }
    .dt-btn span[b-8rxcjgta23] { display: none; }
    .dt-btn[b-8rxcjgta23] { padding: 7px 10px; }
    .dt-dialog[b-8rxcjgta23] { width: 96%; }
    .dt-content[b-8rxcjgta23] { padding: 8px; }
    .dt-header-right[b-8rxcjgta23]::before { display: none; }
    .dt-sidebar[b-8rxcjgta23] { display: none; }
}
.dt-import-host[b-8rxcjgta23] {
    display: none !important;
}

.dt-import-wrapper[b-8rxcjgta23],
.dt-more-wrapper[b-8rxcjgta23] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.dt-btn-split[b-8rxcjgta23] {
    padding-right: 10px;
}
.dt-btn-chevron[b-8rxcjgta23] {
    font-size: 9px !important;
    opacity: 0.75;
    margin-left: 2px;
}

/* Kebab "More" — icon-only button matching the outline style. */
.dt-btn-icon[b-8rxcjgta23] {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.07);
    color: #b8ccdf;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 7px;
    cursor: pointer;
    transition: all 0.18s;
    font-size: 13px;
    backdrop-filter: blur(4px);
    flex-shrink: 0;
}
.dt-btn-icon:hover[b-8rxcjgta23] {
    background: rgba(255,255,255,.14);
    color: #fff;
    border-color: rgba(255,255,255,.26);
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0,0,0,.2);
}

.dt-btn-cta[b-8rxcjgta23] {
    margin-left: 4px;
    padding: 8px 16px;
    font-size: 12.5px;
    font-weight: 700;
    box-shadow: 0 3px 12px rgba(109,0,0,.45), inset 0 1px 0 rgba(255,255,255,.12);
}
.dt-btn-cta:hover[b-8rxcjgta23] {
    box-shadow: 0 5px 18px rgba(109,0,0,.6), inset 0 1px 0 rgba(255,255,255,.18);
}

.dt-action-menu[b-8rxcjgta23] {
    min-width: 240px;
    padding: 6px;
    z-index: 1100;
}

.dt-import-wrapper > .dt-settings-overlay[b-8rxcjgta23],
.dt-more-wrapper > .dt-settings-overlay[b-8rxcjgta23] {
    z-index: 1099;
}

.dt-menu-item[b-8rxcjgta23] {
    width: 100%;
    display: grid;
    grid-template-columns: 26px 1fr;
    column-gap: 10px;
    align-items: center;
    padding: 9px 10px;
    border: none;
    border-radius: 7px;
    background: transparent;
    color: #1f2937;
    cursor: pointer;
    text-align: left;
    transition: background 0.15s;
    font-family: inherit;
}
.dt-menu-item:hover[b-8rxcjgta23] {
    background: #f5f6fa;
}
.dt-menu-item + .dt-menu-item[b-8rxcjgta23] {
    margin-top: 1px;
}

.dt-menu-icon[b-8rxcjgta23] {
    width: 100%;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f3f0f0;
    color: #6d0000;
    border-radius: 6px;
    font-size: 12px;
    box-sizing: border-box;
    overflow: hidden;
}
.dt-menu-icon > i[b-8rxcjgta23] {
    line-height: 1;
    text-align: center;
}

.dt-menu-text[b-8rxcjgta23] {
    display: flex;
    flex-direction: column;
    line-height: 1.25;
    min-width: 0;
}
.dt-menu-title[b-8rxcjgta23] {
    font-size: 12.5px;
    font-weight: 600;
    color: #111827;
}
.dt-menu-sub[b-8rxcjgta23] {
    font-size: 10.5px;
    color: #6b7280;
    margin-top: 1px;
}

/* ═══ REFRESH BUTTON + AUTO-REFRESH DROPDOWN ═══ */
.rec-refresh-btn[b-8rxcjgta23] {
    width: 32px;
    height: 32px;
    border-radius: 8px 0 0 8px;
    border: 1.5px solid #e8eaef;
    border-right: none;
    background: #f5f6fa;
    color: #6b7280;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}
.rec-refresh-btn:hover:not(:disabled)[b-8rxcjgta23] {
    background: #0a1436;
    border-color: #0a1436;
    color: white;
    box-shadow: 0 2px 8px rgba(10, 20, 54, 0.25);
}
.rec-refresh-btn:active:not(:disabled)[b-8rxcjgta23] { transform: scale(0.93); }
.rec-refresh-btn:disabled[b-8rxcjgta23] { opacity: 0.45; cursor: not-allowed; }
.rec-refresh-icon[b-8rxcjgta23] { width: 16px; height: 16px; position: relative; z-index: 1; }
.rec-refresh-btn:disabled .rec-refresh-icon[b-8rxcjgta23] { animation: rec-spin-b-8rxcjgta23 0.9s linear infinite; }

.dg-refresh-wrapper[b-8rxcjgta23] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0;
    margin-right: 6px;
}

.dg-refresh-interval-btn[b-8rxcjgta23] {
    height: 32px;
    padding: 0 9px;
    border: 1.5px solid #e8eaef;
    border-left: none;
    border-radius: 0 8px 8px 0;
    background: #f5f6fa;
    color: #8892a4;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.18s;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
.dg-refresh-interval-btn i[b-8rxcjgta23] { font-size: 9px; }
.dg-refresh-interval-btn:hover[b-8rxcjgta23] {
    border-color: #0f1f4b;
    color: #0f1f4b;
    background: white;
}
.dg-refresh-interval-btn.active[b-8rxcjgta23] {
    background: #e8edf8;
    color: #0f1f4b;
    border-color: #0f1f4b;
}

.dg-refresh-menu[b-8rxcjgta23] {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    background: white;
    border: 1px solid #e2e5ee;
    border-radius: 10px;
    box-shadow: 0 8px 28px rgba(15,31,75,.12);
    z-index: 600;
    min-width: 110px;
    overflow: hidden;
    animation: dt-slide-down-b-8rxcjgta23 0.15s ease;
}
.dg-refresh-option[b-8rxcjgta23] {
    width: 100%;
    padding: 8px 14px;
    background: none;
    border: none;
    color: #374151;
    font-size: 12.5px;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background 0.12s;
}
.dg-refresh-option:hover[b-8rxcjgta23] { background: #f5f6fa; }
.dg-refresh-option.selected[b-8rxcjgta23] { color: #0f1f4b; font-weight: 700; }
.dg-refresh-option.selected i[b-8rxcjgta23] { color: #6d0000; font-size: 10px; }

.dg-refresh-overlay[b-8rxcjgta23] {
    position: fixed;
    inset: 0;
    z-index: 599;
    background: transparent;
    cursor: default;
}

@keyframes rec-spin-b-8rxcjgta23 {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.rec-refresh-spinning[b-8rxcjgta23] {
    animation: rec-spin-b-8rxcjgta23 1.5s linear infinite;
    transform-origin: center;
}
/* _content/Evolve.Web/Components/Pages/ManageForms/Components/FormPrintLayout.razor.rz.scp.css */
/* Scoped styles for FormPrintLayout so only this component is affected */

/* Centered loading state to avoid flicker */
.fpl-loading[b-nktpgiq1on] {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

/* Ensure the container fills its pane and hides outer overflow */
.form-print-layout[b-nktpgiq1on] {
  height: 100%;
  overflow: hidden;
}

/* Syncfusion DocumentEditor structure tweaks inside our wrapper */
.form-print-layout .e-de-container[b-nktpgiq1on] {
  display: flex;
  flex-direction: column;
  height: 100% !important;
  overflow: hidden; /* prevent outer scrollbars */
}

/* Ribbon/toolbar area stays fixed at the top */
.form-print-layout .e-de-ctnr-toolbar[b-nktpgiq1on],
.form-print-layout .e-de-tlbr-wrapper[b-nktpgiq1on],
.form-print-layout .e-de-tool-pane-header[b-nktpgiq1on] {
  position: sticky;
  top: 0;
  z-index: 2;
}

/* Make the main content area a flex row: left ruler + document + right pane */
.form-print-layout .e-de-ctr[b-nktpgiq1on] {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden; /* no outer scroll; inner parts manage their own */
}

/* Right properties/tool pane fixed and scrolls internally */
.form-print-layout .e-de-pane[b-nktpgiq1on] {
  position: sticky;
  top: 0; /* below sticky toolbar since same stacking context */
  align-self: flex-start;
  max-height: 100%;
  overflow: auto;
}

/* Center document viewer should scroll; fill remaining width */
.form-print-layout .e-de-viewercontainer[b-nktpgiq1on] {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
  overflow: auto !important; /* only center scrolls */
}

/* Ensure background canvas stretches correctly */
.form-print-layout .e-de-background canvas[b-nktpgiq1on] {
  width: 100% !important;
}

/* Import overlay: make InputFile cover the button area */
.fpl-import-wrap[b-nktpgiq1on] {
  position: relative;
  display: inline-block;
}
.fpl-import-wrap .fpl-import-input[b-nktpgiq1on] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

/* _content/Evolve.Web/Components/Pages/ManageUsersAndGroups/ManageUserGroups.razor.rz.scp.css */
.manage-user-groups-import-panel[b-aejoveas4o] {
    padding: 6px 0 10px;
    flex: 0 0 auto;
}
/* _content/Evolve.Web/Components/Pages/Runner/RunHistory.razor.rz.scp.css */
/* Styles extracted and consolidated from RunHistory.razor */
*[b-ay8v3k5lx6]{ margin:0; padding:0; box-sizing:border-box; }
.page-container[b-ay8v3k5lx6]{ background:linear-gradient(to bottom right,#f8fafc,#f1f5f9); min-height:100vh; padding:24px; font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; zoom:.85; }
.header[b-ay8v3k5lx6]{ margin-bottom:30px; animation: fadeInDown-b-ay8v3k5lx6 .6s ease; }
.header-title[b-ay8v3k5lx6]{ font-size:28px; font-weight:700; background:linear-gradient(135deg,#3b82f6 0%, #0ea5e9 100%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; margin-bottom:8px; }
.header-subtitle[b-ay8v3k5lx6]{ font-size:14px; color:#64748b; }
.actions[b-ay8v3k5lx6]{ display:flex; gap:12px; margin-top:24px; }
.btn[b-ay8v3k5lx6]{ padding:10px 20px; border-radius:10px; font-size:13px; font-weight:600; cursor:pointer; transition:all .3s cubic-bezier(0.4,0,0.2,1); border:none; display:inline-flex; align-items:center; gap:6px; text-decoration:none; position:relative; overflow:hidden; }
.btn[b-ay8v3k5lx6]::before{ content:''; position:absolute; top:50%; left:50%; width:0; height:0; border-radius:50%; background:rgba(255,255,255,.5); transform:translate(-50%,-50%); transition:width .6s, height .6s; }
.btn:active[b-ay8v3k5lx6]::before{ width:300px; height:300px; }
.btn-back[b-ay8v3k5lx6]{ background:white; color:#475569; border:2px solid #e2e8f0; box-shadow:0 1px 3px rgba(0,0,0,.05); }
.btn-back:hover[b-ay8v3k5lx6]{ transform:translateY(-2px); box-shadow:0 8px 16px rgba(0,0,0,.1); border-color:#cbd5e1; }
.btn-record-small[b-ay8v3k5lx6]{ background:linear-gradient(135deg,#3b82f6 0%, #0ea5e9 100%); color:white; padding:8px 16px; border-radius:8px; font-size:12px; font-weight:600; cursor:pointer; border:none; display:inline-flex; align-items:center; gap:6px; transition:all .3s ease; box-shadow:0 2px 8px rgba(59,130,246,.2); }
.btn-record-small:hover[b-ay8v3k5lx6]{ transform:translateY(-2px); box-shadow:0 4px 12px rgba(59,130,246,.3); }
.content-card[b-ay8v3k5lx6]{ background:white; border-radius:16px; box-shadow:0 8px 30px rgba(0,0,0,.08); overflow:hidden; animation: fadeInUp-b-ay8v3k5lx6 .6s ease; padding:30px; }
.timeline[b-ay8v3k5lx6]{ position:relative; padding-left:40px; }
.timeline[b-ay8v3k5lx6]::before{ content:''; position:absolute; left:16px; top:0; bottom:0; width:2px; background:linear-gradient(180deg,#3b82f6 0%, #0ea5e9 100%); border-radius:2px; }
.timeline-item[b-ay8v3k5lx6]{ position:relative; padding-bottom:30px; animation: slideInFromLeft-b-ay8v3k5lx6 .6s ease forwards; opacity:0; }
.timeline-item:last-child[b-ay8v3k5lx6]{ padding-bottom:0; }
.timeline-item:last-child[b-ay8v3k5lx6]::after{ content:''; position:absolute; left:-24px; bottom:-16px; width:16px; height:16px; background:linear-gradient(135deg,#10b981 0%, #059669 100%); border:3px solid white; border-radius:50%; box-shadow:0 3px 10px rgba(16,185,129,.3); z-index:3; }
.timeline-dot[b-ay8v3k5lx6]{ position:absolute; left:-24px; top:6px; width:14px; height:14px; background:white; border:3px solid #3b82f6; border-radius:50%; z-index:2; }

/* Animations (were missing, causing items to remain opacity:0) */
@keyframes slideInFromLeft-b-ay8v3k5lx6 {
  0%   { opacity: 0; transform: translateX(-8px); }
  100% { opacity: 1; transform: translateX(0); }
}
@keyframes fadeInUp-b-ay8v3k5lx6 {
  0%   { opacity: 0; transform: translateY(8px); }
  100% { opacity: 1; transform: translateY(0); }
}
@keyframes fadeInDown-b-ay8v3k5lx6 {
  0%   { opacity: 0; transform: translateY(-8px); }
  100% { opacity: 1; transform: translateY(0); }
}

/* Timeline content cards */
.timeline-content[b-ay8v3k5lx6]{ background:linear-gradient(135deg,#ffffff 0%, #f8fafc 100%); border-radius:12px; padding:20px; border:1px solid #e2e8f0; transition:all .3s ease; position:relative; overflow:hidden; }
.timeline-content[b-ay8v3k5lx6]::before{ content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,#3b82f6 0%, #0ea5e9 100%); transform:scaleX(0); transform-origin:left; transition:transform .3s ease; }
.timeline-content.rework[b-ay8v3k5lx6]::before{ background:linear-gradient(90deg,#fb923c 0%, #f97316 100%); }
.timeline-content:hover[b-ay8v3k5lx6]{ transform:translateX(8px); box-shadow:0 10px 20px rgba(0,0,0,.1); border-color:#3b82f6; }
.timeline-content:hover[b-ay8v3k5lx6]::before{ transform:scaleX(1); }

.timeline-header[b-ay8v3k5lx6]{ display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:16px; padding-bottom:12px; border-bottom:2px solid #f1f5f9; }
.timeline-step-info[b-ay8v3k5lx6]{ flex:1; }
.timeline-step-name[b-ay8v3k5lx6]{ font-size:17px; font-weight:700; color:#1e293b; margin-bottom:6px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.timeline-step-type[b-ay8v3k5lx6]{ font-size:13px; color:#64748b; font-weight:500; display:flex; align-items:center; gap:5px; }
.timeline-time[b-ay8v3k5lx6]{ font-size:12px; color:#475569; font-variant-numeric:tabular-nums; background:linear-gradient(135deg,#f1f5f9 0%, #e2e8f0 100%); padding:6px 12px; border-radius:8px; font-weight:600; display:flex; align-items:center; gap:5px; }

.timeline-details[b-ay8v3k5lx6]{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px,1fr)); gap:12px; margin-top:16px; }
.timeline-detail[b-ay8v3k5lx6]{ display:flex; align-items:flex-start; gap:8px; padding:10px; background:#f8fafc; border-radius:8px; transition:all .2s ease; }
.timeline-detail:hover[b-ay8v3k5lx6]{ background:#f1f5f9; transform:translateY(-2px); }
.timeline-detail-icon[b-ay8v3k5lx6]{ font-size:16px; margin-top:2px; }
.timeline-detail-content[b-ay8v3k5lx6]{ flex:1; }
.timeline-detail-label[b-ay8v3k5lx6]{ font-size:11px; color:#94a3b8; font-weight:600; text-transform:uppercase; letter-spacing:.5px; margin-bottom:3px; }
.timeline-detail-value[b-ay8v3k5lx6]{ font-size:13px; color:#334155; font-weight:500; line-height:1.4; }

/* Tags */
.timeline-tag[b-ay8v3k5lx6]{ display:inline-flex; align-items:center; gap:5px; padding:5px 12px; border-radius:16px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; animation:pulse-b-ay8v3k5lx6 2s infinite; }
.timeline-tag-rework[b-ay8v3k5lx6]{ background:linear-gradient(135deg,#fbbf24 0%, #f97316 100%); color:white; box-shadow:0 3px 10px rgba(249,115,22,.3); }
.timeline-tag-normal[b-ay8v3k5lx6]{ background:linear-gradient(135deg,#34d399 0%, #10b981 100%); color:white; box-shadow:0 3px 10px rgba(16,185,129,.3); }
.timeline-tag-active[b-ay8v3k5lx6]{ background-color:#10b981; color:#064e3b; border:1px solid #059669; }

/* Rework dot pulse */
.timeline-dot.rework[b-ay8v3k5lx6]{ border-color:#f97316; animation:pulseOrange-b-ay8v3k5lx6 2s infinite; }
@keyframes pulseOrange-b-ay8v3k5lx6{ 0%{ box-shadow:0 0 0 0 rgba(249,115,22,.4);} 70%{ box-shadow:0 0 0 8px rgba(249,115,22,0);} 100%{ box-shadow:0 0 0 0 rgba(249,115,22,0);} }

/* Modal */
.modal[b-ay8v3k5lx6]{ display:none; position:fixed; inset:0; background:rgba(0,0,0,.7); backdrop-filter:blur(8px); z-index:9999; overflow:hidden; }
.modal.show[b-ay8v3k5lx6]{ display:flex; align-items:center; justify-content:center; animation:fadeIn-b-ay8v3k5lx6 .3s ease; padding:20px; }
.modal-dialog[b-ay8v3k5lx6]{ background:#fff; border-radius:20px; width:90%; max-width:800px; max-height:85vh; display:flex; flex-direction:column; animation:slideUpBounce-b-ay8v3k5lx6 .5s ease; box-shadow:0 20px 40px rgba(0,0,0,.25); overflow:hidden; }
.modal-header[b-ay8v3k5lx6]{ padding:24px; background:linear-gradient(135deg,#3b82f6 0%, #0ea5e9 100%); border-radius:20px 20px 0 0; display:flex; justify-content:space-between; align-items:center; flex-shrink:0; }
.modal-title[b-ay8v3k5lx6]{ font-size:20px; font-weight:700; color:#fff; }
.modal-close[b-ay8v3k5lx6]{ width:32px; height:32px; border:none; background:rgba(255,255,255,.2); color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; border-radius:8px; transition:all .3s ease; font-size:18px; flex-shrink:0; }
.modal-close:hover[b-ay8v3k5lx6]{ background:rgba(255,255,255,.3); transform:rotate(90deg); }
.modal-body[b-ay8v3k5lx6]{ padding:24px; overflow:auto; flex:1; min-height:0; scrollbar-width:thin; scrollbar-color:#cbd5e1 #f1f5f9; }
.modal-body[b-ay8v3k5lx6]::-webkit-scrollbar{ width:6px; height:6px; }
.modal-body[b-ay8v3k5lx6]::-webkit-scrollbar-track{ background:#f1f5f9; border-radius:3px; }
.modal-body[b-ay8v3k5lx6]::-webkit-scrollbar-thumb{ background:#cbd5e1; border-radius:3px; }
.modal-body[b-ay8v3k5lx6]::-webkit-scrollbar-thumb:hover{ background:#94a3b8; }

/* Record details */
.record-stats[b-ay8v3k5lx6]{ padding:16px; background:linear-gradient(135deg,#dbeafe,#bfdbfe); border-radius:10px; margin-bottom:20px; font-size:14px; color:#1e40af; font-weight:600; border:1px solid #93c5fd; animation:slideInLeft-b-ay8v3k5lx6 .5s ease; flex-shrink:0; }
.record-table[b-ay8v3k5lx6]{ width:100%; min-width:500px; }
.record-row[b-ay8v3k5lx6]{ display:grid; grid-template-columns:180px 1fr; padding:16px; border-radius:10px; margin-bottom:10px; background:#fafbfc; gap:12px; transition:all .3s ease; animation:slideInRight-b-ay8v3k5lx6 .5s ease; min-width:0; }
.record-row:hover[b-ay8v3k5lx6]{ background:linear-gradient(90deg,#f0f9ff 0%, #fafbfc 100%); transform:translateX(6px); box-shadow:0 3px 10px rgba(0,0,0,.05); }
.record-key[b-ay8v3k5lx6]{ font-size:13px; color:#64748b; font-weight:600; word-break:break-word; min-width:0; }
.record-value[b-ay8v3k5lx6]{ font-size:13px; color:#1e293b; word-break:break-all; font-weight:500; min-width:0; overflow-wrap:break-word; }

/* Download link and empty state */
.download-link[b-ay8v3k5lx6]{ display:inline-flex; align-items:center; gap:6px; padding:6px 14px; background:linear-gradient(135deg,#10b981,#059669); color:#fff; border-radius:6px; font-size:12px; font-weight:600; text-decoration:none; transition:all .3s ease; box-shadow:0 3px 10px rgba(16,185,129,.25); white-space:nowrap; }
.download-link:hover[b-ay8v3k5lx6]{ transform:translateY(-2px); box-shadow:0 5px 14px rgba(16,185,129,.35); }
.empty-state[b-ay8v3k5lx6]{ padding:50px; text-align:center; animation:fadeIn-b-ay8v3k5lx6 .5s ease; }
.empty-icon[b-ay8v3k5lx6]{ font-size:56px; margin-bottom:16px; animation:bounce-b-ay8v3k5lx6 2s infinite; }
.empty-text[b-ay8v3k5lx6]{ font-size:14px; color:#94a3b8; }

/* Loading */
.loading[b-ay8v3k5lx6]{ display:flex; justify-content:center; align-items:center; padding:50px; }
.spinner[b-ay8v3k5lx6]{ width:40px; height:40px; border:3px solid #e2e8f0; border-top-color:#3b82f6; border-radius:50%; animation:spin-b-ay8v3k5lx6 .8s linear infinite; }

/* Extra keyframes referenced by the page */
@keyframes spin-b-ay8v3k5lx6{ to{ transform:rotate(360deg);} }
@keyframes fadeIn-b-ay8v3k5lx6{ from{ opacity:0;} to{ opacity:1;} }
@keyframes slideUpBounce-b-ay8v3k5lx6{ 0%{ opacity:0; transform:translateY(30px) scale(.9);} 60%{ transform:translateY(-10px) scale(1.02);} 100%{ opacity:1; transform:translateY(0) scale(1);} }
@keyframes slideInLeft-b-ay8v3k5lx6{ from{ opacity:0; transform:translateX(-20px);} to{ opacity:1; transform:translateX(0);} }
@keyframes slideInRight-b-ay8v3k5lx6{ from{ opacity:0; transform:translateX(20px);} to{ opacity:1; transform:translateX(0);} }
@keyframes bounce-b-ay8v3k5lx6{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(-20px);} }
@keyframes pulse-b-ay8v3k5lx6{ 0%,100%{ transform:scale(1);} 50%{ transform:scale(1.05);} }

/* Responsive */
@media (max-width:768px){
  .page-container[b-ay8v3k5lx6]{ padding:16px; zoom:.9; }
  .content-card[b-ay8v3k5lx6]{ padding:20px; }
  .timeline[b-ay8v3k5lx6]{ padding-left:30px; }
  .timeline[b-ay8v3k5lx6]::before{ left:10px; }
  .timeline-dot[b-ay8v3k5lx6]{ left:-18px; width:12px; height:12px; }
  .timeline-details[b-ay8v3k5lx6]{ grid-template-columns:1fr; }
  .timeline-header[b-ay8v3k5lx6]{ flex-direction:column; gap:10px; }
  .record-row[b-ay8v3k5lx6]{ grid-template-columns:1fr; gap:10px; }
}
@media (max-width:1280px) and (max-height:720px){
  .page-container[b-ay8v3k5lx6]{ zoom:.68; padding:20px; }
  .header[b-ay8v3k5lx6]{ margin-bottom:24px; }
  .header-title[b-ay8v3k5lx6]{ font-size:21px; margin-bottom:7px; }
  .header-subtitle[b-ay8v3k5lx6]{ font-size:11px; }
  .actions[b-ay8v3k5lx6]{ gap:9px; margin-top:20px; }
  .btn[b-ay8v3k5lx6]{ padding:8px 15px; border-radius:8px; font-size:10px; gap:5px; }
  .btn-record-small[b-ay8v3k5lx6]{ padding:6px 12px; border-radius:7px; font-size:9px; box-shadow:0 1.6px 5.8px rgba(59,130,246,.2); }
  .content-card[b-ay8v3k5lx6]{ border-radius:12px; padding:24px; box-shadow:0 6.4px 24px rgba(0,0,0,.08); }
  .timeline[b-ay8v3k5lx6]{ padding-left:32px; }
  .timeline[b-ay8v3k5lx6]::before{ left:12px; width:1.6px; }
  .timeline-item[b-ay8v3k5lx6]{ padding-bottom:24px; }
  .timeline-dot[b-ay8v3k5lx6]{ left:-17px; width:11px; height:11px; }
  .timeline-content[b-ay8v3k5lx6]{ border-radius:9px; padding:16px; }
  .timeline-header[b-ay8v3k5lx6]{ margin-bottom:13px; padding-bottom:9px; }
  .timeline-step-name[b-ay8v3k5lx6]{ font-size:13px; gap:8px; }
  .timeline-step-type[b-ay8v3k5lx6]{ font-size:10px; gap:4px; }
  .timeline-time[b-ay8v3k5lx6]{ font-size:9px; padding:5px 9px; border-radius:7px; }
  .modal-dialog[b-ay8v3k5lx6]{ border-radius:16px; max-width:644px; max-height:69vh; }
  .modal-header[b-ay8v3k5lx6]{ padding:20px; }
  .modal-title[b-ay8v3k5lx6]{ font-size:16px; }
  .modal-close[b-ay8v3k5lx6]{ width:25px; height:25px; border-radius:7px; font-size:13px; }
  .record-stats[b-ay8v3k5lx6]{ padding:13px; border-radius:8px; font-size:11px; margin-bottom:16px; }
  .record-row[b-ay8v3k5lx6]{ padding:13px; border-radius:8px; gap:9px; }
  .record-key[b-ay8v3k5lx6],.record-value[b-ay8v3k5lx6]{ font-size:10px; }
  .download-link[b-ay8v3k5lx6]{ padding:5px 11px; border-radius:5px; font-size:9px; }
  .empty-state[b-ay8v3k5lx6]{ padding:40px; }
  .empty-icon[b-ay8v3k5lx6]{ font-size:45px; margin-bottom:12px; }
  .empty-text[b-ay8v3k5lx6]{ font-size:11px; }
  .spinner[b-ay8v3k5lx6]{ width:32px; height:32px; border-width:2.3px; }
}
/* _content/Evolve.Web/Components/Pages/ServicePages/Chat.razor.rz.scp.css */
/* Chat Component Styles */
*[b-5q8ab0u77i] {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body[b-5q8ab0u77i] {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    line-height: 1.5;
    color: #212529;
    overflow-x: hidden;
}

.chat-wrapper *[b-5q8ab0u77i] {
    max-width: 100%;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.chat-wrapper[b-5q8ab0u77i] {
    height: 100vh;
    min-height: 600px;
    max-height: 100vh;
    background: #f8f9fa;
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
}

.chat-container[b-5q8ab0u77i] {
    display: flex;
    height: 100%;
    width: 100%;
    flex: 1;
    background: #ffffff;
    position: relative;
    overflow: hidden;
    isolation: isolate;
}

.mobile-header[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem;
    background: #ffffff;
    border-bottom: 1px solid #e9ecef;
    position: sticky;
    top: 0;
    z-index: 100;
}

.menu-toggle[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: #6c757d;
    cursor: pointer;
    transition: all 0.2s ease;
}

.menu-toggle:hover[b-5q8ab0u77i] {
    background: #f8f9fa;
    color: #212529;
}

.mobile-title[b-5q8ab0u77i] {
    font-size: 1rem;
    font-weight: 600;
    color: #212529;
    margin: 0;
}

.mobile-status[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
}

.sidebar[b-5q8ab0u77i] {
    background: #ffffff;
    border-right: 1px solid #e9ecef;
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 1000;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    overflow: hidden;
}

.sidebar.sidebar-open[b-5q8ab0u77i] {
    transform: translateX(0);
}

.sidebar-overlay[b-5q8ab0u77i] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: -1;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.sidebar.sidebar-open .sidebar-overlay[b-5q8ab0u77i] {
    opacity: 1;
}

.sidebar-content[b-5q8ab0u77i] {
    position: relative;
    background: #ffffff;
    height: 100vh;
    width: 85%;
    max-width: 280px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}

.sidebar-header[b-5q8ab0u77i] {
    padding: 0.75rem;
    border-bottom: 1px solid #e9ecef;
    background: #f8f9fa;
    flex-shrink: 0;
}

.header-content[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.app-brand[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.brand-logo svg[b-5q8ab0u77i] {
    width: 18px;
    height: 18px;
}

.brand-title[b-5q8ab0u77i] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #212529;
    margin: 0;
}

.header-actions[b-5q8ab0u77i] {
    display: flex;
    gap: 0.25rem;
}

.header-btn[b-5q8ab0u77i],
.sidebar-close[b-5q8ab0u77i] {
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: #6c757d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.header-btn:hover[b-5q8ab0u77i],
.sidebar-close:hover[b-5q8ab0u77i] {
    background: #e9ecef;
    color: #212529;
}

.connection-status[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.6875rem;
    color: #6c757d;
}

.status-indicator[b-5q8ab0u77i] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #28a745;
    flex-shrink: 0;
}

.status-indicator.connected[b-5q8ab0u77i] {
    background: #28a745;
}

.status-indicator.connecting[b-5q8ab0u77i] {
    background: #ffc107;
    animation: statusPulse-b-5q8ab0u77i 2s infinite;
}

.status-indicator.disconnected[b-5q8ab0u77i] {
    background: #dc3545;
}

@keyframes statusPulse-b-5q8ab0u77i {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

.online-counter[b-5q8ab0u77i] {
    margin-left: auto;
    font-weight: 500;
    color: #212529;
}

.search-section[b-5q8ab0u77i] {
    padding: 0.625rem;
    border-bottom: 1px solid #e9ecef;
    flex-shrink: 0;
}

.search-wrapper[b-5q8ab0u77i] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-icon[b-5q8ab0u77i] {
    position: absolute;
    left: 0.625rem;
    color: #6c757d;
    z-index: 1;
    width: 12px;
    height: 12px;
}

.search-input[b-5q8ab0u77i] {
    width: 100%;
    padding: 0.5rem 0.625rem 0.5rem 2rem;
    border: 1px solid #e9ecef;
    border-radius: 16px;
    font-size: 0.75rem;
    background: #f8f9fa;
    outline: none;
    transition: all 0.2s ease;
}

.search-input:focus[b-5q8ab0u77i] {
    border-color: #667eea;
    background: #ffffff;
    box-shadow: 0 0 0 2px rgba(102, 126, 234, 0.1);
}

.search-clear[b-5q8ab0u77i] {
    position: absolute;
    right: 0.375rem;
    background: none;
    border: none;
    color: #6c757d;
    cursor: pointer;
    padding: 0.125rem;
    border-radius: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-clear:hover[b-5q8ab0u77i] {
    background: #e9ecef;
}

.contacts-section[b-5q8ab0u77i] {
    flex: 1;
    overflow-y: auto;
    padding: 0.25rem 0;
    min-height: 0;
}

.contact-item[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    transition: all 0.2s ease;
    border-left: 3px solid transparent;
    gap: 0.5rem;
}

.contact-item:hover[b-5q8ab0u77i] {
    background: #f8f9fa;
}

.contact-item.active[b-5q8ab0u77i] {
    background: #e7f1ff;
    border-left-color: #667eea;
}

.contact-item.unread[b-5q8ab0u77i] {
    background: #f0f8ff;
}

.contact-avatar[b-5q8ab0u77i] {
    position: relative;
    flex-shrink: 0;
}

.avatar-container[b-5q8ab0u77i] {
    position: relative;
}

.avatar-circle[b-5q8ab0u77i] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.75rem;
    color: #ffffff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.avatar-initials[b-5q8ab0u77i] {
    font-size: 0.75rem;
    font-weight: 600;
}

.status-dot[b-5q8ab0u77i] {
    position: absolute;
    bottom: 1px;
    right: 1px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 2px solid #ffffff;
}

.status-dot.online[b-5q8ab0u77i] {
    background: #28a745;
}

.status-dot.offline[b-5q8ab0u77i] {
    background: #6c757d;
}

.contact-details[b-5q8ab0u77i] {
    flex: 1;
    min-width: 0;
}

.contact-header[b-5q8ab0u77i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.125rem;
}

.contact-name[b-5q8ab0u77i] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #212529;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    margin-right: 0.375rem;
}

.contact-meta[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
}

.last-time[b-5q8ab0u77i] {
    font-size: 0.625rem;
    color: #6c757d;
}

.unread-count[b-5q8ab0u77i] {
    background: #667eea;
    color: #ffffff;
    font-size: 0.5625rem;
    font-weight: 600;
    padding: 0.0625rem 0.25rem;
    border-radius: 8px;
    min-width: 14px;
    text-align: center;
    line-height: 1;
}

.contact-preview[b-5q8ab0u77i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.last-message[b-5q8ab0u77i] {
    font-size: 0.6875rem;
    color: #6c757d;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    margin-right: 0.375rem;
}

.user-status[b-5q8ab0u77i] {
    font-size: 0.625rem;
    font-weight: 500;
    flex-shrink: 0;
}

.user-status.online[b-5q8ab0u77i] {
    color: #28a745;
}

.user-status.offline[b-5q8ab0u77i] {
    color: #6c757d;
}

.chat-main[b-5q8ab0u77i] {
    flex: 1;
    display: flex;
    flex-direction: column;
    background: #f8f9fa;
    min-width: 0;
    width: 100%;
    min-height: 0;
    height: 100%;
    overflow: hidden;
    position: relative;
    z-index: 0;
}

.chat-main.has-conversation[b-5q8ab0u77i] {
    display: flex;
}

.chat-header[b-5q8ab0u77i] {
    padding: 0.625rem 0.875rem;
    background: #ffffff;
    border-bottom: 1px solid #e9ecef;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 48px;
    flex-shrink: 0;
}

.chat-user-info[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 1;
    min-width: 0;
}

.back-button[b-5q8ab0u77i] {
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: #6c757d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.back-button:hover[b-5q8ab0u77i] {
    background: #f8f9fa;
    color: #212529;
}

.chat-avatar .avatar-circle[b-5q8ab0u77i] {
    width: 32px;
    height: 32px;
    font-size: 0.75rem;
}

.user-details[b-5q8ab0u77i] {
    flex: 1;
    min-width: 0;
}

.user-details .user-name[b-5q8ab0u77i] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #212529;
    margin: 0 0 0.0625rem 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-details .user-email[b-5q8ab0u77i] {
    font-size: 0.6875rem;
    color: #6c757d;
    margin: 0;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-details .user-status[b-5q8ab0u77i] {
    font-size: 0.6875rem;
    margin: 0;
    line-height: 1.2;
}

.user-details .user-status.online[b-5q8ab0u77i] {
    color: #28a745;
    font-weight: 500;
}

.chat-actions[b-5q8ab0u77i] {
    display: flex;
    gap: 0.375rem;
    flex-shrink: 0;
}

.action-btn[b-5q8ab0u77i] {
    width: 28px;
    height: 28px;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    background: #ffffff;
    color: #6c757d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.action-btn:hover:not(.disabled)[b-5q8ab0u77i] {
    background: #f8f9fa;
    border-color: #667eea;
    color: #667eea;
}

.action-btn.disabled[b-5q8ab0u77i] {
    opacity: 0.5;
    cursor: not-allowed;
}

.messages-area[b-5q8ab0u77i] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    background: #f8f9fa;
    padding: 0.375rem 0;
    min-height: 0;
    max-height: calc(100vh - 200px);
    position: relative;
    z-index: 1;
    contain: layout style paint;
}

.messages-list[b-5q8ab0u77i] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    justify-content: flex-end;
    overflow: hidden;
}

.message-item[b-5q8ab0u77i] {
    display: flex;
    margin-bottom: 0.5rem;
    padding: 0 0.875rem;
    align-items: flex-start;
    gap: 0.5rem;
    flex-shrink: 0;
    width: 100%;
    box-sizing: border-box;
}

.message-item.sent[b-5q8ab0u77i] {
    flex-direction: row-reverse;
    justify-content: flex-start;
}

.message-item.received[b-5q8ab0u77i] {
    flex-direction: row;
    justify-content: flex-start;
}

.message-avatar[b-5q8ab0u77i] {
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.message-avatar .avatar-circle[b-5q8ab0u77i] {
    width: 24px;
    height: 24px;
    font-size: 0.625rem;
}

.message-content[b-5q8ab0u77i] {
    max-width: 75%;
    min-width: 100px;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.message-bubble[b-5q8ab0u77i] {
    padding: 0.5rem 0.75rem;
    border-radius: 12px;
    word-wrap: break-word;
    overflow-wrap: break-word;
    position: relative;
    max-width: 100%;
    box-sizing: border-box;
}

.message-bubble.sent[b-5q8ab0u77i] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
    border-bottom-right-radius: 3px;
    margin-left: 0.75rem;
}

.message-bubble.received[b-5q8ab0u77i] {
    background: #f1f3f5;
    color: #333;
    border-bottom-left-radius: 3px;
    margin-right: 0.75rem;
}

.message-bubble.sent.unread[b-5q8ab0u77i] {
    background: linear-gradient(135deg, #9ca3af 0%, #6b7280 100%);
    opacity: 0.8;
}

.message-bubble.received.unread[b-5q8ab0u77i] {
    background: #fef3c7;
    border-left: 3px solid #f59e0b;
    color: #333;
}

.message-text[b-5q8ab0u77i] {
    margin: 0;
    line-height: 1.3;
    font-size: 0.75rem;
    word-break: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    max-width: 100%;
    overflow: hidden;
}

.message-footer[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: 0.125rem;
    gap: 0.125rem;
}

.message-time[b-5q8ab0u77i] {
    font-size: 0.625rem;
    opacity: 0.7;
}

.message-status-container[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    margin-left: 0.25rem;
}

.message-status[b-5q8ab0u77i] {
    opacity: 0.8;
    width: 10px;
    height: 8px;
}

.message-status.read[b-5q8ab0u77i] {
    color: #28a745;
}

.message-status.unread[b-5q8ab0u77i] {
    color: #6c757d;
}

.message-bubble.received .message-footer[b-5q8ab0u77i] {
    justify-content: flex-start;
}

.empty-chat[b-5q8ab0u77i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    color: #6c757d;
    padding: 1.5rem 0.875rem;
}

.empty-icon[b-5q8ab0u77i] {
    margin-bottom: 0.75rem;
    opacity: 0.5;
}

.empty-icon svg[b-5q8ab0u77i] {
    width: 48px;
    height: 48px;
}

.empty-chat h3[b-5q8ab0u77i] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #212529;
    margin: 0 0 0.375rem 0;
}

.empty-chat p[b-5q8ab0u77i] {
    font-size: 0.75rem;
    margin: 0;
}

.input-area[b-5q8ab0u77i] {
    padding: 0.625rem 0.875rem;
    background: #ffffff;
    border-top: 1px solid #e9ecef;
    flex-shrink: 0;
    min-height: 48px;
    position: relative;
    z-index: 10;
}

.input-wrapper[b-5q8ab0u77i] {
    display: flex;
    align-items: flex-end;
    gap: 0.5rem;
    max-width: 100%;
}

.attach-btn[b-5q8ab0u77i] {
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 6px;
    background: #f8f9fa;
    color: #6c757d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.attach-btn:hover[b-5q8ab0u77i] {
    background: #e9ecef;
    color: #212529;
}

.text-input-container[b-5q8ab0u77i] {
    flex: 1;
    position: relative;
    display: flex;
    align-items: flex-end;
    background: #f8f9fa;
    border-radius: 16px;
    border: 1px solid #e9ecef;
    transition: all 0.2s ease;
    min-height: 32px;
}

.text-input-container:focus-within[b-5q8ab0u77i] {
    border-color: #667eea;
    background: #ffffff;
    box-shadow: 0 0 0 2px rgba(102, 126, 234, 0.1);
}

.message-input[b-5q8ab0u77i] {
    flex: 1;
    border: none;
    background: transparent;
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    line-height: 1.3;
    resize: none;
    outline: none;
    min-height: 18px;
    max-height: 80px;
    font-family: inherit;
}

.emoji-btn[b-5q8ab0u77i] {
    background: none;
    border: none;
    color: #6c757d;
    cursor: pointer;
    padding: 0.375rem 0.5rem;
    border-radius: 6px;
    transition: all 0.2s ease;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.emoji-btn:hover[b-5q8ab0u77i] {
    background: #e9ecef;
    color: #212529;
}

.send-btn[b-5q8ab0u77i] {
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 6px;
    background: #e9ecef;
    color: #6c757d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.send-btn.active[b-5q8ab0u77i] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
}

.send-btn:disabled[b-5q8ab0u77i] {
    cursor: not-allowed;
    opacity: 0.6;
}

.welcome-screen[b-5q8ab0u77i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    color: #6c757d;
    padding: 1.5rem 0.875rem;
}

.welcome-icon[b-5q8ab0u77i] {
    margin-bottom: 1rem;
    opacity: 0.3;
}

.welcome-icon svg[b-5q8ab0u77i] {
    width: 64px;
    height: 64px;
}

.welcome-screen h2[b-5q8ab0u77i] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #212529;
    margin: 0 0 0.5rem 0;
}

.welcome-screen p[b-5q8ab0u77i] {
    font-size: 0.875rem;
    margin: 0 0 1rem 0;
}

.online-info[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.online-indicator[b-5q8ab0u77i] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: #f8f9fa;
    border-radius: 16px;
    font-size: 0.75rem;
    color: #212529;
}

.mobile-only[b-5q8ab0u77i] {
    display: flex;
}

.desktop-only[b-5q8ab0u77i] {
    display: none;
}

.contacts-section[b-5q8ab0u77i],
.messages-area[b-5q8ab0u77i] {
    scrollbar-width: thin;
    scrollbar-color: #e9ecef transparent;
}

.contacts-section[b-5q8ab0u77i]::-webkit-scrollbar,
.messages-area[b-5q8ab0u77i]::-webkit-scrollbar {
    width: 4px;
}

.contacts-section[b-5q8ab0u77i]::-webkit-scrollbar-track,
.messages-area[b-5q8ab0u77i]::-webkit-scrollbar-track {
    background: transparent;
}

.contacts-section[b-5q8ab0u77i]::-webkit-scrollbar-thumb,
.messages-area[b-5q8ab0u77i]::-webkit-scrollbar-thumb {
    background: #e9ecef;
    border-radius: 2px;
}

.contacts-section[b-5q8ab0u77i]::-webkit-scrollbar-thumb:hover,
.messages-area[b-5q8ab0u77i]::-webkit-scrollbar-thumb:hover {
    background: #ced4da;
}

.contacts-section[b-5q8ab0u77i]::-webkit-scrollbar-corner,
.messages-area[b-5q8ab0u77i]::-webkit-scrollbar-corner {
    background: transparent;
}

@media screen and (min-width: 768px) {
    .mobile-header[b-5q8ab0u77i] {
        display: none;
    }

    .chat-wrapper[b-5q8ab0u77i] {
        height: 100vh;
        min-height: 600px;
        max-height: 100vh;
        background: #f8f9fa;
        overflow: hidden;
        position: relative;
        display: flex;
        flex-direction: column;
    }

    .sidebar[b-5q8ab0u77i] {
        position: static;
        transform: none;
        width: 280px;
        min-width: 280px;
        height: 100%;
        border-right: 1px solid #e9ecef;
    }

    .sidebar-overlay[b-5q8ab0u77i] {
        display: none;
    }

    .sidebar-content[b-5q8ab0u77i] {
        width: 100%;
        max-width: none;
        box-shadow: none;
        height: 100%;
    }

    .mobile-only[b-5q8ab0u77i] {
        display: none;
    }

    .desktop-only[b-5q8ab0u77i] {
        display: flex;
    }

    .brand-logo svg[b-5q8ab0u77i] {
        width: 20px;
        height: 20px;
    }

    .brand-title[b-5q8ab0u77i] {
        font-size: 0.875rem;
    }

    .search-icon[b-5q8ab0u77i] {
        width: 14px;
        height: 14px;
    }

    .avatar-circle[b-5q8ab0u77i] {
        width: 36px !important;
        height: 36px !important;
        font-size: 0.8125rem !important;
    }

    .contact-name[b-5q8ab0u77i] {
        font-size: 0.8125rem;
    }

    .last-message[b-5q8ab0u77i] {
        font-size: 0.75rem;
    }

    .message-avatar .avatar-circle[b-5q8ab0u77i] {
        width: 26px !important;
        height: 26px !important;
        font-size: 0.6875rem !important;
    }

    .message-content[b-5q8ab0u77i] {
        max-width: 70%;
    }

    .message-text[b-5q8ab0u77i] {
        font-size: 0.8125rem;
        word-break: break-word;
        overflow-wrap: break-word;
        hyphens: auto;
        max-width: 100%;
        overflow: hidden;
    }

    .chat-header[b-5q8ab0u77i] {
        padding: 0.75rem 1rem;
        min-height: 56px;
    }

    .input-area[b-5q8ab0u77i] {
        padding: 0.75rem 1rem;
        min-height: 56px;
    }

    .messages-area[b-5q8ab0u77i] {
        padding: 0.5rem 0;
        flex: 1;
        min-height: 200px;
        max-height: calc(100vh - 180px);
        overflow-y: auto;
        overflow-x: hidden;
        position: relative;
        z-index: 1;
        contain: layout style paint;
    }

    .welcome-icon svg[b-5q8ab0u77i] {
        width: 80px;
        height: 80px;
    }

    .empty-icon svg[b-5q8ab0u77i] {
        width: 60px;
        height: 60px;
    }
}

@media screen and (min-width: 1280px) and (max-height: 720px) {
    .chat-wrapper[b-5q8ab0u77i] {
        height: 100vh;
        min-height: 600px;
        max-height: 100vh;
        background: #f8f9fa;
        overflow: hidden;
        position: relative;
        display: flex;
        flex-direction: column;
    }

    .chat-container[b-5q8ab0u77i] {
        height: 100% !important;
        overflow: hidden !important;
        margin: 0 auto !important;
        isolation: isolate !important;
        contain: layout style !important;
    }

    .sidebar[b-5q8ab0u77i] {
        width: 240px !important;
        min-width: 240px !important;
        height: 100% !important;
        overflow: hidden !important;
    }

    .sidebar-content[b-5q8ab0u77i] {
        height: 100% !important;
        overflow: hidden !important;
    }

    .chat-main[b-5q8ab0u77i] {
        height: 100% !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
        width: calc(100% - 240px) !important;
        position: relative !important;
        z-index: 0 !important;
        contain: layout style !important;
    }

    .sidebar-header[b-5q8ab0u77i] {
        padding: 0.5rem 0.75rem !important;
        flex-shrink: 0 !important;
        min-height: 40px !important;
    }

    .header-content[b-5q8ab0u77i] {
        margin-bottom: 0.25rem !important;
    }

    .brand-logo svg[b-5q8ab0u77i] {
        width: 16px !important;
        height: 16px !important;
    }

    .brand-title[b-5q8ab0u77i] {
        font-size: 0.75rem !important;
        font-weight: 600 !important;
    }

    .connection-status[b-5q8ab0u77i] {
        font-size: 0.625rem !important;
        gap: 0.25rem !important;
    }

    .status-indicator[b-5q8ab0u77i] {
        width: 5px !important;
        height: 5px !important;
    }

    .search-section[b-5q8ab0u77i] {
        padding: 0.375rem 0.75rem !important;
        flex-shrink: 0 !important;
    }

    .search-input[b-5q8ab0u77i] {
        padding: 0.375rem 0.5rem 0.375rem 1.5rem !important;
        font-size: 0.6875rem !important;
        height: 28px !important;
    }

    .search-icon[b-5q8ab0u77i] {
        width: 10px !important;
        height: 10px !important;
        left: 0.5rem !important;
    }

    .contacts-section[b-5q8ab0u77i] {
        flex: 1 !important;
        overflow-y: auto !important;
        padding: 0.125rem 0 !important;
        min-height: 0 !important;
    }

    .contact-item[b-5q8ab0u77i] {
        padding: 0.375rem 0.75rem !important;
        gap: 0.375rem !important;
    }

    .avatar-circle[b-5q8ab0u77i] {
        width: 28px !important;
        height: 28px !important;
        font-size: 0.6875rem !important;
    }

    .status-dot[b-5q8ab0u77i] {
        width: 6px !important;
        height: 6px !important;
        border: 1px solid #ffffff !important;
        bottom: 0 !important;
        right: 0 !important;
    }

    .contact-name[b-5q8ab0u77i] {
        font-size: 0.6875rem !important;
        font-weight: 600 !important;
    }

    .last-message[b-5q8ab0u77i] {
        font-size: 0.625rem !important;
    }

    .last-time[b-5q8ab0u77i] {
        font-size: 0.5625rem !important;
    }

    .user-status[b-5q8ab0u77i] {
        font-size: 0.5625rem !important;
    }

    .unread-count[b-5q8ab0u77i] {
        font-size: 0.5rem !important;
        padding: 0.0625rem 0.1875rem !important;
        min-width: 12px !important;
    }

    .chat-header[b-5q8ab0u77i] {
        padding: 0.5rem 0.75rem !important;
        min-height: 40px !important;
        flex-shrink: 0 !important;
    }

    .chat-avatar .avatar-circle[b-5q8ab0u77i] {
        width: 28px !important;
        height: 28px !important;
        font-size: 0.6875rem !important;
    }

    .user-details .user-name[b-5q8ab0u77i] {
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        margin-bottom: 0 !important;
    }

    .user-details .user-email[b-5q8ab0u77i] {
        font-size: 0.625rem !important;
        line-height: 1.1 !important;
    }

    .user-details .user-status[b-5q8ab0u77i] {
        font-size: 0.625rem !important;
        line-height: 1.1 !important;
    }

    .action-btn[b-5q8ab0u77i] {
        width: 24px !important;
        height: 24px !important;
    }

    .messages-area[b-5q8ab0u77i] {
        flex: 1 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        padding: 0.25rem 0 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: calc(100vh - 120px) !important;
        position: relative !important;
        z-index: 1 !important;
        contain: layout style paint !important;
    }

    .messages-list[b-5q8ab0u77i] {
        overflow: hidden !important;
        contain: layout !important;
    }

    .message-item[b-5q8ab0u77i] {
        margin-bottom: 0.375rem !important;
        padding: 0 0.75rem !important;
        gap: 0.375rem !important;
        flex-shrink: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .message-avatar .avatar-circle[b-5q8ab0u77i] {
        width: 20px !important;
        height: 20px !important;
        font-size: 0.5625rem !important;
    }

    .message-bubble[b-5q8ab0u77i] {
        padding: 0.375rem 0.5rem !important;
        border-radius: 8px !important;
    }

    .message-bubble.sent[b-5q8ab0u77i] {
        border-bottom-right-radius: 2px !important;
        margin-left: 0.5rem !important;
    }

    .message-bubble.received[b-5q8ab0u77i] {
        border-bottom-left-radius: 2px !important;
        margin-right: 0.5rem !important;
    }

    .message-text[b-5q8ab0u77i] {
        font-size: 0.6875rem !important;
        line-height: 1.2 !important;
        word-break: break-word !important;
        overflow-wrap: break-word !important;
        hyphens: auto !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .message-time[b-5q8ab0u77i] {
        font-size: 0.5625rem !important;
    }

    .message-status[b-5q8ab0u77i] {
        width: 8px !important;
        height: 6px !important;
    }

    .message-content[b-5q8ab0u77i] {
        max-width: 70% !important;
        min-width: 80px !important;
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        overflow: hidden !important;
    }

    .input-area[b-5q8ab0u77i] {
        padding: 0.5rem 0.75rem !important;
        min-height: 40px !important;
        flex-shrink: 0 !important;
        position: relative !important;
        z-index: 10 !important;
        background: #ffffff !important;
        border-top: 1px solid #e9ecef !important;
    }

    .input-wrapper[b-5q8ab0u77i] {
        gap: 0.375rem !important;
    }

    .text-input-container[b-5q8ab0u77i] {
        min-height: 28px !important;
        border-radius: 14px !important;
    }

    .message-input[b-5q8ab0u77i] {
        padding: 0.25rem 0.5rem !important;
        font-size: 0.6875rem !important;
        min-height: 16px !important;
        max-height: 60px !important;
        line-height: 1.2 !important;
    }

    .attach-btn[b-5q8ab0u77i],
    .send-btn[b-5q8ab0u77i] {
        width: 24px !important;
        height: 24px !important;
    }

    .emoji-btn[b-5q8ab0u77i] {
        padding: 0.25rem 0.375rem !important;
    }

    .welcome-screen[b-5q8ab0u77i],
    .empty-chat[b-5q8ab0u77i] {
        padding: 1rem 0.75rem !important;
    }

    .welcome-screen h2[b-5q8ab0u77i] {
        font-size: 0.875rem !important;
        margin-bottom: 0.375rem !important;
    }

    .welcome-screen p[b-5q8ab0u77i] {
        font-size: 0.75rem !important;
        margin-bottom: 0.75rem !important;
    }

    .welcome-icon svg[b-5q8ab0u77i] {
        width: 48px !important;
        height: 48px !important;
    }

    .empty-icon svg[b-5q8ab0u77i] {
        width: 36px !important;
        height: 36px !important;
    }

    .empty-chat h3[b-5q8ab0u77i] {
        font-size: 0.75rem !important;
        margin-bottom: 0.25rem !important;
    }

    .empty-chat p[b-5q8ab0u77i] {
        font-size: 0.6875rem !important;
    }

    .online-indicator[b-5q8ab0u77i] {
        padding: 0.25rem 0.5rem !important;
        font-size: 0.6875rem !important;
        gap: 0.25rem !important;
    }

    .header-btn[b-5q8ab0u77i] {
        width: 20px !important;
        height: 20px !important;
    }

    *[b-5q8ab0u77i] {
        scrollbar-width: thin !important;
    }

    .contacts-section[b-5q8ab0u77i],
    .messages-area[b-5q8ab0u77i] {
        scrollbar-color: #d1d5db transparent !important;
    }

    .contacts-section[b-5q8ab0u77i]::-webkit-scrollbar,
    .messages-area[b-5q8ab0u77i]::-webkit-scrollbar {
        width: 3px !important;
    }

    .contacts-section[b-5q8ab0u77i]::-webkit-scrollbar-thumb,
    .messages-area[b-5q8ab0u77i]::-webkit-scrollbar-thumb {
        background: #d1d5db !important;
        border-radius: 1.5px !important;
    }

    .contacts-section[b-5q8ab0u77i]::-webkit-scrollbar-corner,
    .messages-area[b-5q8ab0u77i]::-webkit-scrollbar-corner {
        background: transparent !important;
    }
}

@media (min-width: 1024px) {
    .chat-wrapper[b-5q8ab0u77i] {
        height: 100vh;
        min-height: 600px;
        max-height: 100vh;
        background: #f8f9fa;
        overflow: hidden;
        position: relative;
        display: flex;
        flex-direction: column;
    }

    .chat-container[b-5q8ab0u77i] {
        margin: 0 auto;
        box-shadow: 0 4px 24px rgba(0, 0, 0, 0.1);
        height: 100%;
    }

    .sidebar[b-5q8ab0u77i] {
        width: 300px;
        min-width: 300px;
        height: 100%;
    }

    .sidebar-header[b-5q8ab0u77i] {
        padding: 1rem 1.25rem;
    }

    .search-section[b-5q8ab0u77i] {
        padding: 0.75rem 1.25rem;
    }

    .contact-item[b-5q8ab0u77i] {
        padding: 0.75rem 1.25rem;
    }

    .chat-header[b-5q8ab0u77i] {
        padding: 1rem 1.25rem;
        min-height: 68px;
    }

    .input-area[b-5q8ab0u77i] {
        padding: 1rem 1.25rem;
        min-height: 68px;
    }

    .message-item[b-5q8ab0u77i] {
        padding: 0 1.25rem;
        margin-bottom: 1rem;
    }

    .messages-area[b-5q8ab0u77i] {
        padding: 0.75rem 0;
        flex: 1;
        min-height: 250px;
    }

    .action-btn[b-5q8ab0u77i] {
        width: 32px;
        height: 32px;
    }

    .attach-btn[b-5q8ab0u77i],
    .send-btn[b-5q8ab0u77i] {
        width: 32px;
        height: 32px;
    }

    .message-content[b-5q8ab0u77i] {
        max-width: 68%;
        word-wrap: break-word;
        overflow-wrap: break-word;
        overflow: hidden;
    }
}

@media screen and (min-width: 1280px) and (min-height: 800px) {
    .chat-wrapper[b-5q8ab0u77i] {
        height: 100vh;
        min-height: 600px;
        max-height: 100vh;
        background: #f8f9fa;
        overflow: hidden;
        position: relative;
        display: flex;
        flex-direction: column;
    }

    .chat-container[b-5q8ab0u77i] {
        height: 100%;
    }

    .sidebar[b-5q8ab0u77i] {
        width: 350px;
        min-width: 350px;
    }

    .brand-logo svg[b-5q8ab0u77i] {
        width: 24px;
        height: 24px;
    }

    .brand-title[b-5q8ab0u77i] {
        font-size: 1rem;
    }

    .contact-name[b-5q8ab0u77i] {
        font-size: 0.875rem;
    }

    .last-message[b-5q8ab0u77i] {
        font-size: 0.8125rem;
    }

    .user-details .user-name[b-5q8ab0u77i] {
        font-size: 1rem;
    }

    .user-details .user-email[b-5q8ab0u77i] {
        font-size: 0.75rem;
    }

    .message-text[b-5q8ab0u77i] {
        font-size: 0.875rem;
        word-break: break-word;
        overflow-wrap: break-word;
        hyphens: auto;
        max-width: 100%;
        overflow: hidden;
    }

    .welcome-screen h2[b-5q8ab0u77i] {
        font-size: 1.5rem;
    }

    .welcome-screen p[b-5q8ab0u77i] {
        font-size: 1rem;
    }

    .welcome-icon svg[b-5q8ab0u77i] {
        width: 120px;
        height: 120px;
    }

    .chat-header[b-5q8ab0u77i] {
        padding: 1.125rem 1.5rem;
        min-height: 76px;
    }

    .input-area[b-5q8ab0u77i] {
        padding: 1.125rem 1.5rem;
        min-height: 76px;
    }

    .messages-area[b-5q8ab0u77i] {
        padding: 1rem 0;
        flex: 1;
        min-height: 300px;
        max-height: calc(100vh - 220px);
        overflow-y: auto;
        overflow-x: hidden;
        position: relative;
        z-index: 1;
        contain: layout style paint;
    }
}

@media (hover: none) and (pointer: coarse) {
    .contact-item[b-5q8ab0u77i],
    .header-btn[b-5q8ab0u77i],
    .action-btn[b-5q8ab0u77i],
    .attach-btn[b-5q8ab0u77i],
    .send-btn[b-5q8ab0u77i],
    .emoji-btn[b-5q8ab0u77i],
    .search-clear[b-5q8ab0u77i],
    .menu-toggle[b-5q8ab0u77i],
    .back-button[b-5q8ab0u77i] {
        min-height: 44px;
    }

    .contact-item[b-5q8ab0u77i] {
        padding: 1rem 1.25rem;
    }

    .action-btn[b-5q8ab0u77i],
    .attach-btn[b-5q8ab0u77i],
    .send-btn[b-5q8ab0u77i] {
        width: 44px;
        height: 44px;
    }
}

@media (prefers-reduced-motion: reduce) {
    *[b-5q8ab0u77i] {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    .sidebar[b-5q8ab0u77i] {
        transition: none;
    }

    .status-indicator.connecting[b-5q8ab0u77i] {
        animation: none;
    }
}
/* _content/Evolve.Web/Components/Pages/UserPages/UploadFile.razor.rz.scp.css */

/* moved from UploadFile.razor */
.item .icon[b-2xcnvrp7bk] { font-size: 16px; width: 20px; text-align: center; }
.item .name[b-2xcnvrp7bk] { flex: 1; font-size: 14px; color: #212529; }
.item .size[b-2xcnvrp7bk] { font-size: 12px; color: #6c757d; font-family: monospace; }
.selected-indicator[b-2xcnvrp7bk] { color: #4caf50; font-weight: bold; font-size: 16px; margin-left: auto; }
.loading[b-2xcnvrp7bk] { text-align: center; padding: 40px; color: #6c757d; font-size: 14px; }
.empty[b-2xcnvrp7bk] { text-align: center; padding: 40px; color: #6c757d; font-size: 14px; }
.upload-dialog[b-2xcnvrp7bk] { border-radius: 8px !important; }
.upload-dialog-content[b-2xcnvrp7bk] { padding: 20px; }
.upload-info[b-2xcnvrp7bk] { background-color: #e3f2fd; padding: 10px; border-radius: 4px; margin-bottom: 20px; font-size: 14px; color: #1565c0; }
.upload-section[b-2xcnvrp7bk] { margin-bottom: 20px; }
.upload-zone[b-2xcnvrp7bk] { border: 2px dashed #d1d5db; border-radius: 8px; padding: 30px 20px; text-align: center; cursor: pointer; transition: all 0.3s ease; background: #f9fafb; }
.upload-zone:hover[b-2xcnvrp7bk] { border-color: #4f46e5; background: #f0f9ff; }
.upload-icon[b-2xcnvrp7bk] { font-size: 2rem; margin-bottom: 10px; }
.upload-title[b-2xcnvrp7bk] { color: #374151; font-size: 1.1rem; font-weight: 600; margin: 0 0 8px 0; }
.upload-description[b-2xcnvrp7bk] { color: #6b7280; font-size: 0.9rem; margin: 0 0 8px 0; }
.upload-limits[b-2xcnvrp7bk] { color: #9ca3af; font-size: 0.8rem; margin: 0; }
.selected-files-section[b-2xcnvrp7bk] { background: #f8fafc; border-radius: 8px; padding: 15px; margin-bottom: 15px; }
.files-header[b-2xcnvrp7bk] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; padding-bottom: 8px; border-bottom: 1px solid #e5e7eb; }
.files-title[b-2xcnvrp7bk] { color: #374151; font-size: 0.9rem; font-weight: 600; margin: 0; }
.files-size[b-2xcnvrp7bk] { color: #6b7280; font-size: 0.8rem; font-weight: 500; }
.files-list[b-2xcnvrp7bk] { max-height: 150px; overflow-y: auto; }
.file-item[b-2xcnvrp7bk] { display: flex; align-items: center; justify-content: space-between; padding: 6px 0; border-bottom: 1px solid #e5e7eb; }
.file-item:last-child[b-2xcnvrp7bk] { border-bottom: none; }
.file-info[b-2xcnvrp7bk] { display: flex; align-items: center; gap: 10px; flex: 1; }
.file-icon[b-2xcnvrp7bk] { font-size: 1.1rem; }
.file-details[b-2xcnvrp7bk] { display: flex; flex-direction: column; gap: 2px; }
.file-name[b-2xcnvrp7bk] { color: #374151; font-weight: 500; font-size: 0.85rem; }
.file-size[b-2xcnvrp7bk] { color: #6b7280; font-size: 0.75rem; }
.error-section[b-2xcnvrp7bk] { margin-top: 15px; }
.upload-progress-section[b-2xcnvrp7bk] { background: #f0f9ff; border: 1px solid #bae6fd; border-radius: 8px; padding: 15px; margin-top: 15px; }
.progress-header[b-2xcnvrp7bk] { margin-bottom: 10px; }
.progress-text[b-2xcnvrp7bk] { color: #1e40af; font-weight: 500; font-size: 0.9rem; }
.upload-step-info[b-2xcnvrp7bk] { background-color: #e0f2fe; padding: 10px 15px; border-radius: 6px; margin-bottom: 20px; border-left: 4px solid #0288d1; }
.upload-step-info h5[b-2xcnvrp7bk] { margin: 0; color: #01579b; font-size: 1rem; font-weight: 600; }
.storage-selection[b-2xcnvrp7bk], .folder-selection[b-2xcnvrp7bk] { margin-bottom: 20px; }
.form-label[b-2xcnvrp7bk] { font-weight: 600; color: #374151; margin-bottom: 10px; display: block; }
.storage-options[b-2xcnvrp7bk], .folder-options[b-2xcnvrp7bk] { display: flex; flex-direction: column; gap: 8px; max-height: 200px; overflow-y: auto; }
.storage-option[b-2xcnvrp7bk], .folder-option[b-2xcnvrp7bk] { display: flex; align-items: center; gap: 12px; padding: 12px 15px; border: 1px solid #e5e7eb; border-radius: 8px; cursor: pointer; transition: all 0.2s ease; background: white; }
.storage-option:hover[b-2xcnvrp7bk], .folder-option:hover[b-2xcnvrp7bk] { background-color: #f0f9ff; border-color: #3b82f6; transform: translateY(-1px); }
.storage-icon[b-2xcnvrp7bk], .folder-icon[b-2xcnvrp7bk] { font-size: 1.2rem; }
.storage-name[b-2xcnvrp7bk], .folder-name[b-2xcnvrp7bk] { font-weight: 500; color: #374151; }
.selection-header[b-2xcnvrp7bk] { margin-bottom: 15px; }
.loading-small[b-2xcnvrp7bk] { text-align: center; padding: 20px; color: #6b7280; font-style: italic; }
.no-folders[b-2xcnvrp7bk] { text-align: center; padding: 30px; color: #9ca3af; font-style: italic; }
.upload-ready-section[b-2xcnvrp7bk] { }
.upload-destination[b-2xcnvrp7bk] { background-color: #ecfdf5; border: 1px solid #a7f3d0; padding: 10px 15px; border-radius: 6px; margin-bottom: 20px; color: #065f46; font-size: 0.9rem; }
@media (max-width: 768px){
  .simple-dialog[b-2xcnvrp7bk]{ width:90% !important; height:80% !important; }
  .upload-dialog[b-2xcnvrp7bk]{ width:90% !important; height:70% !important; }
  .nav-bar[b-2xcnvrp7bk]{ padding:8px; flex-direction:column; align-items:stretch; gap:8px; }
  .breadcrumb[b-2xcnvrp7bk]{ justify-content:center; font-size:12px; }
  .corner-buttons[b-2xcnvrp7bk]{ justify-content:center; flex-wrap:wrap; }
  .corner-btn[b-2xcnvrp7bk]{ font-size:.75rem !important; padding:6px 10px !important; }
  .item[b-2xcnvrp7bk]{ padding:12px; }
  .item .name[b-2xcnvrp7bk]{ font-size:16px; }
  .upload-zone[b-2xcnvrp7bk]{ padding:20px 15px; }
  .files-grid[b-2xcnvrp7bk]{ grid-template-columns:repeat(auto-fill,minmax(100px,1fr)); gap:8px; }
  .file-card[b-2xcnvrp7bk]{ min-height:70px; padding:8px; }
  .file-card-name[b-2xcnvrp7bk]{ font-size:.7rem; }
  .preview-actions[b-2xcnvrp7bk]{ flex-direction:column; align-items:center; }
}

/* Styles extracted from UploadFile.razor */
.file-upload-container[b-2xcnvrp7bk]{ display:flex; flex-direction:column; padding:15px; border-radius:8px; background-color:#f9fafb; border:1px solid #e5e7eb; margin-bottom:10px; }
.button-group[b-2xcnvrp7bk]{ display:flex; gap:8px; flex-wrap:wrap; }
.current-uploads[b-2xcnvrp7bk]{ padding:8px; background-color:#f8f9fa; border-radius:4px; border:1px solid #e9ecef; }
.selected-files-list[b-2xcnvrp7bk]{ max-height:150px; overflow-y:auto; background:#f8f9fa; border-radius:4px; padding:8px; border:1px solid #e9ecef; }
.selected-file-item[b-2xcnvrp7bk]{ display:flex; align-items:center; gap:8px; padding:4px 0; border-bottom:1px solid #e9ecef; }
.selected-file-item:last-child[b-2xcnvrp7bk]{ border-bottom:none; }
.selected-file-item .file-name[b-2xcnvrp7bk]{ flex:1; font-size:.85rem; color:#495057; }
.preview-header[b-2xcnvrp7bk]{ background:#f8f9fa; padding:8px 12px; border-radius:4px; margin-bottom:10px; border-left:3px solid #007bff; }
.preview-header h6[b-2xcnvrp7bk]{ margin:0; color:#495057; font-weight:600; }
.multi-file-preview[b-2xcnvrp7bk]{ background:#f8f9fa; border-radius:8px; padding:15px; border:1px solid #e9ecef; }
.files-grid[b-2xcnvrp7bk]{ display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:10px; margin-bottom:15px; }
.file-card[b-2xcnvrp7bk]{ background:white; border:1px solid #e9ecef; border-radius:6px; padding:10px; text-align:center; cursor:pointer; transition:all .2s ease; position:relative; min-height:80px; display:flex; flex-direction:column; justify-content:center; }
.file-card:hover[b-2xcnvrp7bk]{ border-color:#007bff; transform:translateY(-1px); box-shadow:0 2px 4px rgba(0,123,255,.1); }
.file-card-icon[b-2xcnvrp7bk]{ font-size:1.5rem; margin-bottom:5px; }
.file-card-name[b-2xcnvrp7bk]{ font-size:.75rem; color:#495057; line-height:1.2; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.preview-indicator[b-2xcnvrp7bk]{ position:absolute; top:5px; right:5px; background:#28a745; color:white; border-radius:50%; width:20px; height:20px; display:flex; align-items:center; justify-content:center; font-size:.7rem; }
.more-files-card[b-2xcnvrp7bk]{ background:#e9ecef; border:1px dashed #6c757d; border-radius:6px; padding:10px; text-align:center; display:flex; align-items:center; justify-content:center; min-height:80px; }
.more-files-content[b-2xcnvrp7bk]{ color:#6c757d; font-weight:500; }
.more-files-content span[b-2xcnvrp7bk]{ display:block; font-size:1.2rem; margin-bottom:2px; }
.current-preview[b-2xcnvrp7bk]{ border-top:1px solid #e9ecef; padding-top:15px; }
.preview-placeholder[b-2xcnvrp7bk]{ display:flex; align-items:center; justify-content:center; height:100%; background:#f8f9fa; border-radius:8px; border:2px dashed #e9ecef; }
.preview-placeholder-small[b-2xcnvrp7bk]{ display:flex; flex-direction:column; align-items:center; justify-content:center; height:100%; background:#f8f9fa; border-radius:8px; border:2px dashed #e9ecef; }
.placeholder-content[b-2xcnvrp7bk]{ text-align:center; color:#6c757d; padding:20px; }
.file-icon-large[b-2xcnvrp7bk]{ font-size:3rem; display:block; margin-bottom:10px; }
.placeholder-content h5[b-2xcnvrp7bk]{ color:#495057; margin:10px 0 5px 0; }
.preview-actions[b-2xcnvrp7bk]{ margin-top:15px; display:flex; gap:8px; justify-content:center; flex-wrap:wrap; }
.document-viewer-placeholder[b-2xcnvrp7bk]{ display:flex; align-items:center; justify-content:center; height:100%; background:#f8f9fa; border-radius:8px; border:2px dashed #e9ecef; }
.image-viewer[b-2xcnvrp7bk]{ display:flex; align-items:center; justify-content:center; background:white; border-radius:4px; padding:10px; }
.image-viewer img[b-2xcnvrp7bk]{ border-radius:4px; box-shadow:0 2px 4px rgba(0,0,0,.1); }
.text-viewer[b-2xcnvrp7bk]{ background:white; border-radius:4px; }
.simple-dialog[b-2xcnvrp7bk]{ border-radius:8px !important; }
.simple-manager[b-2xcnvrp7bk]{ display:flex; flex-direction:column; height:100%; font-family:system-ui,-apple-system,sans-serif; }
.nav-bar[b-2xcnvrp7bk]{ padding:10px; background-color:#f8f9fa; border-bottom:1px solid #e9ecef; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
.breadcrumb[b-2xcnvrp7bk]{ display:flex; align-items:center; gap:5px; font-size:14px; flex:1; min-width:0; }
.corner-buttons[b-2xcnvrp7bk]{ display:flex; gap:6px; align-items:center; flex-shrink:0; }
.corner-btn[b-2xcnvrp7bk]{ font-size:.8rem !important; padding:4px 8px !important; border-radius:4px !important; white-space:nowrap; font-weight:500 !important; transition:all .2s ease !important; }
.corner-btn:hover[b-2xcnvrp7bk]{ transform:translateY(-1px) !important; box-shadow:0 2px 4px rgba(0,0,0,.1) !important; }
.selection-count-badge[b-2xcnvrp7bk]{ background:#4caf50; color:white; padding:4px 8px; border-radius:12px; font-size:.75rem; font-weight:500; white-space:nowrap; }
.nav-link[b-2xcnvrp7bk]{ color:#0066cc; cursor:pointer; text-decoration:underline; }
.nav-link:hover[b-2xcnvrp7bk]{ color:#0052a3; }
.separator[b-2xcnvrp7bk]{ color:#6c757d; margin:0 5px; }
.current[b-2xcnvrp7bk]{ color:#495057; font-weight:500; }
.content-area[b-2xcnvrp7bk]{ flex:1; overflow-y:auto; padding:10px; background-color:white; }
.item-list[b-2xcnvrp7bk]{ display:flex; flex-direction:column; gap:2px; }
.item[b-2xcnvrp7bk]{ display:flex; align-items:center; gap:10px; padding:8px 12px; border-radius:4px; cursor:pointer; transition:background-color .2s; position:relative; }
.item:hover[b-2xcnvrp7bk]{ background-color:#e3f2fd; }
.item.selected[b-2xcnvrp7bk]{ background-color:#e3f2fd !important; }
