/* /Components/Chat/AppointmentProgressStrip.razor.rz.scp.css */
/* ===== Progress Strip ===== */

.progress-strip[b-p4ukvvkbwp] {
    border-top: 1px solid rgba(129, 230, 217, 0.2);
    padding: 0.5rem 1rem;
    background: rgba(248, 247, 255, 0.88);
    backdrop-filter: blur(12px) saturate(160%);
    -webkit-backdrop-filter: blur(12px) saturate(160%);
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
    animation: slideUp-b-p4ukvvkbwp 0.3s ease-out both;
}

.strip-label[b-p4ukvvkbwp] {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: rgba(44, 122, 123, 0.5);
    margin-right: 0.15rem;
    white-space: nowrap;
}

/* ===== Badges ===== */

.field-badge[b-p4ukvvkbwp] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.65rem;
    border-radius: 2rem;
    font-size: 0.78rem;
    font-weight: 500;
    animation: badgePop-b-p4ukvvkbwp 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.field-badge-primary[b-p4ukvvkbwp] {
    background: linear-gradient(135deg, #2c7a7b, #2c7a7b);
    color: #fff;
    box-shadow: 0 2px 8px rgba(44, 122, 123, 0.3);
}

.field-badge-secondary[b-p4ukvvkbwp] {
    background: rgba(44, 122, 123, 0.1);
    color: #4338ca;
    border: 1px solid rgba(44, 122, 123, 0.2);
}

@keyframes slideUp-b-p4ukvvkbwp {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes badgePop-b-p4ukvvkbwp {
    from {
        opacity: 0;
        transform: scale(0.7);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}
/* /Components/Chat/AssistantMessage.razor.rz.scp.css */
.msg-row[b-hdownlg5cu] {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 1.1rem;
    animation: msgSlideUp-b-hdownlg5cu 0.3s ease-out both;
}

.msg-group[b-hdownlg5cu] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 75%;
}

    .msg-group.has-slots[b-hdownlg5cu] {
        max-width: 95%;
    }

@media (max-width: 768px) {
    .msg-group[b-hdownlg5cu] {
        max-width: 92%;
    }
}

.msg-header[b-hdownlg5cu] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: -18px;
    position: relative;
    z-index: 1;
    padding-left: 10px;
}

.avatar[b-hdownlg5cu] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: linear-gradient(135deg, #005B33, #009A45);
    color: #E8F5E9;
    box-shadow: 0 2px 10px rgba(0, 91, 51, 0.35), 0 0 0 3px rgba(0, 91, 51, 0.12);
    animation: avatarIn-b-hdownlg5cu 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.sender-name[b-hdownlg5cu] {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #E8F5E9;
    padding: 0.18rem 0.6rem;
    border-radius: 2rem;
    white-space: nowrap;
    background: linear-gradient(135deg, #005B33, #009A45);
    box-shadow: 0 1px 6px rgba(0, 91, 51, 0.35);
}

.msg-bubble[b-hdownlg5cu] {
    padding: 1.4rem 1rem 0.65rem;
    border-radius: 1.1rem;
    border-bottom-left-radius: 0.3rem;
    font-size: 0.92rem;
    line-height: 1.5;
    word-wrap: break-word;
    width: 100%;
    background: radial-gradient(circle at center, #002E1A 0%, #080C09 100%);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border: 1px solid rgba(174, 213, 129, 0.4); /* Light Moss border */
    color: #E8F5E9;
    box-shadow: 0 4px 24px rgba(0, 46, 26, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.1);
    white-space: pre-line;
}

@keyframes msgSlideUp-b-hdownlg5cu {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes avatarIn-b-hdownlg5cu {
    0% {
        opacity: 0;
        transform: scale(0.4) rotate(-15deg);
    }

    70% {
        transform: scale(1.15) rotate(4deg);
    }

    100% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }
}

.slot-option-btn[b-hdownlg5cu] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.2rem;
    padding: 0.45rem 0.7rem;
    border-radius: 0.75rem;
    border: 1px solid rgba(174, 213, 129, 0.45);
    background: rgba(0, 91, 51, 0.18);
    color: #E8F5E9;
    cursor: pointer;
    transition: background 0.18s, border-color 0.18s, transform 0.12s;
    text-align: left;
    width: 100%;
}

    .slot-option-btn:hover:not(.disabled)[b-hdownlg5cu] {
        background: rgba(0, 154, 69, 0.28);
        border-color: rgba(174, 213, 129, 0.8);
        transform: translateY(-1px);
    }

    .slot-option-btn.disabled[b-hdownlg5cu] {
        opacity: 0.45;
        cursor: not-allowed;
    }

.slot-datetime[b-hdownlg5cu] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #c5e8a0;
    white-space: nowrap;
}

.slot-meta[b-hdownlg5cu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    align-items: center;
}

.slot-hospital[b-hdownlg5cu] {
    font-size: 0.72rem;
    color: #a8d5a2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 180px;
}

.slot-practitioner[b-hdownlg5cu] {
    font-size: 0.72rem;
    color: #8ecfa0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 180px;
}

.options-container[b-hdownlg5cu] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
    gap: 0.4rem;
    margin-top: 0.6rem;
}
/* /Components/Chat/ChatShell.razor.rz.scp.css */
/* ===== Page Layout ===== */

.page-wrapper[b-i38vlffv4x] {
    max-width: 720px;
    margin: 0 auto;
    padding-top: 1.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

/* ===== Chat Header ===== */

.chat-header[b-i38vlffv4x] {
    text-align: center;
    margin-bottom: 1.5rem;
}

/* ===== Provider Toggle (inside Header RenderFragment — ::deep required) ===== */

[b-i38vlffv4x] .provider-toggle {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(12px) saturate(160%);
    -webkit-backdrop-filter: blur(12px) saturate(160%);
    border: 1px solid rgba(var(--neolink-fern-rgb), 0.2);
    border-radius: 2rem;
    padding: 0.2rem;
    margin-top: 0.75rem;
    box-shadow: 0 2px 12px rgba(var(--neolink-fern-rgb), 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

/* ===== Chat Card ===== */

.chat-card[b-i38vlffv4x] {
    height: 68vh;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 1rem;
    box-shadow: 0 8px 32px rgba(var(--neolink-shamrock-rgb), 0.12), 0 1px 4px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
}

/* ===== Messages Area ===== */

.chat-messages[b-i38vlffv4x] {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    scroll-behavior: smooth;
    background: var(--neolink-bg-chat);
}

    /* Scrollbar */
    .chat-messages[b-i38vlffv4x]::-webkit-scrollbar {
        width: 6px;
    }

    .chat-messages[b-i38vlffv4x]::-webkit-scrollbar-track {
        background: transparent;
    }

    .chat-messages[b-i38vlffv4x]::-webkit-scrollbar-thumb {
        background: rgba(var(--neolink-shamrock-rgb), 0.30);
        border-radius: 3px;
    }

        .chat-messages[b-i38vlffv4x]::-webkit-scrollbar-thumb:hover {
            background: rgba(var(--neolink-shamrock-rgb), 0.50);
        }

/* ===== Responsive ===== */

@media (max-width: 768px) {
    .page-wrapper[b-i38vlffv4x] {
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        padding-top: 0.2rem;
        padding-left: 0;
        padding-right: 0;
        height: calc(100svh - 5rem);
        display: flex;
        flex-direction: column;
    }

    .chat-header[b-i38vlffv4x] {
        margin-bottom: 0.5rem;
        padding: 0 1rem;
        flex-shrink: 0;
    }

    .chat-card[b-i38vlffv4x] {
        height: auto;
        flex: 1 1 0;
        min-height: 0;
        border-radius: 0;
        border-left: none;
        border-right: none;
    }

    .chat-messages[b-i38vlffv4x] {
        padding: 0.75rem 0.5rem;
    }
}

/* ===== Empty State ===== */

.empty-state[b-i38vlffv4x] {
    text-align: center;
    color: #adb5bd;
    margin: auto;
    animation: fadeIn-b-i38vlffv4x 0.6s ease-out;
}

.empty-state-icon[b-i38vlffv4x] {
    font-size: 3rem;
    opacity: 0.5;
    display: block;
    margin-bottom: 0.5rem;
}

.empty-state p[b-i38vlffv4x] {
    font-size: 0.95rem;
}

/* ===== Input Area ===== */

.chat-input-area[b-i38vlffv4x] {
    padding: 0.85rem 1rem;
    background: var(--neolink-bg-input-area);
    backdrop-filter: blur(12px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    border-top: 1px solid rgba(var(--neolink-fern-rgb), 0.22);
}

.chat-compose-bar[b-i38vlffv4x] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(20px) saturate(200%);
    -webkit-backdrop-filter: blur(20px) saturate(200%);
    border: 1.5px solid rgba(var(--neolink-shamrock-rgb), 0.20);
    border-radius: 2rem;
    padding: 0.35rem 0.35rem 0.35rem 1.1rem;
    box-shadow: 0 2px 20px rgba(var(--neolink-shamrock-rgb), 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.95);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

    .chat-compose-bar:focus-within[b-i38vlffv4x] {
        border-color: rgba(var(--neolink-shamrock-rgb), 0.55);
        box-shadow: 0 0 0 3px rgba(var(--neolink-shamrock-rgb), 0.10), 0 4px 24px rgba(var(--neolink-shamrock-rgb), 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.95);
    }

/* ===== Chat Input (inside InputBar RenderFragment — ::deep required) ===== */

[b-i38vlffv4x] .chat-input {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    padding: 0.45rem 0.25rem;
    font-size: 0.92rem;
    color: var(--neolink-text-heading);
    min-width: 0;
}

    [b-i38vlffv4x] .chat-input:focus {
        outline: none;
        box-shadow: none;
        background: transparent;
    }

    [b-i38vlffv4x] .chat-input::placeholder {
        color: rgba(var(--neolink-shamrock-rgb), 0.40);
        font-style: italic;
    }

    [b-i38vlffv4x] .chat-input:disabled {
        color: rgba(var(--neolink-shamrock-rgb), 0.35);
        cursor: not-allowed;
    }

        [b-i38vlffv4x] .chat-input:disabled::placeholder {
            color: rgba(var(--neolink-shamrock-rgb), 0.30);
        }

[b-i38vlffv4x] .btn-send-icon {
    font-size: 1.1rem;
}

/* ===== Animations ===== */

@keyframes fadeIn-b-i38vlffv4x {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes slideUp-b-i38vlffv4x {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes celebratePop-b-i38vlffv4x {
    0% {
        transform: scale(0);
    }

    60% {
        transform: scale(1.3);
    }

    100% {
        transform: scale(1);
    }
}

@keyframes badgePop-b-i38vlffv4x {
    from {
        opacity: 0;
        transform: scale(0.5);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}
/* /Components/Chat/ConfirmCard.razor.rz.scp.css */
.confirm-card[b-c00jvuujxo] {
    padding: 1rem 1.25rem;
    background: rgba(255, 249, 230, 0.88);
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
    border-top: 1px solid rgba(255, 193, 7, 0.3);
    animation: slideUp-b-c00jvuujxo 0.4s ease-out both;
}

    .confirm-card h6[b-c00jvuujxo] {
        font-weight: 700;
        margin-bottom: 0.75rem;
        color: #92400e;
    }

.confirm-label[b-c00jvuujxo] {
    color: #78716c;
    font-size: 0.82rem;
}

.confirm-value[b-c00jvuujxo] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #1e1b4b;
}

.confirm-patient[b-c00jvuujxo] {
    color: #c2410c;
    font-weight: 700;
}

@keyframes slideUp-b-c00jvuujxo {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/Chat/GeneralChat.razor.rz.scp.css */
.general-chat-wrapper[b-p948m1ez2m] {
    display: flex;
    height: 100dvh;
    width: auto;
    margin-left: -2rem;
    margin-right: -1.5rem;
    margin-top: -1.5rem; /* negate possible parent padding */
    background-color: #1a1a1a;
    color: #e0e0e0;
    font-family: inherit;
    overflow: hidden;
    position: relative; /* Fix for absolute positioning context */
}

/* Drag-and-drop visual feedback */
[b-p948m1ez2m] .chat-main.drop-hover {
    outline: 2px dashed #646cff;
    outline-offset: -4px;
    background-color: rgba(100, 108, 255, 0.06);
}

    [b-p948m1ez2m] .chat-main.drop-hover::after {
        content: '📂 Soltar ficheiros aqui';
        position: absolute;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.25rem;
        color: #646cff;
        background-color: rgba(26, 26, 26, 0.7);
        z-index: 50;
        pointer-events: none;
        border-radius: inherit;
    }

/* Sidebar Styling */
.chat-sidebar[b-p948m1ez2m] {
    width: 320px;
    background-color: #121212;
    border-left: 1px solid #333;
    display: flex;
    flex-direction: column;
}

.sidebar-header[b-p948m1ez2m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #333;
}

.mobile-sidebar-close[b-p948m1ez2m] {
    display: none;
    background: none;
    border: none;
    color: #e0e0e0;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0 10px;
}

.sidebar-header h3[b-p948m1ez2m] {
    margin: 0;
    font-size: 1.1rem;
    color: #fff;
}

.sidebar-actions button[b-p948m1ez2m] {
    background: none;
    border: none;
    color: #888;
    cursor: pointer;
    font-size: 1rem;
    margin-left: 10px;
}

.sidebar-search[b-p948m1ez2m] {
    padding: 8px 16px;
    border-bottom: 1px solid #333;
}

.search-input[b-p948m1ez2m] {
    width: 100%;
    background-color: #2a2a2a;
    border: 1px solid #444;
    border-radius: 6px;
    color: #e0e0e0;
    padding: 8px 10px;
    font-size: 0.85rem;
    font-family: inherit;
}

    .search-input:focus[b-p948m1ez2m] {
        outline: none;
        border-color: #4caf50;
    }

    .search-input[b-p948m1ez2m]::placeholder {
        color: #666;
    }

.sidebar-actions button.active[b-p948m1ez2m] {
    color: #4caf50;
}

.sidebar-actions button.sort-asc[b-p948m1ez2m] {
    transform: rotate(180deg);
}

.chat-list[b-p948m1ez2m] {
    flex: 1;
    overflow-y: auto;
    padding: 10px;
}

.chat-list-item[b-p948m1ez2m] {
    display: flex;
    align-items: center;
    padding: 12px;
    border-radius: 8px;
    margin-bottom: 8px;
    cursor: pointer;
    transition: background-color 0.2s;
}

    .chat-list-item:hover[b-p948m1ez2m], .chat-list-item.active[b-p948m1ez2m] {
        background-color: #2a2a2a;
    }

.star-btn[b-p948m1ez2m] {
    background: none;
    border: none;
    cursor: pointer;
    margin-right: 12px;
    font-size: 1.1rem;
    opacity: 0.3;
}

    .star-btn.favorited[b-p948m1ez2m] {
        opacity: 1;
        color: #ffd700;
    }

.chat-info[b-p948m1ez2m] {
    display: flex;
    flex-direction: column;
}

.chat-title[b-p948m1ez2m] {
    font-weight: 600;
    font-size: 0.95rem;
    margin-bottom: 4px;
}

.chat-date[b-p948m1ez2m] {
    font-size: 0.8rem;
    color: #888;
}

/* Main Chat Area */
.chat-main[b-p948m1ez2m] {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 20px;
    overflow: hidden;
    position: relative;
}

.chat-top-bar[b-p948m1ez2m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #333;
    padding-bottom: 15px;
    margin-bottom: 20px;
    gap: 15px;
}

.mobile-sidebar-toggle[b-p948m1ez2m] {
    display: none;
    background: none;
    border: none;
    color: #e0e0e0;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0 10px 0 0;
}

.chat-top-bar h2[b-p948m1ez2m] {
    margin: 0;
    font-size: 1.3rem;
    flex: 1;
}

/* Messages */
.message[b-p948m1ez2m] {
    display: flex;
    margin-bottom: 15px;
}

    .message.user[b-p948m1ez2m] {
        justify-content: flex-end;
    }

    .message.ai[b-p948m1ez2m] {
        justify-content: flex-start;
    }

.message-content[b-p948m1ez2m] {
    max-width: 75%;
    padding: 12px 18px;
    border-radius: 12px;
    line-height: 1.5;
}

.message.user .message-content[b-p948m1ez2m] {
    background-color: #2e7d32;
    color: white;
    border-bottom-right-radius: 0;
}

.message.ai .message-content[b-p948m1ez2m] {
    background-color: #262626;
    border: 1px solid #444;
    border-bottom-left-radius: 0;
}

/* Toolbar & Input */
.chat-toolbar[b-p948m1ez2m] {
    display: flex;
    gap: 8px;
    margin-bottom: 10px;
}

    .chat-toolbar button[b-p948m1ez2m] {
        background: none;
        border: none;
        color: #888;
        cursor: pointer;
        font-size: 1rem;
        padding: 8px;
        border-radius: 6px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

        .chat-toolbar button:hover[b-p948m1ez2m] {
            background-color: #333;
            color: #e0e0e0;
        }

.chat-messages[b-p948m1ez2m] {
    flex: 1;
    overflow-y: auto;
    padding-right: 10px;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
}

.empty-state[b-p948m1ez2m] {
    margin: auto;
    text-align: center;
    color: #666;
}

.empty-state-icon[b-p948m1ez2m] {
    font-size: 3rem;
    margin-bottom: 10px;
    display: block;
}

.chat-input-area[b-p948m1ez2m] {
    display: flex;
    flex-direction: column;
    background-color: #1e1e1e;
    border-radius: 12px;
    padding: 15px;
    border: 1px solid #333;
}

.chat-input-wrapper[b-p948m1ez2m] {
    display: flex;
    position: relative;
    border: 1px solid #444; /* Added to improve contrast where the button sits */
    border-radius: 8px;
    padding: 0 10px;
    background-color: #2a2a2a;
}

.chat-input-textarea[b-p948m1ez2m] {
    flex: 1;
    background-color: transparent;
    border: none;
    color: #e0e0e0;
    padding: 12px 10px 12px 0;
    resize: none;
    min-height: 24px;
    font-family: inherit;
    font-size: 0.95rem;
    z-index: 1;
}

    .chat-input-textarea:focus[b-p948m1ez2m] {
        outline: none;
    }

.btn-send[b-p948m1ez2m] {
    background-color: #2e7d32;
    color: white;
    border: none;
    border-radius: 8px;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    min-width: 40px;
    margin: 8px 0 8px auto;
    transition: background-color 0.2s;
    z-index: 2;
}

    .btn-send svg[b-p948m1ez2m] {
        display: block;
        margin: auto;
    }

    .btn-send:hover:not(:disabled)[b-p948m1ez2m] {
        background-color: #1b5e20;
    }

.delete-btn[b-p948m1ez2m] {
    background: none;
    border: none;
    color: #e57373;
    opacity: 0.5;
    cursor: pointer;
    margin-left: auto;
    font-size: 0.9rem;
    transition: opacity 0.2s;
    z-index: 10;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .delete-btn svg[b-p948m1ez2m] {
        display: block;
    }

    .delete-btn:hover[b-p948m1ez2m] {
        opacity: 1;
        color: #f44336;
    }

.attach-btn[b-p948m1ez2m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    color: #888;
    cursor: pointer;
    font-size: 1rem;
    padding: 8px;
    border-radius: 6px;
    transition: background-color 0.2s, color 0.2s;
    margin: 0;
}

    .attach-btn svg[b-p948m1ez2m] {
        display: block;
    }

    .attach-btn:hover[b-p948m1ez2m] {
        background-color: #333;
        color: #e0e0e0;
    }

.selected-files-list[b-p948m1ez2m] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 8px;
    padding: 0 10px;
}

.file-badge[b-p948m1ez2m] {
    background-color: #333;
    color: #eee;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 6px;
    border: 1px solid #444;
}

.remove-file-btn[b-p948m1ez2m] {
    background: none;
    border: none;
    color: #e57373;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .remove-file-btn:hover[b-p948m1ez2m] {
        color: #f44336;
    }

@media (max-width: 768px) {
    .general-chat-wrapper[b-p948m1ez2m] {
        margin: -1.5rem -1.5rem 0 -1.5rem; /* Remove top/side padding on mobile layout context */
        width: 100vw;
    }

    .chat-sidebar[b-p948m1ez2m] {
        position: absolute;
        top: 0;
        bottom: 0;
        right: -320px; /* Hidden off-screen right */
        z-index: 100;
        transition: right 0.3s ease;
        box-shadow: -4px 0 15px rgba(0, 0, 0, 0.5);
    }

        .chat-sidebar.open[b-p948m1ez2m] {
            right: 0;
        }

    .mobile-sidebar-toggle[b-p948m1ez2m] {
        display: block;
    }

    .mobile-sidebar-close[b-p948m1ez2m] {
        display: block;
    }

    .sidebar-actions[b-p948m1ez2m] {
        display: none; /* Hide sort/search on mobile header if cramped */
    }

    .chat-main[b-p948m1ez2m] {
        padding: 10px;
    }

    .chat-top-bar[b-p948m1ez2m] {
        margin-bottom: 10px;
        padding-bottom: 10px;
    }

        .chat-top-bar h2[b-p948m1ez2m] {
            font-size: 1.1rem;
        }

    .token-badge[b-p948m1ez2m] {
        font-size: 0.75rem;
        padding: 4px 8px;
    }

    .chat-toolbar[b-p948m1ez2m] {
        overflow-x: auto;
        padding-bottom: 4px;
        gap: 2px;
    }
}

.btn-send:disabled[b-p948m1ez2m] {
    background-color: #4CAF50;
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-mic[b-p948m1ez2m] {
    background: none;
    color: #888;
    border: none;
    border-radius: 8px;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    min-width: 40px;
    margin: 8px 4px 8px 0;
    transition: background-color 0.2s, color 0.2s;
    z-index: 2;
}

    .btn-mic:hover:not(:disabled)[b-p948m1ez2m] {
        background-color: #333;
        color: #e0e0e0;
    }

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

    .btn-mic.recording[b-p948m1ez2m] {
        background-color: #c62828;
        color: white;
        animation: mic-pulse-b-p948m1ez2m 1.2s ease-in-out infinite;
    }

        .btn-mic.recording:hover[b-p948m1ez2m] {
            background-color: #b71c1c;
            color: white;
        }

@keyframes mic-pulse-b-p948m1ez2m {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.6;
    }
}

.attach-btn.loading[b-p948m1ez2m] {
    opacity: 0.5;
    cursor: wait;
    pointer-events: none;
}

.file-error[b-p948m1ez2m] {
    font-size: 0.75rem;
    color: #f44336;
    padding: 2px 6px;
}

/* Scrollbar for chat list and main chat messages (applied to ChatShell inner elements theoretically or handled via generic scrollbars) */
[b-p948m1ez2m]::-webkit-scrollbar {
    width: 8px;
}

[b-p948m1ez2m]::-webkit-scrollbar-track {
    background: #1a1a1a;
}

[b-p948m1ez2m]::-webkit-scrollbar-thumb {
    background: #444;
    border-radius: 4px;
}

    [b-p948m1ez2m]::-webkit-scrollbar-thumb:hover {
        background: #555;
    }

/* Thinking indicator */
.thinking-indicator[b-p948m1ez2m] {
    padding: 14px 20px;
    border-radius: 12px;
    border-bottom-left-radius: 0;
    background: linear-gradient(135deg, #0a1f0f 0%, #111 100%);
    border: 1px solid rgba(76, 175, 80, 0.2);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4), 0 0 20px rgba(76, 175, 80, 0.06);
    max-width: 260px;
    animation: thinkSlideUp-b-p948m1ez2m 0.35s cubic-bezier(0.16, 1, 0.3, 1) both;
    overflow: hidden;
}

.thinking-content[b-p948m1ez2m] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.thinking-spark[b-p948m1ez2m] {
    font-size: 1rem;
    color: #66bb6a;
    display: inline-block;
    animation: sparkSpin-b-p948m1ez2m 2s linear infinite;
}

.thinking-text[b-p948m1ez2m] {
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    background: linear-gradient(90deg, #81c784, #4caf50, #81c784);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: textShimmer-b-p948m1ez2m 2.5s ease-in-out infinite;
}

.thinking-bar[b-p948m1ez2m] {
    height: 2px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.04);
    overflow: hidden;
}

.thinking-bar-fill[b-p948m1ez2m] {
    height: 100%;
    width: 40%;
    border-radius: 2px;
    background: linear-gradient(90deg, transparent, #4caf50, #66bb6a, transparent);
    animation: barSweep-b-p948m1ez2m 1.8s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

@keyframes thinkSlideUp-b-p948m1ez2m {
    from {
        opacity: 0;
        transform: translateY(12px) scale(0.97);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes sparkSpin-b-p948m1ez2m {
    0% {
        transform: rotate(0deg) scale(1);
        opacity: 0.6;
    }

    50% {
        transform: rotate(180deg) scale(1.3);
        opacity: 1;
    }

    100% {
        transform: rotate(360deg) scale(1);
        opacity: 0.6;
    }
}

@keyframes textShimmer-b-p948m1ez2m {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

@keyframes barSweep-b-p948m1ez2m {
    0% {
        transform: translateX(-120%);
    }

    100% {
        transform: translateX(350%);
    }
}

.message-actions[b-p948m1ez2m] {
    display: flex;
    gap: 8px;
    margin-top: 6px;
    justify-content: flex-start;
}

.action-btn[b-p948m1ez2m] {
    background: transparent;
    border: none;
    font-size: 14px;
    color: #888;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    transition: background 0.2s, color 0.2s;
}

    .action-btn:hover[b-p948m1ez2m] {
        background: rgba(255, 255, 255, 0.1);
        color: #e0e0e0;
    }

.voice-btn[b-p948m1ez2m] {
    padding: 4px;
    border-radius: 4px;
    border: none;
    background: transparent;
    color: #a1a1a1;
    cursor: pointer;
    transition: color 0.3s;
}

    .voice-btn:hover[b-p948m1ez2m], .voice-btn.active[b-p948m1ez2m] {
        color: #e0e0e0;
    }
/* /Components/Chat/MedicalActResultCard.razor.rz.scp.css */
.result-card[b-5scpt3vo4p] {
    margin: 0 1rem 0.75rem;
    padding: 1rem 1.25rem;
    background: rgba(var(--neolink-shamrock-rgb), 0.07);
    border: 1px solid rgba(var(--neolink-shamrock-rgb), 0.22);
    border-radius: 0.875rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    animation: slideUp-b-5scpt3vo4p 0.35s ease-out both;
}

.result-icon[b-5scpt3vo4p] {
    font-size: 1.5rem;
    flex-shrink: 0;
    line-height: 1;
}

.result-act-name[b-5scpt3vo4p] {
    font-size: 1rem;
    color: var(--neolink-shamrock-dark);
    margin: 0;
}

@keyframes slideUp-b-5scpt3vo4p {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/Chat/SuccessCard.razor.rz.scp.css */
.success-card[b-eoow1t8e1q] {
    padding: 1rem 1.25rem;
    background: rgba(236, 253, 245, 0.88);
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
    border-top: 1px solid rgba(16, 185, 129, 0.25);
    animation: slideUp-b-eoow1t8e1q 0.4s ease-out both;
}

.success-icon[b-eoow1t8e1q] {
    font-size: 2rem;
    animation: celebratePop-b-eoow1t8e1q 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.success-card h6[b-eoow1t8e1q] {
    color: #065f46;
    font-weight: 700;
}

@keyframes slideUp-b-eoow1t8e1q {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes celebratePop-b-eoow1t8e1q {
    0% {
        transform: scale(0);
    }

    60% {
        transform: scale(1.3);
    }

    100% {
        transform: scale(1);
    }
}
/* /Components/Chat/TypingIndicator.razor.rz.scp.css */
.typing-row[b-aiutkodu00] {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 1.1rem;
    animation: msgSlideUp-b-aiutkodu00 0.3s ease-out both;
}

.msg-group[b-aiutkodu00] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.msg-header[b-aiutkodu00] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: -18px;
    position: relative;
    z-index: 1;
    padding-left: 10px;
}

.avatar[b-aiutkodu00] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: linear-gradient(135deg, #005B33, #009A45);
    color: #E8F5E9;
    box-shadow: 0 2px 10px rgba(0, 91, 51, 0.35), 0 0 0 3px rgba(0, 91, 51, 0.12);
}

.sender-name[b-aiutkodu00] {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #E8F5E9;
    padding: 0.18rem 0.6rem;
    border-radius: 2rem;
    white-space: nowrap;
    background: linear-gradient(135deg, #005B33, #009A45);
    box-shadow: 0 1px 6px rgba(0, 91, 51, 0.35);
}

.typing-bubble[b-aiutkodu00] {
    background: radial-gradient(circle at center, #002E1A 0%, #080C09 100%);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border: 1px solid rgba(174, 213, 129, 0.4);
    padding: 1.4rem 1.2rem 0.6rem;
    border-radius: 1.1rem;
    border-bottom-left-radius: 0.3rem;
    box-shadow: 0 4px 24px rgba(0, 46, 26, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    gap: 5px;
}

.typing-dot[b-aiutkodu00] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #AED581;
    opacity: 0.4;
    animation: typingPulse-b-aiutkodu00 1.4s ease-in-out infinite;
}

    .typing-dot:nth-child(2)[b-aiutkodu00] {
        animation-delay: 0.2s;
    }

    .typing-dot:nth-child(3)[b-aiutkodu00] {
        animation-delay: 0.4s;
    }

@keyframes msgSlideUp-b-aiutkodu00 {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes typingPulse-b-aiutkodu00 {
    0%, 100% {
        opacity: 0.3;
        transform: scale(0.85);
    }

    50% {
        opacity: 1;
        transform: scale(1.1);
    }
}
/* /Components/Chat/UserMessage.razor.rz.scp.css */
.msg-row[b-4ypwuvs87s] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1.1rem;
    animation: msgSlideUp-b-4ypwuvs87s 0.3s ease-out both;
}

.msg-group[b-4ypwuvs87s] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    max-width: 75%;
}

@media (max-width: 768px) {
    .msg-group[b-4ypwuvs87s] {
        max-width: 92%;
    }
}

.msg-header[b-4ypwuvs87s] {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: -18px;
    position: relative;
    z-index: 1;
    padding-right: 10px;
}

.avatar[b-4ypwuvs87s] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: #009A45;
    color: #E8F5E9;
    box-shadow: 0 2px 8px rgba(0, 154, 69, 0.45);
    animation: avatarIn-b-4ypwuvs87s 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.sender-name[b-4ypwuvs87s] {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #E8F5E9;
    padding: 0.18rem 0.6rem;
    border-radius: 2rem;
    white-space: nowrap;
    background: #009A45;
    box-shadow: 0 1px 6px rgba(0, 154, 69, 0.4);
}

.msg-bubble[b-4ypwuvs87s] {
    padding: 1.4rem 1rem 0.65rem;
    border-radius: 1.1rem;
    border-bottom-right-radius: 0.3rem;
    font-size: 0.92rem;
    line-height: 1.5;
    word-wrap: break-word;
    width: 100%;
    background: linear-gradient(135deg, #005B33 0%, #003b22 100%);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    border: 1px solid rgba(76, 175, 80, 0.45);
    color: #E8F5E9;
    box-shadow: 0 4px 24px rgba(0, 91, 51, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

@keyframes msgSlideUp-b-4ypwuvs87s {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes avatarIn-b-4ypwuvs87s {
    0% {
        opacity: 0;
        transform: scale(0.4) rotate(15deg);
    }

    70% {
        transform: scale(1.15) rotate(-4deg);
    }

    100% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-zmzs1ibiix] {
    position: relative;
    display: flex;
    flex-direction: column;
}

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

.sidebar[b-zmzs1ibiix] {
    background: transparent;
}

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

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

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

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

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

#blazor-error-ui[b-zmzs1ibiix] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-zmzs1ibiix] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* ===== Sidebar shell ===== */

.nav-sidebar[b-9bsuppiza2] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: rgba(0, 20, 10, 0.85); /* Increased opacity from 0.65 to 0.85 */
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    position: relative;
    overflow: hidden;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.2);
}

    .nav-sidebar[b-9bsuppiza2]::before {
        content: '';
        position: absolute;
        top: -80px;
        left: -80px;
        width: 240px;
        height: 240px;
        background: radial-gradient(circle, rgba(44, 122, 123, 0.15) 0%, transparent 65%); /* Reduced opacity */
        pointer-events: none;
    }

    .nav-sidebar[b-9bsuppiza2]::after {
        content: '';
        position: absolute;
        bottom: -60px;
        right: -60px;
        width: 200px;
        height: 200px;
        background: radial-gradient(circle, rgba(129, 230, 217, 0.1) 0%, transparent 65%); /* Reduced opacity */
        pointer-events: none;
    }

/* ===== Brand row ===== */

.nav-brand-row[b-9bsuppiza2] {
    position: relative;
    z-index: 1;
    min-height: 3.5rem;
    display: flex;
    align-items: center;
    padding: 0 1rem;
    border-bottom: 1px solid rgba(129, 230, 217, 0.1);
    flex-shrink: 0;
}

.nav-brand[b-9bsuppiza2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
}

.brand-gem[b-9bsuppiza2] {
    font-size: 1.3rem;
    color: #4CAF50;
    line-height: 1;
}

.brand-name[b-9bsuppiza2] {
    font-size: 1.35rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    color: #E8F5E9;
}

/* ===== Mobile toggler ===== */

.navbar-toggler[b-9bsuppiza2] {
    appearance: none;
    cursor: pointer;
    width: 2.2rem;
    height: 2.2rem;
    position: absolute;
    top: 0.65rem;
    right: 0.75rem;
    border: 1px solid rgba(129, 230, 217, 0.25);
    border-radius: 0.5rem;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28165%2C 180%2C 252%2C 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.4rem rgba(44, 122, 123, 0.1);
    z-index: 2;
}

    .navbar-toggler:checked[b-9bsuppiza2] {
        background-color: rgba(44, 122, 123, 0.3);
    }

/* ===== Nav scrollable area ===== */

.nav-scrollable[b-9bsuppiza2] {
    display: none;
    position: relative;
    z-index: 1;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0.5rem 0.75rem 1.5rem;
    scrollbar-width: none;
}

    .nav-scrollable[b-9bsuppiza2]::-webkit-scrollbar {
        display: none;
    }

.navbar-toggler:checked ~ .nav-scrollable[b-9bsuppiza2] {
    display: block;
}

/* ===== Section label ===== */

.nav-section-label[b-9bsuppiza2] {
    font-size: 0.625rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(129, 230, 217, 0.35);
    padding: 0.75rem 0.5rem 0.4rem;
    margin: 0;
}

/* ===== Nav items ===== */

.nav-item[b-9bsuppiza2] {
    margin-bottom: 0.4rem;
}

    .nav-item[b-9bsuppiza2]  a {
        display: flex;
        align-items: center;
        padding: 0.65rem 0.75rem;
        border-radius: 6px;
        color: rgba(203, 213, 225, 0.65);
        text-decoration: none;
        font-size: 0.875rem;
        font-weight: 500;
        transition: background 0.25s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.25s ease, transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.25s ease;
        position: relative;
        line-height: 1.4;
        border: 1px solid transparent;
    }

        .nav-item[b-9bsuppiza2]  a:hover {
            background: rgba(44, 122, 123, 0.08);
            color: rgba(226, 232, 240, 0.95);
            transform: translateX(4px);
            border-color: rgba(44, 122, 123, 0.2);
        }

        .nav-item[b-9bsuppiza2]  a.active {
            background: rgba(44, 122, 123, 0.15);
            color: #ffffff;
            font-weight: 600;
            border-color: rgba(129, 230, 217, 0.3);
            box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 4px 12px rgba(44, 122, 123, 0.2);
        }

            .nav-item[b-9bsuppiza2]  a.active::before {
                content: '';
                position: absolute;
                left: -2px; /* Pull outside to fit layout */
                top: 20%;
                height: 60%;
                width: 4px;
                background: linear-gradient(180deg, #bee3f8, #bee3f8);
                border-radius: 4px; /* Techy pill shape */
                box-shadow: 0 0 12px rgba(129, 230, 217, 0.8);
            }

/* ===== Icons ===== */

.bi[b-9bsuppiza2] {
    display: inline-block;
    width: 1.1rem;
    height: 1.1rem;
    margin-right: 0.7rem;
    flex-shrink: 0;
    background-size: cover;
    opacity: 0.7;
    transition: opacity 0.2s ease;
    vertical-align: middle;
}

.nav-item[b-9bsuppiza2]  a:hover .bi,
.nav-item[b-9bsuppiza2]  a.active .bi {
    opacity: 1;
}

.bi-house-door-fill[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-calendar-plus[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M8 7a.5.5 0 0 1 .5.5V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5A.5.5 0 0 1 8 7z'/%3E%3Cpath d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z'/%3E%3C/svg%3E");
}

.bi-stars[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M7.657 6.247c.11-.33.576-.33.686 0l.645 1.937a2.89 2.89 0 0 0 1.829 1.828l1.936.645c.33.11.33.576 0 .686l-1.937.645a2.89 2.89 0 0 0-1.828 1.829l-.645 1.936a.361.361 0 0 1-.686 0l-.645-1.937a2.89 2.89 0 0 0-1.828-1.828l-1.937-.645a.361.361 0 0 1 0-.686l1.937-.645a2.89 2.89 0 0 0 1.828-1.828l.645-1.937zM3.794 1.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387A1.734 1.734 0 0 0 4.593 5.69l-.387 1.162a.217.217 0 0 1-.412 0L3.407 5.69A1.734 1.734 0 0 0 2.31 4.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387A1.734 1.734 0 0 0 3.407 2.31l.387-1.162zM10.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.753.732.868l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.868l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.868l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.522.732-.868L10.863.1z'/%3E%3C/svg%3E");
}

.bi-book[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M1 2.828c.885-.37 2.154-.769 3.388-.893 1.33-.134 2.458.063 3.112.752v9.746c-.935-.53-2.12-.603-3.213-.493-1.18.12-2.37.461-3.287.811zm7.5-.141c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783'/%3E%3C/svg%3E");
}

.bi-plug[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.08 2.08 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.92 1.92 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0M5 4v2.5a2.5 2.5 0 0 0 5 0V4z'/%3E%3C/svg%3E");
}

.bi-search-heart[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 4.482c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018Z'/%3E%3Cpath d='M13 6.5a6.471 6.471 0 0 1-1.258 3.844c.04.03.078.062.115.098l3.85 3.85a1 1 0 0 1-1.414 1.415l-3.85-3.85a1.007 1.007 0 0 1-.1-.115h.002A6.5 6.5 0 1 1 13 6.5ZM6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11Z'/%3E%3C/svg%3E");
}

.bi-mic-fill[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M5 3a3 3 0 0 1 6 0v5a3 3 0 0 1-6 0V3z'/%3E%3Cpath d='M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5z'/%3E%3C/svg%3E");
}

.bi-people-fill[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm-5.784 6A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216zM4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z'/%3E%3C/svg%3E");
}

.bi-key-fill[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1.235 1.164A3.5 3.5 0 0 1 3.5 11.5zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z'/%3E%3C/svg%3E");
}

.bi-box-arrow-left[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M6 12.5a.5.5 0 0 0 .5.5h8a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 0-.5-.5h-8a.5.5 0 0 0-.5.5v2a.5.5 0 0 1-1 0v-2A1.5 1.5 0 0 1 6.5 2h8A1.5 1.5 0 0 1 16 3.5v9a1.5 1.5 0 0 1-1.5 1.5h-8A1.5 1.5 0 0 1 5 12.5v-2a.5.5 0 0 1 1 0v2zm-7.354-4.354a.5.5 0 0 0 0 .708l3 3a.5.5 0 0 0 .708-.708L1.207 8.5H10.5a.5.5 0 0 0 0-1H1.207l2.147-2.146a.5.5 0 1 0-.708-.708l-3 3z'/%3E%3C/svg%3E");
}

.bi-speedometer[b-9bsuppiza2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M8 2a.5.5 0 0 1 .5.5V4a.5.5 0 0 1-1 0V2.5A.5.5 0 0 1 8 2zM3.732 3.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707zM2 8a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 8zm9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5zm.754-4.246a.389.389 0 0 0-.527-.02L7.547 7.31A.91.91 0 1 0 8.85 8.569l3.434-4.297a.389.389 0 0 0-.029-.518z'/%3E%3Cpath fill-rule='evenodd' d='M6.664 15.889A8 8 0 1 1 9.336.11a8 8 0 0 1-2.672 15.78zm-4.665-4.283A11.945 11.945 0 0 1 8 10c2.186 0 4.236.585 6.001 1.606a7 7 0 1 0-12.002 0z'/%3E%3C/svg%3E");
}

/* ===== Logout button — matches the ::deep a nav-link appearance ===== */

.nav-item button.nav-link[b-9bsuppiza2] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.65rem 0.75rem;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.4;
    border: 1px solid transparent;
    background: transparent;
    transition: background 0.25s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.25s ease, transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
    cursor: pointer;
    text-align: left;
}

    .nav-item button.nav-link:hover[b-9bsuppiza2] {
        background: rgba(220, 53, 69, 0.08);
        transform: translateX(4px);
        border-color: rgba(220, 53, 69, 0.2);
    }

        .nav-item button.nav-link:hover .bi[b-9bsuppiza2] {
            opacity: 1;
        }

.nav-group[b-9bsuppiza2] {
    position: relative;
    margin-bottom: 0.15rem;
    padding-left: 0;
}

    .nav-group[b-9bsuppiza2]::before {
        content: '';
        position: absolute;
        left: 1.35rem;
        top: 2.6rem;
        bottom: 0.45rem;
        width: 1px;
        background: linear-gradient(180deg, rgba(129, 230, 217, 0.35) 0%, transparent 100%);
        pointer-events: none;
    }

/* ===== Sub-items ===== */

.nav-sub-item[b-9bsuppiza2] {
    padding-left: 1rem;
}

    .nav-sub-item[b-9bsuppiza2]  a {
        font-size: 0.815rem;
        color: rgba(203, 213, 225, 0.5);
        padding: 0.45rem 0.65rem;
    }

        .nav-sub-item[b-9bsuppiza2]  a:hover {
            color: rgba(226, 232, 240, 0.85);
        }

        .nav-sub-item[b-9bsuppiza2]  a.active {
            color: #e0e7ff;
            font-weight: 500;
            background: rgba(44, 122, 123, 0.12);
        }

/* ===== Responsive ===== */

@media (min-width: 641px) {
    .nav-sidebar[b-9bsuppiza2] {
        min-height: 100vh;
    }

    .navbar-toggler[b-9bsuppiza2] {
        display: none;
    }

    .nav-scrollable[b-9bsuppiza2] {
        display: flex;
        flex-direction: column;
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}

/* ===== Home Link Special Styling ===== */
.nav-item-home[b-9bsuppiza2] {
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(129, 230, 217, 0.15);
}

    .nav-item-home[b-9bsuppiza2]  a.home-link {
        background: rgba(44, 122, 123, 0.25);
        border: 1px solid rgba(129, 230, 217, 0.4);
        box-shadow: 0 4px 12px rgba(44, 122, 123, 0.15);
        color: #ffffff;
        font-weight: 600;
    }

        .nav-item-home[b-9bsuppiza2]  a.home-link:hover {
            background: rgba(44, 122, 123, 0.4);
            transform: translateY(-2px);
            box-shadow: 0 6px 16px rgba(44, 122, 123, 0.25);
            border-color: rgba(129, 230, 217, 0.6);
        }

        .nav-item-home[b-9bsuppiza2]  a.home-link.active::before {
            display: none; /* remove the tiny side pill for home link since its custom looking */
        }

/* ===== Build version ===== */

.nav-version[b-9bsuppiza2] {
    padding: 0.75rem 1rem;
    text-align: center;
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.35);
    letter-spacing: 0.05em;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}
/* /Components/Pages/Admin/Accounts.razor.rz.scp.css */
/* ── Page Header ────────────────────────── */

.accounts-header[b-uonuc3yx8q] {
    margin-bottom: 1.5rem !important;
    border-bottom: 2px solid rgba(0, 154, 69, 0.15) !important;
}

    .accounts-header h4[b-uonuc3yx8q] {
        color: #1e1b4b;
        font-weight: 700;
        font-size: 1.25rem;
        letter-spacing: -0.01em;
    }

/* ── Form Card ──────────────────────────── */

.form-card[b-uonuc3yx8q] {
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 154, 69, 0.1);
    border-left: 4px solid #4CAF50 !important;
    background: #ffffff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .form-card .card-header[b-uonuc3yx8q] {
        background-color: transparent;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05);
        padding: 0.75rem 1rem;
        color: #1e293b;
        font-weight: 600;
        font-size: 1rem;
    }

    .form-card .card-body[b-uonuc3yx8q] {
        padding: 1rem;
    }

/* ── Table Card ─────────────────────────── */

.table-card[b-uonuc3yx8q] {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
    border: 1px solid rgba(0, 0, 0, 0.05);
    overflow: hidden;
    margin-bottom: 1.5rem;
}

/* ── Table Toolbar ──────────────────────── */

.table-toolbar[b-uonuc3yx8q] {
    padding: 0.75rem 1rem;
    background-color: #ffffff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

    .table-toolbar .input-group-text[b-uonuc3yx8q] {
        border-right: none;
        background: #f8fafc;
        border-color: #e2e8f0;
    }

    .table-toolbar .form-control[b-uonuc3yx8q] {
        border-left: none;
        background: #f8fafc;
        border-color: #e2e8f0;
        box-shadow: none;
    }

        .table-toolbar .form-control:focus[b-uonuc3yx8q] {
            background: #ffffff;
            border-color: #cbd5e1;
        }

/* ── Table ──────────────────────────────── */

.accounts-table[b-uonuc3yx8q] {
    width: 100%;
    margin-bottom: 0;
    color: #334155;
    border-collapse: separate;
    border-spacing: 0;
}

    .accounts-table th[b-uonuc3yx8q] {
        background-color: #f8fafc;
        color: #64748b;
        font-weight: 600;
        text-transform: uppercase;
        font-size: 0.70rem;
        letter-spacing: 0.03em;
        padding: 0.75rem 1rem;
        border-bottom: 1px solid #e2e8f0;
        border-top: none;
    }

    .accounts-table td[b-uonuc3yx8q] {
        padding: 0.75rem 1rem;
        vertical-align: middle;
        border-bottom: 1px solid #f1f5f9;
        font-size: 0.85rem;
    }

    .accounts-table tbody tr[b-uonuc3yx8q] {
        transition: background-color 0.2s ease;
    }

        .accounts-table tbody tr:hover[b-uonuc3yx8q] {
            background-color: #f8fafc;
        }

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

/* ── Badges ─────────────────────────────── */

.badge-role[b-uonuc3yx8q] {
    font-weight: 600;
    padding: 0.35em 0.65em;
    font-size: 0.70rem;
    border-radius: 6px;
    letter-spacing: 0.02em;
}

.badge-status[b-uonuc3yx8q] {
    display: inline-flex;
    align-items: center;
    font-weight: 600;
    padding: 0.35em 0.65em;
    border-radius: 6px;
    font-size: 0.70rem;
    letter-spacing: 0.02em;
}

/* Adjust colors for specific badges where generic classes are used in razor */
.bg-danger[b-uonuc3yx8q] {
    background-color: rgba(239, 68, 68, 0.1) !important;
    color: #ef4444 !important;
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.bg-secondary[b-uonuc3yx8q] {
    background-color: rgba(100, 116, 139, 0.1) !important;
    color: #64748b !important;
    border: 1px solid rgba(100, 116, 139, 0.2);
}

.bg-warning[b-uonuc3yx8q] {
    background-color: rgba(245, 158, 11, 0.1) !important;
    color: #b45309 !important;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.bg-success[b-uonuc3yx8q] {
    background-color: rgba(34, 197, 94, 0.1) !important;
    color: #15803d !important;
    border: 1px solid rgba(34, 197, 94, 0.2);
}

/* ── Buttons ────────────────────────────── */

.table-responsive .btn-sm[b-uonuc3yx8q] {
    border-radius: 6px;
    padding: 0;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    transition: all 0.2s ease;
}

.icon-pencil[b-uonuc3yx8q], .icon-key[b-uonuc3yx8q], .icon-reset[b-uonuc3yx8q] {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    background-color: currentColor;
}

.icon-pencil[b-uonuc3yx8q] {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708zm-1.146 2.146L2.5 11.502V13h1.498l9.207-9.207z'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M12.854.146a.5.5 0 0 0-.707 0L10.5 1.793 14.207 5.5l1.647-1.646a.5.5 0 0 0 0-.708zm-1.146 2.146L2.5 11.502V13h1.498l9.207-9.207z'/%3E%3C/svg%3E") no-repeat center / contain;
}

.icon-key[b-uonuc3yx8q] {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1.235 1.164A3.5 3.5 0 0 1 3.5 11.5zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 11.5a3.5 3.5 0 1 1 3.163-5H14L15.5 8 14 9.5l-1-1-1 1-1-1-1 1-1-1-1.235 1.164A3.5 3.5 0 0 1 3.5 11.5zm0-1a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z'/%3E%3C/svg%3E") no-repeat center / contain;
}

.icon-reset[b-uonuc3yx8q] {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2z'/%3E%3Cpath d='M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8 3a5 5 0 1 1-4.546 2.914.5.5 0 0 0-.908-.417A6 6 0 1 0 8 2z'/%3E%3Cpath d='M8 4.466V.534a.25.25 0 0 0-.41-.192L5.23 2.308a.25.25 0 0 0 0 .384l2.36 1.966A.25.25 0 0 0 8 4.466'/%3E%3C/svg%3E") no-repeat center / contain;
}

.btn-outline-primary[b-uonuc3yx8q] {
    color: #4CAF50;
    border-color: rgba(76, 175, 80, 0.3);
}

    .btn-outline-primary:hover[b-uonuc3yx8q] {
        background-color: #4CAF50;
        border-color: #4CAF50;
        color: white;
    }

    .btn-outline-primary:focus[b-uonuc3yx8q], .btn-outline-primary:active[b-uonuc3yx8q] {
        box-shadow: 0 0 0 0.25rem rgba(76, 175, 80, 0.2) !important;
    }

.btn-outline-info[b-uonuc3yx8q] {
    color: #0284c7;
    border-color: rgba(2, 132, 199, 0.3);
}

    .btn-outline-info:hover[b-uonuc3yx8q] {
        background-color: #0284c7;
        border-color: #0284c7;
        color: white;
    }

.btn-outline-warning[b-uonuc3yx8q] {
    color: #d97706;
    border-color: rgba(217, 119, 6, 0.3);
}

    .btn-outline-warning:hover[b-uonuc3yx8q] {
        background-color: #d97706;
        border-color: #d97706;
        color: white;
    }

/* ── Pagination ─────────────────────────── */

.pagination-container[b-uonuc3yx8q] {
    padding: 0.75rem 1rem;
    background-color: #ffffff;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.pagination .page-link[b-uonuc3yx8q] {
    border-radius: 6px;
    margin: 0 2px;
    border: 1px solid transparent;
    color: #475569;
    font-weight: 500;
}

    .pagination .page-link:hover[b-uonuc3yx8q] {
        background-color: #f1f5f9;
        border-color: #e2e8f0;
    }

.pagination .page-item.active .page-link[b-uonuc3yx8q] {
    background-color: #f8fafc;
    border-color: #4CAF50;
    color: #4CAF50;
}

.pagination .page-item.disabled .page-link[b-uonuc3yx8q] {
    background-color: transparent;
    color: #cbd5e1;
}
/* /Components/Pages/Admin/AiSettings.razor.rz.scp.css */
/* ── Page Header ────────────────────────── */

.page-header[b-ioishj0nxc] {
    margin-bottom: 1.5rem !important;
    border-bottom: 2px solid rgba(0, 154, 69, 0.15) !important;
}

    .page-header h4[b-ioishj0nxc] {
        color: #1e1b4b;
        font-weight: 700;
        font-size: 1.25rem;
        letter-spacing: -0.01em;
    }

    .page-header p[b-ioishj0nxc] {
        font-size: 0.875rem;
    }

/* ── Section Switcher ────────────────────── */

.section-switcher[b-ioishj0nxc] {
    display: inline-flex;
    background: #f1f5f9;
    border-radius: 10px;
    padding: 4px;
    gap: 2px;
}

.section-tab[b-ioishj0nxc] {
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 1.1rem;
    border-radius: 7px;
    border: none;
    background: transparent;
    font-size: 0.85rem;
    font-weight: 600;
    color: #64748b;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

    .section-tab:hover:not(.section-tab-active)[b-ioishj0nxc] {
        background: rgba(255, 255, 255, 0.7);
        color: #334155;
    }

.section-tab-active[b-ioishj0nxc] {
    background: #ffffff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.section-tab-active.section-tab-messages[b-ioishj0nxc] {
    color: #6366f1;
}

.section-tab-active.section-tab-prompts[b-ioishj0nxc] {
    color: #009a45;
}

.section-tab-active.section-tab-embeddings[b-ioishj0nxc] {
    color: #0ea5e9;
}

/* ── Config Card ────────────────────────── */

.config-card[b-ioishj0nxc] {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-left: 4px solid #4CAF50;
    margin-bottom: 1.5rem;
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

    .config-card:hover[b-ioishj0nxc] {
        box-shadow: 0 6px 28px rgba(0, 0, 0, 0.07);
    }

/* ── Card Header ────────────────────────── */

.config-card-header[b-ioishj0nxc] {
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, #f8faf9 0%, #ffffff 100%);
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.config-card-title-row[b-ioishj0nxc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.config-card-title[b-ioishj0nxc] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 0;
}

.config-card-key[b-ioishj0nxc] {
    font-size: 0.75rem;
    color: #94a3b8;
    font-family: 'Cascadia Code', 'Fira Code', monospace;
    letter-spacing: 0.02em;
}

.config-card-meta[b-ioishj0nxc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Feature Page Links ─────────────────── */

.config-card-link[b-ioishj0nxc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background-color: rgba(0, 154, 69, 0.08);
    text-decoration: none;
    transition: all 0.15s ease;
    border: 1px solid transparent;
}

    .config-card-link:hover[b-ioishj0nxc] {
        background-color: rgba(0, 154, 69, 0.16);
        border-color: rgba(0, 154, 69, 0.2);
        transform: translateY(-1px);
    }

    .config-card-link .bi[b-ioishj0nxc] {
        display: inline-block;
        width: 16px;
        height: 16px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        opacity: 0.85;
    }

    .config-card-link:hover .bi[b-ioishj0nxc] {
        opacity: 1;
    }

    .config-card-link .bi-chat-dots-fill[b-ioishj0nxc] {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23009a45' viewBox='0 0 16 16'%3E%3Cpath d='M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234-.2.032-.352-.176-.273-.362.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M5 8a1 1 0 1 0-2 0 1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0 1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2 1 1 0 0 0 0 2'/%3E%3C/svg%3E");
    }

    .config-card-link .bi-mic-fill[b-ioishj0nxc] {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23009a45' viewBox='0 0 16 16'%3E%3Cpath d='M5 3a3 3 0 0 1 6 0v5a3 3 0 0 1-6 0z'/%3E%3Cpath d='M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E");
    }

    .config-card-link .bi-search-heart[b-ioishj0nxc] {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23009a45' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 4.482c1.664-1.673 5.825 1.254 0 5.018-5.825-3.764-1.664-6.69 0-5.018'/%3E%3Cpath d='M13 6.5a6.47 6.47 0 0 1-1.258 3.835l.74.74a.75.75 0 0 1 .018 1.042l-.018.02-.019.018a.75.75 0 0 1-1.042.018l-.74-.74A6.5 6.5 0 1 1 13 6.5M6.5 12a5.5 5.5 0 1 0 0-11 5.5 5.5 0 0 0 0 11'/%3E%3C/svg%3E");
    }

    .config-card-link .bi-house-door-fill[b-ioishj0nxc] {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23009a45' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
    }

/* ── Badge ──────────────────────────────── */

.config-card-badge[b-ioishj0nxc] {
    font-size: 0.725rem;
    color: #64748b;
    background: #f1f5f9;
    border-radius: 6px;
    padding: 0.3rem 0.6rem;
    white-space: nowrap;
}

/* ── Card Body ──────────────────────────── */

.config-card-body[b-ioishj0nxc] {
    padding: 1.25rem;
}

/* ── Fields ─────────────────────────────── */

.config-field[b-ioishj0nxc] {
    margin-bottom: 1.25rem;
}

.config-label[b-ioishj0nxc] {
    display: block;
    font-size: 0.825rem;
    font-weight: 600;
    color: #334155;
    margin-bottom: 0.4rem;
    letter-spacing: 0.01em;
}

.config-field[b-ioishj0nxc]  .form-select {
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .config-field[b-ioishj0nxc]  .form-select:focus {
        border-color: #009a45;
        box-shadow: 0 0 0 3px rgba(0, 154, 69, 0.1);
    }

/* ── Prompt Editor ──────────────────────── */

.config-prompt-editor[b-ioishj0nxc] {
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    font-size: 0.8rem !important;
    line-height: 1.6 !important;
    background: #fafbfc !important;
    resize: vertical;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .config-prompt-editor:focus[b-ioishj0nxc] {
        border-color: #009a45 !important;
        box-shadow: 0 0 0 3px rgba(0, 154, 69, 0.1) !important;
        background: #ffffff !important;
    }

/* ── Placeholder Hints ──────────────────── */

.config-placeholders[b-ioishj0nxc] {
    margin-top: 0.5rem;
    font-size: 0.775rem;
    color: #64748b;
    line-height: 1.6;
}

    .config-placeholders code[b-ioishj0nxc] {
        background: rgba(0, 154, 69, 0.06);
        color: #009a45;
        padding: 0.15rem 0.4rem;
        border-radius: 4px;
        font-size: 0.75rem;
        font-weight: 500;
        border: 1px solid rgba(0, 154, 69, 0.1);
    }

/* ── Actions ────────────────────────────── */

.config-info-note[b-ioishj0nxc] {
    font-size: 0.8rem;
    color: #475569;
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 8px;
    padding: 0.6rem 0.85rem;
    margin-bottom: 1rem;
    line-height: 1.5;
}

    .config-info-note .bi[b-ioishj0nxc] {
        color: #0284c7;
    }

/* ── Model Warning ──────────────────────── */

.model-warning[b-ioishj0nxc] {
    margin-top: 0.5rem;
    font-size: 0.8rem;
    color: #92400e;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
    line-height: 1.5;
}

    .model-warning .bi[b-ioishj0nxc] {
        color: #d97706;
    }

.config-actions[b-ioishj0nxc] {
    display: flex;
    gap: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(0, 0, 0, 0.04);
}

    .config-actions .btn-primary[b-ioishj0nxc] {
        background-color: #009a45;
        border-color: #009a45;
        border-radius: 8px;
        font-size: 0.85rem;
        font-weight: 600;
        padding: 0.45rem 1rem;
        transition: all 0.15s ease;
    }

        .config-actions .btn-primary:hover:not(:disabled)[b-ioishj0nxc] {
            background-color: #007a38;
            border-color: #007a38;
            transform: translateY(-1px);
        }

    .config-actions .btn-outline-secondary[b-ioishj0nxc] {
        border-radius: 8px;
        font-size: 0.85rem;
        font-weight: 600;
        padding: 0.45rem 1rem;
    }
/* /Components/Pages/Admin/AppXStageMessagesCard.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════════
   AppXStageMessagesCard — isolated CSS
   Scoped to this component only via Blazor CSS isolation.
   ══════════════════════════════════════════════════════════════ */

/* ── Card shell ─────────────────────────────────────────────── */

.stage-messages-card[b-5jbe0ac87d] {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.04);
    border: 1px solid #e2e8f0;
    border-top: 3px solid #6366f1;
    margin-bottom: 2rem;
    overflow: hidden;
}

/* ── Card header ─────────────────────────────────────────────── */

.stage-card-header[b-5jbe0ac87d] {
    padding: 1.1rem 1.4rem 1rem;
    background: #ffffff;
    border-bottom: 1px solid #f1f5f9;
}

.stage-card-title-row[b-5jbe0ac87d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1.1rem;
}

.stage-card-title-group[b-5jbe0ac87d] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
}

.stage-card-icon-wrap[b-5jbe0ac87d] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: #f1f0ff;
    border: 1px solid rgba(99,102,241,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 0.95rem;
    color: #6366f1;
}

.stage-card-title[b-5jbe0ac87d] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0f172a;
    margin: 0;
    letter-spacing: -0.01em;
}

.stage-card-badges[b-5jbe0ac87d] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.stage-flow-badge[b-5jbe0ac87d] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.7rem;
    font-weight: 600;
    color: #64748b;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 0.2rem 0.6rem;
    white-space: nowrap;
}

.stage-flow-badge-dot[b-5jbe0ac87d] {
    display: inline-block;
    width: 5px;
    height: 5px;
    background: #22c55e;
    border-radius: 50%;
}

.stage-card-updated[b-5jbe0ac87d] {
    font-size: 0.7rem;
    color: #94a3b8;
    white-space: nowrap;
}

/* ── Step tracker ────────────────────────────────────────────── */

.step-tracker[b-5jbe0ac87d] {
    display: flex;
    align-items: flex-start;
    padding: 0.85rem 0 0.4rem;
    gap: 0;
    overflow-x: auto;
}

.step-item[b-5jbe0ac87d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
    min-width: 56px;
}

.step-bubble[b-5jbe0ac87d] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    font-weight: 700;
    background: #f1f5f9;
    border: 1.5px solid #cbd5e1;
    color: #64748b;
    transition: border-color 0.15s;
}

.step-label[b-5jbe0ac87d] {
    font-size: 0.63rem;
    font-weight: 600;
    color: #64748b;
    white-space: nowrap;
    text-align: center;
}

.step-connector[b-5jbe0ac87d] {
    flex: 1;
    height: 1.5px;
    background: #e2e8f0;
    margin-top: 13px;
    min-width: 18px;
    max-width: 40px;
}

.step-connector-muted[b-5jbe0ac87d] {
    background: #f1f5f9;
}

/* Per-step accent colors — bubble border + label */
.step-greeting     .step-bubble[b-5jbe0ac87d] { border-color: #818cf8; background: #f0f0ff; color: #4f46e5; }
.step-greeting     .step-label[b-5jbe0ac87d]  { color: #4f46e5; }

.step-medical      .step-bubble[b-5jbe0ac87d] { border-color: #60a5fa; background: #eff6ff; color: #1d4ed8; }
.step-medical      .step-label[b-5jbe0ac87d]  { color: #1d4ed8; }

.step-insurance    .step-bubble[b-5jbe0ac87d] { border-color: #34d399; background: #f0fdf8; color: #047857; }
.step-insurance    .step-label[b-5jbe0ac87d]  { color: #047857; }

.step-healthcenter .step-bubble[b-5jbe0ac87d] { border-color: #f6b850; background: #fffbf0; color: #b45309; }
.step-healthcenter .step-label[b-5jbe0ac87d]  { color: #b45309; }

.step-datetime     .step-bubble[b-5jbe0ac87d] { border-color: #c084fc; background: #faf5ff; color: #7e22ce; }
.step-datetime     .step-label[b-5jbe0ac87d]  { color: #7e22ce; }

.step-bubble-locked[b-5jbe0ac87d] {
    background: #f8fafc !important;
    border-color: #e2e8f0 !important;
    color: #94a3b8 !important;
    font-size: 0.8rem;
}

.step-label-locked[b-5jbe0ac87d] {
    color: #94a3b8;
}

/* ── Step legend ─────────────────────────────────────────────── */

.step-legend[b-5jbe0ac87d] {
    display: flex;
    gap: 1.1rem;
    padding: 0.3rem 0 0.1rem;
}

.step-legend-item[b-5jbe0ac87d] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.68rem;
    color: #94a3b8;
}

.step-legend-dot[b-5jbe0ac87d] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    display: inline-block;
    flex-shrink: 0;
}

.step-legend-active[b-5jbe0ac87d] { background: #818cf8; }
.step-legend-locked[b-5jbe0ac87d] { background: #cbd5e1; }

/* ── Card body ─────────────────────────────────────────────────── */

.stage-card-body[b-5jbe0ac87d] {
    padding: 1.25rem 1.4rem;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

/* ── Individual stage field ────────────────────────────────────── */

.stage-field[b-5jbe0ac87d] {
    padding: 0.85rem 1rem;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #e2e8f0;
    border-radius: 0 8px 8px 0;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.stage-field:focus-within[b-5jbe0ac87d] {
    box-shadow: 0 1px 6px rgba(0,0,0,0.06);
    background: #fafcff;
}

.stage-field-last[b-5jbe0ac87d] {
    /* no extra margin needed — gap handles spacing */
}

.stage-field-header[b-5jbe0ac87d] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    margin-bottom: 0.6rem;
}

.stage-field-icon[b-5jbe0ac87d] {
    font-size: 0.9rem;
    line-height: 1;
    flex-shrink: 0;
    width: 1rem;
    text-align: center;
    color: #94a3b8;
}

.stage-field-num[b-5jbe0ac87d] {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 800;
    flex-shrink: 0;
    background: #f1f5f9;
    border: 1.5px solid #cbd5e1;
    color: #64748b;
}

.stage-field-info[b-5jbe0ac87d] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    flex: 1;
    min-width: 0;
}

.stage-field-name[b-5jbe0ac87d] {
    font-size: 0.82rem;
    font-weight: 700;
    color: #1e293b;
    letter-spacing: -0.01em;
}

.stage-field-description[b-5jbe0ac87d] {
    font-size: 0.75rem;
    color: #94a3b8;
    line-height: 1.45;
}

.stage-textarea[b-5jbe0ac87d] {
    width: 100%;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    font-size: 0.85rem;
    line-height: 1.55;
    background: #ffffff;
    padding: 0.5rem 0.7rem;
    color: #1e293b;
    resize: vertical;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    box-sizing: border-box;
}

.stage-textarea:focus[b-5jbe0ac87d] {
    outline: none;
    border-color: #94a3b8;
    box-shadow: 0 0 0 2px rgba(0,0,0,0.04);
}

.stage-textarea[b-5jbe0ac87d]::placeholder {
    color: #cbd5e1;
    font-style: italic;
}

.stage-char-count[b-5jbe0ac87d] {
    text-align: right;
    font-size: 0.68rem;
    color: #cbd5e1;
    margin-top: 0.2rem;
}

.stage-char-warn[b-5jbe0ac87d] {
    color: #ef4444;
    font-weight: 600;
}

/* ── Per-stage left border + icon accent ─────────────────────── */

.stage-field-greeting[b-5jbe0ac87d]    { border-left-color: #818cf8; }
.stage-field-greeting    .stage-field-num[b-5jbe0ac87d]  { border-color: #818cf8; background: #f0f0ff; color: #4f46e5; }
.stage-field-greeting    .stage-field-name[b-5jbe0ac87d] { color: #312e81; }
.stage-field-greeting:focus-within[b-5jbe0ac87d] { border-left-color: #6366f1; }

.stage-field-medical[b-5jbe0ac87d]     { border-left-color: #60a5fa; }
.stage-field-medical     .stage-field-num[b-5jbe0ac87d]  { border-color: #60a5fa; background: #eff6ff; color: #1d4ed8; }
.stage-field-medical     .stage-field-name[b-5jbe0ac87d] { color: #1e3a8a; }
.stage-field-medical:focus-within[b-5jbe0ac87d] { border-left-color: #2563eb; }

.stage-field-insurance[b-5jbe0ac87d]   { border-left-color: #34d399; }
.stage-field-insurance   .stage-field-num[b-5jbe0ac87d]  { border-color: #34d399; background: #f0fdf8; color: #047857; }
.stage-field-insurance   .stage-field-name[b-5jbe0ac87d] { color: #064e3b; }
.stage-field-insurance:focus-within[b-5jbe0ac87d] { border-left-color: #059669; }

.stage-field-healthcenter[b-5jbe0ac87d] { border-left-color: #fbbf24; }
.stage-field-healthcenter .stage-field-num[b-5jbe0ac87d]  { border-color: #fbbf24; background: #fffbf0; color: #b45309; }
.stage-field-healthcenter .stage-field-name[b-5jbe0ac87d] { color: #78350f; }
.stage-field-healthcenter:focus-within[b-5jbe0ac87d] { border-left-color: #d97706; }

.stage-field-datetime[b-5jbe0ac87d]    { border-left-color: #c084fc; }
.stage-field-datetime    .stage-field-num[b-5jbe0ac87d]  { border-color: #c084fc; background: #faf5ff; color: #7e22ce; }
.stage-field-datetime    .stage-field-name[b-5jbe0ac87d] { color: #581c87; }
.stage-field-datetime:focus-within[b-5jbe0ac87d] { border-left-color: #9333ea; }

.stage-field-practitioner[b-5jbe0ac87d] { border-left-color: #22d3ee; }
.stage-field-practitioner .stage-field-num[b-5jbe0ac87d] { border-color: #22d3ee; background: #ecfeff; color: #0e7490; }
.stage-field-practitioner .stage-field-name[b-5jbe0ac87d] { color: #0f766e; }
.stage-field-practitioner:focus-within[b-5jbe0ac87d] { border-left-color: #0891b2; }

.stage-field-third-attempt[b-5jbe0ac87d] { border-left-color: #f97316; }
.stage-field-third-attempt .stage-field-num[b-5jbe0ac87d] { border-color: #f97316; background: #fff7ed; color: #c2410c; }
.stage-field-third-attempt .stage-field-name[b-5jbe0ac87d] { color: #9a3412; }
.stage-field-third-attempt:focus-within[b-5jbe0ac87d] { border-left-color: #ea580c; }

.stage-field-intent[b-5jbe0ac87d] { border-left-color: #38bdf8; }
.stage-field-intent .stage-field-num[b-5jbe0ac87d] { border-color: #38bdf8; background: #f0f9ff; color: #0369a1; }
.stage-field-intent .stage-field-name[b-5jbe0ac87d] { color: #0c4a6e; }
.stage-field-intent:focus-within[b-5jbe0ac87d] { border-left-color: #0ea5e9; }

.stage-field-handoff[b-5jbe0ac87d] { border-left-color: #fb7185; }
.stage-field-handoff .stage-field-num[b-5jbe0ac87d] { border-color: #fb7185; background: #fff1f2; color: #be123c; }
.stage-field-handoff .stage-field-name[b-5jbe0ac87d] { color: #881337; }
.stage-field-handoff:focus-within[b-5jbe0ac87d] { border-left-color: #f43f5e; }

.stage-field-redirect[b-5jbe0ac87d] { border-left-color: #2dd4bf; }
.stage-field-redirect .stage-field-num[b-5jbe0ac87d] { border-color: #2dd4bf; background: #f0fdfa; color: #0f766e; }
.stage-field-redirect .stage-field-name[b-5jbe0ac87d] { color: #134e4a; }
.stage-field-redirect:focus-within[b-5jbe0ac87d] { border-left-color: #14b8a6; }

/* Focus-scoped textarea border per stage */
.stage-field-greeting:focus-within    .stage-textarea:focus[b-5jbe0ac87d] { border-color: #818cf8; box-shadow: 0 0 0 2px rgba(99,102,241,0.1); }
.stage-field-medical:focus-within     .stage-textarea:focus[b-5jbe0ac87d] { border-color: #60a5fa; box-shadow: 0 0 0 2px rgba(37,99,235,0.1); }
.stage-field-insurance:focus-within   .stage-textarea:focus[b-5jbe0ac87d] { border-color: #34d399; box-shadow: 0 0 0 2px rgba(5,150,105,0.1); }
.stage-field-healthcenter:focus-within .stage-textarea:focus[b-5jbe0ac87d] { border-color: #fbbf24; box-shadow: 0 0 0 2px rgba(217,119,6,0.1); }
.stage-field-datetime:focus-within    .stage-textarea:focus[b-5jbe0ac87d] { border-color: #c084fc; box-shadow: 0 0 0 2px rgba(147,51,234,0.1); }
.stage-field-practitioner:focus-within .stage-textarea:focus[b-5jbe0ac87d] { border-color: #22d3ee; box-shadow: 0 0 0 2px rgba(8,145,178,0.1); }
.stage-field-third-attempt:focus-within .stage-textarea:focus[b-5jbe0ac87d] { border-color: #f97316; box-shadow: 0 0 0 2px rgba(234,88,12,0.1); }
.stage-field-intent:focus-within .stage-textarea:focus[b-5jbe0ac87d] { border-color: #38bdf8; box-shadow: 0 0 0 2px rgba(14,165,233,0.1); }
.stage-field-handoff:focus-within .stage-textarea:focus[b-5jbe0ac87d] { border-color: #fb7185; box-shadow: 0 0 0 2px rgba(244,63,94,0.1); }
.stage-field-redirect:focus-within .stage-textarea:focus[b-5jbe0ac87d] { border-color: #2dd4bf; box-shadow: 0 0 0 2px rgba(20,184,166,0.1); }

/* ── Greeting live preview ─────────────────────────────────────── */

.stage-preview[b-5jbe0ac87d] {
    display: flex;
    align-items: baseline;
    gap: 0.4rem;
    margin-top: 0.3rem;
    padding: 0.3rem 0.55rem;
    background: #f5f5ff;
    border: 1px solid rgba(99,102,241,0.15);
    border-radius: 5px;
    font-size: 0.73rem;
}

.stage-preview-label[b-5jbe0ac87d] {
    color: #6366f1;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.stage-preview-text[b-5jbe0ac87d] {
    color: #3730a3;
    font-style: italic;
}

.placeholder-code[b-5jbe0ac87d] {
    font-family: 'Cascadia Code', 'Consolas', monospace;
    background: #eef2ff;
    color: #6366f1;
    border-radius: 3px;
    padding: 0 0.25rem;
    font-size: 0.8em;
}

/* ── Info note ─────────────────────────────────────────────────── */

.stage-info-note[b-5jbe0ac87d] {
    font-size: 0.78rem;
    color: #64748b;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 0.55rem 0.85rem;
    line-height: 1.55;
}

/* ── Actions ───────────────────────────────────────────────────── */

.stage-card-actions[b-5jbe0ac87d] {
    display: flex;
    gap: 0.5rem;
    padding-top: 0.85rem;
    border-top: 1px solid #f1f5f9;
    margin-top: 0.25rem;
}

.stage-card-actions .btn-primary[b-5jbe0ac87d] {
    background-color: #6366f1;
    border-color: #6366f1;
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 0.4rem 1rem;
    transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.stage-card-actions .btn-primary:hover:not(:disabled)[b-5jbe0ac87d] {
    background-color: #4f46e5;
    border-color: #4f46e5;
    box-shadow: 0 2px 8px rgba(99,102,241,0.25);
}

.stage-card-actions .btn-outline-secondary[b-5jbe0ac87d] {
    border-radius: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 0.4rem 0.9rem;
    color: #64748b;
    border-color: #e2e8f0;
}

.stage-card-actions .btn-outline-secondary:hover:not(:disabled)[b-5jbe0ac87d] {
    background-color: #f8fafc;
    border-color: #94a3b8;
    color: #475569;
}
/* /Components/Pages/Admin/EmbeddingCacheEditorCard.razor.rz.scp.css */
.cache-editor-card[b-a0g7pt2n72] {
    border-left-color: #0ea5e9;
}

.cache-editor-note[b-a0g7pt2n72] {
    font-size: 0.8rem;
    color: #475569;
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 8px;
    padding: 0.6rem 0.85rem;
    margin-bottom: 1rem;
    line-height: 1.5;
}

.cache-editor-note code[b-a0g7pt2n72] {
    background: rgba(14, 165, 233, 0.1);
    color: #0369a1;
    border: 1px solid rgba(14, 165, 233, 0.2);
    border-radius: 4px;
    padding: 0.1rem 0.35rem;
}

.cache-dropdown[b-a0g7pt2n72] {
    border: 1px solid #dbeafe;
    border-radius: 10px;
    margin-bottom: 0.75rem;
    overflow: hidden;
    background: #fff;
}

.cache-dropdown summary[b-a0g7pt2n72] {
    cursor: pointer;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.7rem 0.9rem;
    background: #f8fbff;
    border-bottom: 1px solid #dbeafe;
}

.cache-dropdown summary[b-a0g7pt2n72]::-webkit-details-marker {
    display: none;
}

.cache-title[b-a0g7pt2n72] {
    font-size: 0.87rem;
    font-weight: 700;
    color: #0f172a;
}

.cache-count[b-a0g7pt2n72] {
    font-size: 0.75rem;
    color: #0369a1;
    background: #e0f2fe;
    border-radius: 999px;
    padding: 0.15rem 0.55rem;
}

.cache-meta[b-a0g7pt2n72] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.cache-status-dot[b-a0g7pt2n72] {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    display: inline-block;
}

.cache-status-ready[b-a0g7pt2n72] {
    background: #22c55e;
    box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.15);
}

.cache-status-not-ready[b-a0g7pt2n72] {
    background: #ef4444;
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.15);
}

.cache-status-text[b-a0g7pt2n72] {
    font-size: 0.75rem;
    color: #334155;
    font-weight: 600;
}

.cache-body[b-a0g7pt2n72] {
    padding: 0.8rem;
}

.cache-editor-textarea[b-a0g7pt2n72] {
    min-height: 220px;
    border-radius: 8px !important;
    border: 1px solid #dbeafe !important;
    font-size: 0.8rem !important;
}

.cache-editor-textarea:focus[b-a0g7pt2n72] {
    border-color: #0ea5e9 !important;
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.12) !important;
}

.cache-actions[b-a0g7pt2n72] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.6rem;
}
/* /Components/Pages/Admin/StressTest.razor.rz.scp.css */
.stress-page[b-o2vh51s3jb] {
    max-width: 1200px;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ── Page Header ────────────────────────── */

.page-header[b-o2vh51s3jb] {
    margin-bottom: 1.25rem !important;
    border-bottom: 2px solid rgba(0, 154, 69, 0.14) !important;
}

    .page-header h4[b-o2vh51s3jb] {
        color: #1e293b;
        font-weight: 700;
        font-size: 1.2rem;
        letter-spacing: -0.01em;
    }

    .page-header p[b-o2vh51s3jb] {
        font-size: 0.875rem;
    }

/* ── Cards ────────────────────────── */
.stress-card[b-o2vh51s3jb] {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 12px;
    padding: 1.25rem;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
    border-left: 4px solid #4CAF50;
}

.card-section-title[b-o2vh51s3jb] {
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #64748b;
    margin: 0 0 1rem;
}

/* ── Config grids ────────────────────────── */
.config-grid[b-o2vh51s3jb] {
    display: grid;
    gap: 1rem;
    margin-bottom: 0.9rem;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}

.config-grid-params[b-o2vh51s3jb] {
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.field-group[b-o2vh51s3jb] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.field-group-span2[b-o2vh51s3jb] {
    grid-column: span 2;
}

.field-label[b-o2vh51s3jb] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #334155;
}

.field-input[b-o2vh51s3jb] {
    padding: 0.5rem 0.75rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #ffffff;
    font-size: 0.875rem;
    color: #1f2937;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .field-input:focus[b-o2vh51s3jb] {
        outline: none;
        border-color: #009a45;
        box-shadow: 0 0 0 3px rgba(0, 154, 69, 0.1);
    }

    .field-input:disabled[b-o2vh51s3jb] {
        opacity: 0.55;
        cursor: not-allowed;
    }

.field-help[b-o2vh51s3jb] {
    font-size: 0.75rem;
    color: #64748b;
}

    .field-help code[b-o2vh51s3jb] {
        color: #0f766e;
        background: #f0fdfa;
        border: 1px solid #ccfbf1;
        border-radius: 4px;
        padding: 0.08rem 0.35rem;
    }

.query-mode-row[b-o2vh51s3jb] {
    display: flex;
    gap: 1rem;
    align-items: center;
    min-height: 42px;
}

.query-mode-option[b-o2vh51s3jb] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.86rem;
    color: #334155;
}

    .query-mode-option input[type="radio"][b-o2vh51s3jb] {
        accent-color: #009a45;
    }

/* ── Action buttons ────────────────────────── */
.config-actions[b-o2vh51s3jb] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.form-error[b-o2vh51s3jb] {
    width: 100%;
    font-size: 0.82rem;
    color: #b02a37;
    background: rgba(220, 53, 69, 0.08);
    border: 1px solid rgba(220, 53, 69, 0.24);
    border-radius: 8px;
    padding: 0.45rem 0.7rem;
}

.btn-stress-start[b-o2vh51s3jb],
.btn-stress-stop[b-o2vh51s3jb] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1.5rem;
    border-radius: 8px;
    border: none;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

.btn-stress-start[b-o2vh51s3jb] {
    background: #009a45;
    color: #fff;
    box-shadow: 0 2px 8px rgba(0, 154, 69, 0.3);
}

    .btn-stress-start:hover:not(:disabled)[b-o2vh51s3jb] {
        background: #007a38;
        box-shadow: 0 4px 16px rgba(0, 154, 69, 0.4);
        transform: translateY(-1px);
    }

    .btn-stress-start:disabled[b-o2vh51s3jb] {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none;
    }

.btn-stress-stop[b-o2vh51s3jb] {
    background: linear-gradient(135deg, #dc3545, #b02a37);
    color: #fff;
    box-shadow: 0 2px 8px rgba(220, 53, 69, 0.35);
}

    .btn-stress-stop:hover[b-o2vh51s3jb] {
        box-shadow: 0 4px 16px rgba(220, 53, 69, 0.5);
        transform: translateY(-1px);
    }

.btn-icon[b-o2vh51s3jb] {
    font-size: 0.8rem;
}

/* ── Progress card ── */
.progress-card[b-o2vh51s3jb] {
}

.progress-header[b-o2vh51s3jb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

    .progress-header .card-section-title[b-o2vh51s3jb] {
        margin-bottom: 0;
    }

.progress-status[b-o2vh51s3jb] {
    font-size: 0.74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 0.2rem 0.65rem;
    border-radius: 20px;
}

.status-running[b-o2vh51s3jb] {
    background: rgba(0, 154, 69, 0.1);
    color: #007a38;
    animation: pulse-badge-b-o2vh51s3jb 1.2s ease-in-out infinite;
}

.status-done[b-o2vh51s3jb] {
    background: rgba(0, 154, 69, 0.1);
    color: #007a38;
}

.status-failed[b-o2vh51s3jb] {
    background: rgba(220, 53, 69, 0.12);
    color: #dc3545;
}

@keyframes pulse-badge-b-o2vh51s3jb {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.6;
    }
}

/* ── Progress bar ── */
.progress-bar-wrap[b-o2vh51s3jb] {
    margin-bottom: 1.5rem;
}

.progress-bar-track[b-o2vh51s3jb] {
    height: 8px;
    background: rgba(0, 154, 69, 0.12);
    border-radius: 99px;
    overflow: hidden;
    margin-bottom: 0.4rem;
}

.progress-bar-fill[b-o2vh51s3jb] {
    height: 100%;
    background: linear-gradient(90deg, #009a45 0%, #31b86a 100%);
    border-radius: 99px;
    transition: width 0.4s ease;
}

.progress-bar-label[b-o2vh51s3jb] {
    font-size: 0.8rem;
    color: #64748b;
}

/* ── Batch table ── */
.batch-table-wrap[b-o2vh51s3jb] {
    overflow-x: auto;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.batch-table[b-o2vh51s3jb] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

    .batch-table thead th[b-o2vh51s3jb] {
        padding: 0.55rem 0.85rem;
        text-align: left;
        font-size: 0.75rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        color: #64748b;
        background: #f8fafc;
        border-bottom: 1px solid #e2e8f0;
    }

    .batch-table tbody td[b-o2vh51s3jb] {
        padding: 0.5rem 0.85rem;
        color: #334155;
        border-bottom: 1px solid #f1f5f9;
    }

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

    .batch-table tbody tr:hover td[b-o2vh51s3jb] {
        background: #f8fafc;
    }

    .batch-table .row-has-failures td[b-o2vh51s3jb] {
        background: rgba(220, 53, 69, 0.04);
    }

    .batch-table .col-success[b-o2vh51s3jb] {
        color: #007a38;
        font-weight: 600;
    }

    .batch-table .col-fail[b-o2vh51s3jb] {
        color: #dc3545;
        font-weight: 600;
    }

.btn-batch-details[b-o2vh51s3jb] {
    border: 1px solid #cbd5e1;
    background: #fff;
    color: #334155;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.55rem;
}

    .btn-batch-details:hover[b-o2vh51s3jb] {
        background: #f8fafc;
        border-color: #94a3b8;
    }

.batch-modal-backdrop[b-o2vh51s3jb] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.batch-modal[b-o2vh51s3jb] {
    width: min(1200px, 96vw);
    max-height: 88vh;
    overflow: hidden;
    background: #fff;
    border-radius: 12px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.28);
    display: flex;
    flex-direction: column;
    padding: 1rem 1rem 0.9rem;
}

.batch-modal-header[b-o2vh51s3jb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.4rem;
}

.btn-close-modal[b-o2vh51s3jb] {
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 1rem;
    width: 32px;
    height: 32px;
    border-radius: 50%;
}

    .btn-close-modal:hover[b-o2vh51s3jb] {
        background: #f1f5f9;
        color: #0f172a;
    }

.batch-modal-table-wrap[b-o2vh51s3jb] {
    overflow: auto;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.batch-modal-table[b-o2vh51s3jb] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

    .batch-modal-table th[b-o2vh51s3jb] {
        position: sticky;
        top: 0;
        z-index: 1;
        background: #f8fafc;
        color: #475569;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 0.7rem;
        padding: 0.5rem 0.65rem;
        border-bottom: 1px solid #e2e8f0;
        text-align: left;
    }

    .batch-modal-table td[b-o2vh51s3jb] {
        padding: 0.48rem 0.65rem;
        border-bottom: 1px solid #f1f5f9;
        vertical-align: top;
        color: #334155;
    }

    .batch-modal-table tr:last-child td[b-o2vh51s3jb] {
        border-bottom: none;
    }

.response-preview[b-o2vh51s3jb] {
    max-width: 480px;
    white-space: normal;
    word-break: break-word;
}

/* ── Summary card ── */
.summary-grid[b-o2vh51s3jb] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 1rem;
}

.summary-stat[b-o2vh51s3jb] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

    .summary-stat.stat-success[b-o2vh51s3jb] {
        background: #ecfdf3;
        border-color: rgba(0, 154, 69, 0.22);
    }

    .summary-stat.stat-fail[b-o2vh51s3jb] {
        background: rgba(220, 53, 69, 0.06);
        border-color: rgba(220, 53, 69, 0.22);
    }

    .summary-stat.stat-highlight[b-o2vh51s3jb] {
        background: linear-gradient(135deg, #009a45, #0b7f3f);
        border: none;
    }

        .summary-stat.stat-highlight .stat-label[b-o2vh51s3jb],
        .summary-stat.stat-highlight .stat-value[b-o2vh51s3jb] {
            color: #fff;
        }

.stat-label[b-o2vh51s3jb] {
    font-size: 0.73rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #64748b;
}

.stat-value[b-o2vh51s3jb] {
    font-size: 1.35rem;
    font-weight: 800;
    color: #1e293b;
    letter-spacing: -0.02em;
}

/* ── Error card ── */
.error-card[b-o2vh51s3jb] {
    border-color: rgba(220, 53, 69, 0.25);
    background: rgba(220, 53, 69, 0.04);
}

.error-count[b-o2vh51s3jb] {
    display: inline-block;
    background: #dc3545;
    color: #fff;
    border-radius: 99px;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 0.1rem 0.5rem;
    margin-left: 0.4rem;
    vertical-align: middle;
}

.error-log[b-o2vh51s3jb] {
    max-height: 200px;
    overflow-y: auto;
    font-family: var(--bs-font-monospace);
    font-size: 0.8rem;
    background: rgba(0,0,0,0.04);
    border-radius: 6px;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.error-line[b-o2vh51s3jb] {
    color: #b02a37;
    word-break: break-all;
}

.error-truncated[b-o2vh51s3jb] {
    color: #64748b;
    font-style: italic;
}

@media (max-width: 991px) {
    .field-group-span2[b-o2vh51s3jb] {
        grid-column: span 1;
    }
}
/* /Components/Pages/Avaliador/AppXTestPage.razor.rz.scp.css */
.appx-test-layout[b-s2zc2h8b5p] {
    display: flex;
    gap: 1rem;
    height: calc(100vh - 1.5rem);
    padding: 0.75rem;
    overflow: hidden;
}

/* ── Setup Panel ─────────────────────────────────────────────────── */

.appx-setup-panel[b-s2zc2h8b5p] {
    width: 340px;
    min-width: 340px;
    background: var(--card-bg, #fff);
    border: 1px solid var(--border-color, #e2e8f0);
    border-radius: 12px;
    padding: 1rem;
    overflow-y: auto;
    transition: width 0.3s ease, min-width 0.3s ease;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

    .appx-setup-panel.panel-collapsed[b-s2zc2h8b5p] {
        width: 300px;
        min-width: 300px;
    }

.panel-header[b-s2zc2h8b5p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

    .panel-header h5[b-s2zc2h8b5p] {
        margin: 0;
        font-size: 0.95rem;
        font-weight: 600;
        flex: 1;
    }

.panel-icon[b-s2zc2h8b5p] {
    font-size: 1.1rem;
}

.btn-icon[b-s2zc2h8b5p] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-muted, #94a3b8);
    font-size: 0.85rem;
    padding: 2px 6px;
    border-radius: 4px;
    transition: background 0.15s;
}

    .btn-icon:hover[b-s2zc2h8b5p] {
        background: var(--hover-bg, #f1f5f9);
    }

/* Session badge */
.session-badge[b-s2zc2h8b5p] {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.badge-label[b-s2zc2h8b5p] {
    font-size: 0.7rem;
    color: #16a34a;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.badge-id[b-s2zc2h8b5p] {
    font-size: 0.65rem;
    color: #166534;
    word-break: break-all;
}

/* Flow type badge */
.flow-badge[b-s2zc2h8b5p] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    border-radius: 6px;
    padding: 0.35rem 0.6rem;
    font-size: 0.75rem;
    font-weight: 600;
    margin-top: 0.25rem;
}

.flow-badge-detecting[b-s2zc2h8b5p] {
    background: #fefce8;
    border: 1px solid #fde68a;
    color: #92400e;
}

.flow-badge-standard[b-s2zc2h8b5p] {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1e40af;
}

.flow-badge-practitioner[b-s2zc2h8b5p] {
    background: #fdf4ff;
    border: 1px solid #e9d5ff;
    color: #6b21a8;
}

/* Debug state (removed - replaced by booking-stepper) */
.setup-form[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.form-section[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

    .form-section h6[b-s2zc2h8b5p] {
        font-size: 0.8rem;
        font-weight: 600;
        color: var(--text-muted, #64748b);
        margin: 0;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }

.form-row[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

    .form-row label[b-s2zc2h8b5p] {
        font-size: 0.75rem;
        color: var(--text-muted, #64748b);
    }

    .form-row.two-col[b-s2zc2h8b5p] {
        flex-direction: row;
        gap: 0.5rem;
    }

        .form-row.two-col > div[b-s2zc2h8b5p] {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 2px;
        }

/* Favorites */
.fav-row[b-s2zc2h8b5p] {
    display: flex;
    gap: 4px;
    align-items: center;
}

    .fav-row .form-control[b-s2zc2h8b5p] {
        flex: 1;
        font-size: 0.75rem;
    }

.btn-remove[b-s2zc2h8b5p] {
    background: none;
    border: none;
    color: #ef4444;
    cursor: pointer;
    font-size: 0.75rem;
    padding: 2px 4px;
    border-radius: 4px;
}

    .btn-remove:hover[b-s2zc2h8b5p] {
        background: #fef2f2;
    }

.btn-add[b-s2zc2h8b5p] {
    background: none;
    border: 1px dashed var(--border-color, #e2e8f0);
    border-radius: 6px;
    color: var(--text-muted, #64748b);
    cursor: pointer;
    font-size: 0.75rem;
    padding: 4px 8px;
    transition: all 0.15s;
    align-self: flex-start;
}

    .btn-add:hover[b-s2zc2h8b5p] {
        border-color: var(--primary, #6366f1);
        color: var(--primary, #6366f1);
    }

/* Debug state (removed - replaced by booking-stepper) */

/* ── Booking Stepper ─────────────────────────────────────────────── */

.booking-stepper[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0.25rem 0;
    flex: 1;
}

.step[b-s2zc2h8b5p] {
    display: flex;
    gap: 0.6rem;
    min-height: 52px;
}

.step-left[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    width: 24px;
}

.step-dot[b-s2zc2h8b5p] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    font-weight: 700;
    flex-shrink: 0;
}

.step-done .step-dot[b-s2zc2h8b5p] {
    background: #22c55e;
    color: #fff;
}

.step-current .step-dot[b-s2zc2h8b5p] {
    background: var(--primary, #6366f1);
    color: #fff;
    box-shadow: 0 0 0 3px rgba(99,102,241,0.18);
}

.step-pending .step-dot[b-s2zc2h8b5p] {
    background: #e2e8f0;
    color: #94a3b8;
}

.dot-check[b-s2zc2h8b5p] {
    font-size: 0.75rem;
}

.step-line[b-s2zc2h8b5p] {
    width: 2px;
    flex: 1;
    background: #e2e8f0;
    margin: 2px 0;
    min-height: 10px;
}

    .step-line.line-done[b-s2zc2h8b5p] {
        background: #22c55e;
    }

.step-body[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    padding-bottom: 0.6rem;
    min-width: 0;
    flex: 1;
}

.step-header-row[b-s2zc2h8b5p] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: 2px;
}

.step-icon[b-s2zc2h8b5p] {
    font-size: 0.8rem;
    line-height: 1;
}

.step-label[b-s2zc2h8b5p] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    white-space: nowrap;
}

.step-done .step-label[b-s2zc2h8b5p] {
    color: var(--text-primary, #1e293b);
}

.step-current .step-label[b-s2zc2h8b5p] {
    color: var(--primary, #6366f1);
}

.step-value[b-s2zc2h8b5p] {
    font-size: 0.72rem;
    color: #166534;
    background: #f0fdf4;
    border-radius: 4px;
    padding: 1px 5px;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    display: block;
}

    .step-value.step-waiting[b-s2zc2h8b5p] {
        background: none;
        color: #94a3b8;
        font-style: italic;
        padding: 1px 0;
    }

.step-pending .step-value[b-s2zc2h8b5p] {
    background: none;
    color: #94a3b8;
    padding: 1px 0;
}

.step-extra[b-s2zc2h8b5p] {
    font-size: 0.65rem;
    color: #64748b;
    margin-top: 1px;
    display: block;
}

/* ── Chat Panel ──────────────────────────────────────────────────── */

.appx-chat-panel[b-s2zc2h8b5p] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

    /* Override ChatShell internals to fill available height */
    .appx-chat-panel[b-s2zc2h8b5p]  .page-wrapper {
        height: 100%;
        max-width: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
    }

    .appx-chat-panel[b-s2zc2h8b5p]  .chat-card {
        height: auto;
        flex: 1;
        min-height: 0;
    }

/* ── Household row (setup form) ──────────────────────────────────── */

.household-row[b-s2zc2h8b5p] {
    display: flex;
    gap: 4px;
    align-items: center;
}

    .household-row .form-control[b-s2zc2h8b5p] {
        font-size: 0.75rem;
    }

/* ── Patient badge (active session panel) ────────────────────────── */

.patient-badge[b-s2zc2h8b5p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: 8px;
    padding: 0.4rem 0.65rem;
    margin-top: 0.25rem;
    font-size: 0.75rem;
}

.patient-badge-self[b-s2zc2h8b5p] {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    color: #0369a1;
}

.patient-badge-other[b-s2zc2h8b5p] {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #c2410c;
}

.patient-badge-icon[b-s2zc2h8b5p] {
    font-size: 1rem;
    flex-shrink: 0;
}

.patient-badge-info[b-s2zc2h8b5p] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

.patient-badge-label[b-s2zc2h8b5p] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.7;
}

.patient-badge-name[b-s2zc2h8b5p] {
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.patient-badge-sub[b-s2zc2h8b5p] {
    font-size: 0.65rem;
    opacity: 0.75;
    font-family: monospace;
}
/* /Components/Pages/Avaliador/AzureFoundryAudioSearch.razor.rz.scp.css */
/* /Components/Pages/Avaliador/AzureFoundryMedicalSearch.razor.rz.scp.css */
/* /Components/Pages/Avaliador/MedicalActChatDiagnose.razor.rz.scp.css */
/* ===== Page-specific header styles ===== */

.diagnose-header-title[b-o9ec4ga9sj] {
    font-weight: 700;
    font-size: 1.75rem;
    color: var(--neolink-fern-dark);
}

.diagnose-header-desc[b-o9ec4ga9sj] {
    color: #6c757d;
    font-size: 0.9rem;
    margin-bottom: 0.6rem;
}

@media (max-width: 768px) {
    .diagnose-header-title[b-o9ec4ga9sj] {
        font-size: 1.35rem;
    }

    .diagnose-header-desc[b-o9ec4ga9sj] {
        display: none;
    }
}
/* /Components/Pages/Avaliador/MedicalActSearch.razor.rz.scp.css */
/* /Components/Pages/Avaliador/MedicalActSearchAudio.razor.rz.scp.css */
/* /Components/Pages/Avaliador/MedicalActSearchGuide.razor.rz.scp.css */
/* ═══════════════════════════════════════════════
   Medical Act Search Guide — glassmorphism info layout
   Violet/purple accent to match the Identificador de Ato page
   ═══════════════════════════════════════════════ */

.guide-wrapper[b-p9lce20r7g] {
    max-width: 900px;
    margin: 0 auto;
    padding: 2rem 1.5rem 4rem;
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

/* ── Hero ─────────────────────────────────────── */

.guide-hero[b-p9lce20r7g] {
    position: relative;
    text-align: center;
    padding: 3.5rem 2rem 3rem;
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(192, 165, 252, 0.3);
    border-radius: 1.5rem;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: 0 8px 40px rgba(129, 230, 217, 0.08), inset 0 1px 0 rgba(255,255,255,0.7);
    overflow: hidden;
}

.hero-glow[b-p9lce20r7g] {
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    height: 200px;
    background: radial-gradient(ellipse, rgba(var(--neolink-shamrock-rgb), 0.18) 0%, transparent 70%);
    pointer-events: none;
}

.hero-badge[b-p9lce20r7g] {
    display: inline-block;
    padding: 0.3rem 1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(var(--neolink-shamrock-rgb), 0.12), rgba(var(--neolink-fern-rgb), 0.12));
    border: 1px solid rgba(var(--neolink-shamrock-rgb), 0.25);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    color: var(--neolink-shamrock-dark);
    margin-bottom: 1.25rem;
}

.hero-title[b-p9lce20r7g] {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    line-height: 1.2;
    color: #1e1b4b;
    margin-bottom: 1rem;
}

.hero-accent[b-p9lce20r7g] {
    background: var(--neolink-gradient-brand);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.hero-sub[b-p9lce20r7g] {
    font-size: 1.05rem;
    color: #475569;
    max-width: 560px;
    margin: 0 auto 2rem;
    line-height: 1.65;
}

.hero-cta[b-p9lce20r7g] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.75rem;
    border-radius: 999px;
    background: var(--neolink-gradient-accent);
    color: var(--neolink-text-on-accent);
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    box-shadow: 0 4px 20px rgba(var(--neolink-shamrock-rgb), 0.35);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .hero-cta:hover[b-p9lce20r7g] {
        transform: translateY(-2px);
        box-shadow: 0 8px 28px rgba(var(--neolink-shamrock-rgb), 0.45);
        color: #ffffff;
    }

.cta-arrow[b-p9lce20r7g] {
    font-size: 1.1rem;
    transition: transform 0.2s ease;
}

.hero-cta:hover .cta-arrow[b-p9lce20r7g] {
    transform: translateX(4px);
}

/* ── Section shell ────────────────────────────── */

.guide-section[b-p9lce20r7g] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.section-title[b-p9lce20r7g] {
    font-size: 1.5rem;
    font-weight: 750;
    color: #1e1b4b;
    margin: 0;
}

.section-subtitle[b-p9lce20r7g] {
    font-size: 0.95rem;
    color: #64748b;
    margin: -0.75rem 0 0;
}

/* ── Steps grid ───────────────────────────────── */

.steps-grid[b-p9lce20r7g] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
}

.step-card[b-p9lce20r7g] {
    position: relative;
    padding: 1.5rem;
    background: rgba(255,255,255,0.6);
    border: 1px solid rgba(var(--neolink-shamrock-rgb), 0.20);
    border-radius: 1.1rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 2px 16px rgba(var(--neolink-shamrock-rgb), 0.06), inset 0 1px 0 rgba(255,255,255,0.8);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .step-card:hover[b-p9lce20r7g] {
        transform: translateY(-3px);
        box-shadow: 0 8px 28px rgba(var(--neolink-shamrock-rgb), 0.12);
    }

.step-number[b-p9lce20r7g] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: var(--neolink-gradient-accent);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-icon[b-p9lce20r7g] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
    line-height: 1;
}

.step-card h3[b-p9lce20r7g] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #1e1b4b;
    margin: 0 0 0.5rem;
}

.step-card p[b-p9lce20r7g] {
    font-size: 0.875rem;
    color: #475569;
    margin: 0;
    line-height: 1.6;
}

/* ── Features grid ────────────────────────────── */

.features-grid[b-p9lce20r7g] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1rem;
}

.feature-card[b-p9lce20r7g] {
    padding: 1.4rem 1.5rem;
    border-radius: 1.1rem;
    border: 1px solid transparent;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: transform 0.2s ease;
}

    .feature-card:hover[b-p9lce20r7g] {
        transform: translateY(-2px);
    }

    .feature-card h4[b-p9lce20r7g] {
        font-size: 0.9rem;
        font-weight: 700;
        margin: 0.5rem 0 0.4rem;
    }

    .feature-card p[b-p9lce20r7g] {
        font-size: 0.855rem;
        margin: 0;
        line-height: 1.6;
    }

.feature-icon[b-p9lce20r7g] {
    font-size: 1.6rem;
    line-height: 1;
}

.feature-purple[b-p9lce20r7g] {
    background: linear-gradient(135deg, rgba(57,158,90,0.10), rgba(57,158,90,0.06));
    border-color: rgba(57,158,90,0.22);
    color: #1a4a2a;
}

.feature-blue[b-p9lce20r7g] {
    background: linear-gradient(135deg, rgba(83,122,90,0.10), rgba(83,122,90,0.07));
    border-color: rgba(83,122,90,0.22);
    color: #2c302e;
}

.feature-teal[b-p9lce20r7g] {
    background: linear-gradient(135deg, rgba(57,158,90,0.12), rgba(43,122,67,0.08));
    border-color: rgba(57,158,90,0.20);
    color: #1a4a2a;
}

.feature-indigo[b-p9lce20r7g] {
    background: linear-gradient(135deg, rgba(44,48,46,0.08), rgba(44,48,46,0.05));
    border-color: rgba(44,48,46,0.18);
    color: #2c302e;
}

.feature-rose[b-p9lce20r7g] {
    background: linear-gradient(135deg, rgba(83,122,90,0.09), rgba(57,158,90,0.05));
    border-color: rgba(83,122,90,0.15);
    color: #3d5c43;
}

.feature-amber[b-p9lce20r7g] {
    background: linear-gradient(135deg, rgba(71,74,72,0.09), rgba(71,74,72,0.05));
    border-color: rgba(71,74,72,0.16);
    color: #474a48;
}

/* ── Tips list ────────────────────────────────── */

.tips-list[b-p9lce20r7g] {
    display: flex;
    flex-direction: column;
    gap: 0;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(192, 165, 252, 0.25);
    border-radius: 1.1rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    overflow: hidden;
}

.tip-item[b-p9lce20r7g] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.1rem 1.5rem;
    font-size: 0.9rem;
    color: #334155;
    line-height: 1.65;
    border-bottom: 1px solid rgba(192, 165, 252, 0.14);
    transition: background 0.15s ease;
}

    .tip-item:last-child[b-p9lce20r7g] {
        border-bottom: none;
    }

    .tip-item:hover[b-p9lce20r7g] {
        background: rgba(129, 230, 217, 0.04);
    }

.tip-dot[b-p9lce20r7g] {
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--neolink-shamrock), var(--neolink-shamrock-light));
    margin-top: 0.45rem;
    box-shadow: 0 0 6px rgba(var(--neolink-shamrock-rgb), 0.4);
}

/* ── Fields explainer ─────────────────────────── */

.progress-explainer[b-p9lce20r7g] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1rem;
}

.pe-item[b-p9lce20r7g] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.1rem;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(192, 165, 252, 0.2);
    border-radius: 0.875rem;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

    .pe-item p[b-p9lce20r7g] {
        font-size: 0.8rem;
        color: #475569;
        margin: 0;
        line-height: 1.55;
    }

.pe-badge[b-p9lce20r7g] {
    display: inline-block;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    width: fit-content;
}

.pe-act[b-p9lce20r7g] {
    background: rgba(var(--neolink-shamrock-rgb), 0.12);
    color: var(--neolink-shamrock-dark);
    border: 1px solid rgba(var(--neolink-shamrock-rgb), 0.25);
}

.pe-spec[b-p9lce20r7g] {
    background: rgba(var(--neolink-fern-rgb), 0.12);
    color: var(--neolink-fern-dark);
    border: 1px solid rgba(var(--neolink-fern-rgb), 0.25);
}
/* /Components/Pages/Avaliador/MedicalSearchGuide.razor.rz.scp.css */
/* ═══════════════════════════════════════════════
   Guide page — glassmorphism info layout
   ═══════════════════════════════════════════════ */

.guide-wrapper[b-qh0k1pkuqm] {
    max-width: 900px;
    margin: 0 auto;
    padding: 2rem 1.5rem 4rem;
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

/* ── Hero ─────────────────────────────────────── */

.guide-hero[b-qh0k1pkuqm] {
    position: relative;
    text-align: center;
    padding: 3.5rem 2rem 3rem;
    background: rgba(255, 255, 255, 0.55);
    border: 1px solid rgba(129, 230, 217, 0.3);
    border-radius: 1.5rem;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: 0 8px 40px rgba(44, 122, 123, 0.08), inset 0 1px 0 rgba(255,255,255,0.7);
    overflow: hidden;
}

.hero-glow[b-qh0k1pkuqm] {
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    height: 200px;
    background: radial-gradient(ellipse, rgba(44, 122, 123,0.18) 0%, transparent 70%);
    pointer-events: none;
}

.hero-badge[b-qh0k1pkuqm] {
    display: inline-block;
    padding: 0.3rem 1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(44, 122, 123,0.12), rgba(129, 230, 217,0.12));
    border: 1px solid rgba(44, 122, 123,0.25);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    color: #2c7a7b;
    margin-bottom: 1.25rem;
}

.hero-title[b-qh0k1pkuqm] {
    font-size: clamp(1.75rem, 4vw, 2.5rem);
    font-weight: 800;
    line-height: 1.2;
    color: #1e1b4b;
    margin-bottom: 1rem;
}

.hero-accent[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, #2c7a7b 0%, #81e6d9 60%, #bee3f8 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.hero-sub[b-qh0k1pkuqm] {
    font-size: 1.05rem;
    color: #475569;
    max-width: 560px;
    margin: 0 auto 2rem;
    line-height: 1.65;
}

.hero-cta[b-qh0k1pkuqm] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.75rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #2c7a7b, #2c7a7b);
    color: #ffffff;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    box-shadow: 0 4px 20px rgba(44, 122, 123,0.35);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .hero-cta:hover[b-qh0k1pkuqm] {
        transform: translateY(-2px);
        box-shadow: 0 8px 28px rgba(44, 122, 123,0.45);
        color: #ffffff;
    }

.cta-arrow[b-qh0k1pkuqm] {
    font-size: 1.1rem;
    transition: transform 0.2s ease;
}

.hero-cta:hover .cta-arrow[b-qh0k1pkuqm] {
    transform: translateX(4px);
}

/* ── Section shell ────────────────────────────── */

.guide-section[b-qh0k1pkuqm] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.section-title[b-qh0k1pkuqm] {
    font-size: 1.5rem;
    font-weight: 750;
    color: #1e1b4b;
    margin: 0;
}

.section-subtitle[b-qh0k1pkuqm] {
    font-size: 0.95rem;
    color: #64748b;
    margin: -0.75rem 0 0;
}

/* ── Steps grid ───────────────────────────────── */

.steps-grid[b-qh0k1pkuqm] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
}

.step-card[b-qh0k1pkuqm] {
    position: relative;
    padding: 1.5rem;
    background: rgba(255,255,255,0.6);
    border: 1px solid rgba(129, 230, 217,0.25);
    border-radius: 1.1rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 2px 16px rgba(44, 122, 123,0.06), inset 0 1px 0 rgba(255,255,255,0.8);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .step-card:hover[b-qh0k1pkuqm] {
        transform: translateY(-3px);
        box-shadow: 0 8px 28px rgba(44, 122, 123,0.12);
    }

.step-number[b-qh0k1pkuqm] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: linear-gradient(135deg, #2c7a7b, #81e6d9);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-icon[b-qh0k1pkuqm] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
    line-height: 1;
}

.step-card h3[b-qh0k1pkuqm] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #1e1b4b;
    margin: 0 0 0.5rem;
}

.step-card p[b-qh0k1pkuqm] {
    font-size: 0.875rem;
    color: #475569;
    margin: 0;
    line-height: 1.6;
}

/* ── Features grid ────────────────────────────── */

.features-grid[b-qh0k1pkuqm] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1rem;
}

.feature-card[b-qh0k1pkuqm] {
    padding: 1.4rem 1.5rem;
    border-radius: 1.1rem;
    border: 1px solid transparent;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: transform 0.2s ease;
}

    .feature-card:hover[b-qh0k1pkuqm] {
        transform: translateY(-2px);
    }

    .feature-card h4[b-qh0k1pkuqm] {
        font-size: 0.9rem;
        font-weight: 700;
        margin: 0.5rem 0 0.4rem;
    }

    .feature-card p[b-qh0k1pkuqm] {
        font-size: 0.855rem;
        margin: 0;
        line-height: 1.6;
    }

.feature-icon[b-qh0k1pkuqm] {
    font-size: 1.6rem;
    line-height: 1;
}

.feature-purple[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, rgba(129, 230, 217,0.1), rgba(44, 122, 123,0.08));
    border-color: rgba(129, 230, 217,0.2);
    color: #3730a3;
}

.feature-blue[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, rgba(59,130,246,0.1), rgba(44, 122, 123,0.06));
    border-color: rgba(59,130,246,0.2);
    color: #1e3a8a;
}

.feature-teal[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, rgba(20,184,166,0.1), rgba(16,185,129,0.06));
    border-color: rgba(20,184,166,0.2);
    color: #134e4a;
}

.feature-indigo[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, rgba(44, 122, 123,0.12), rgba(79,70,229,0.08));
    border-color: rgba(44, 122, 123,0.25);
    color: #312e81;
}

.feature-rose[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, rgba(244,63,94,0.08), rgba(251,113,133,0.06));
    border-color: rgba(244,63,94,0.18);
    color: #881337;
}

.feature-amber[b-qh0k1pkuqm] {
    background: linear-gradient(135deg, rgba(245,158,11,0.1), rgba(251,191,36,0.07));
    border-color: rgba(245,158,11,0.2);
    color: #78350f;
}

/* ── Tips list ────────────────────────────────── */

.tips-list[b-qh0k1pkuqm] {
    display: flex;
    flex-direction: column;
    gap: 0;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(129, 230, 217,0.25);
    border-radius: 1.1rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    overflow: hidden;
}

.tip-item[b-qh0k1pkuqm] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.1rem 1.5rem;
    font-size: 0.9rem;
    color: #334155;
    line-height: 1.65;
    border-bottom: 1px solid rgba(129, 230, 217,0.14);
    transition: background 0.15s ease;
}

    .tip-item:last-child[b-qh0k1pkuqm] {
        border-bottom: none;
    }

    .tip-item:hover[b-qh0k1pkuqm] {
        background: rgba(44, 122, 123,0.04);
    }

.tip-dot[b-qh0k1pkuqm] {
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2c7a7b, #bee3f8);
    margin-top: 0.45rem;
    box-shadow: 0 0 6px rgba(44, 122, 123,0.4);
}

/* ── Progress explainer ───────────────────────── */

.progress-explainer[b-qh0k1pkuqm] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(155px, 1fr));
    gap: 1rem;
}

.pe-item[b-qh0k1pkuqm] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.1rem;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(129, 230, 217,0.2);
    border-radius: 0.875rem;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

    .pe-item p[b-qh0k1pkuqm] {
        font-size: 0.8rem;
        color: #475569;
        margin: 0;
        line-height: 1.55;
    }

.pe-badge[b-qh0k1pkuqm] {
    display: inline-block;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    width: fit-content;
}

.pe-act[b-qh0k1pkuqm] {
    background: rgba(44, 122, 123,0.12);
    color: #4338ca;
    border: 1px solid rgba(44, 122, 123,0.25);
}

.pe-ins[b-qh0k1pkuqm] {
    background: rgba(20,184,166,0.12);
    color: #0f766e;
    border: 1px solid rgba(20,184,166,0.25);
}

.pe-hc[b-qh0k1pkuqm] {
    background: rgba(59,130,246,0.12);
    color: #1d4ed8;
    border: 1px solid rgba(59,130,246,0.25);
}

.pe-dt[b-qh0k1pkuqm] {
    background: rgba(245,158,11,0.12);
    color: #b45309;
    border: 1px solid rgba(245,158,11,0.25);
}

.pe-pr[b-qh0k1pkuqm] {
    background: rgba(129, 230, 217,0.12);
    color: #6d28d9;
    border: 1px solid rgba(129, 230, 217,0.25);
}

/* ── Bottom CTA block ─────────────────────────── */

.guide-cta-block[b-qh0k1pkuqm] {
    position: relative;
    text-align: center;
    padding: 3rem 2rem;
    background: linear-gradient(135deg, rgba(44, 122, 123,0.1) 0%, rgba(129, 230, 217,0.08) 100%);
    border: 1px solid rgba(44, 122, 123,0.2);
    border-radius: 1.5rem;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    overflow: hidden;
}

.cta-glow[b-qh0k1pkuqm] {
    position: absolute;
    bottom: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 380px;
    height: 180px;
    background: radial-gradient(ellipse, rgba(129, 230, 217,0.22) 0%, transparent 70%);
    pointer-events: none;
}

.guide-cta-block h2[b-qh0k1pkuqm] {
    font-size: 1.65rem;
    font-weight: 800;
    color: #1e1b4b;
    margin-bottom: 0.5rem;
}

.guide-cta-block p[b-qh0k1pkuqm] {
    color: #475569;
    margin-bottom: 1.75rem;
    font-size: 1rem;
}

.cta-btn-large[b-qh0k1pkuqm] {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.85rem 2rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #2c7a7b, #2c7a7b);
    color: #ffffff;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none;
    box-shadow: 0 6px 24px rgba(44, 122, 123,0.35);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .cta-btn-large:hover[b-qh0k1pkuqm] {
        transform: translateY(-3px);
        box-shadow: 0 10px 32px rgba(44, 122, 123,0.45);
        color: #ffffff;
    }

.cta-arrow-lg[b-qh0k1pkuqm] {
    font-size: 1.2rem;
}

/* ── Responsive ───────────────────────────────── */

@media (max-width: 600px) {
    .guide-wrapper[b-qh0k1pkuqm] {
        padding: 1rem 1rem 3rem;
        gap: 2.5rem;
    }

    .hero-title[b-qh0k1pkuqm] {
        font-size: 1.6rem;
    }

    .steps-grid[b-qh0k1pkuqm],
    .features-grid[b-qh0k1pkuqm],
    .progress-explainer[b-qh0k1pkuqm] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* ── Dashboard wrapper ────────────────────────── */

.dashboard-wrapper[b-qtsnvtthk6] {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    padding: 1.5rem 1.5rem 4rem;
    display: flex;
    flex-direction: column;
    gap: 3.5rem;
}

    /* Subtle tech-inspired dot grid background */
    .dashboard-wrapper[b-qtsnvtthk6]::before {
        content: '';
        position: absolute;
        top: -5rem;
        left: -10rem;
        right: -10rem;
        bottom: -5rem;
        pointer-events: none;
        z-index: -1;
        background-image: radial-gradient(rgba(0, 154, 69, 0.12) 1.5px, transparent 1.5px);
        background-size: 32px 32px;
        mask-image: radial-gradient(ellipse at center, black 20%, transparent 70%);
        -webkit-mask-image: radial-gradient(ellipse at center, black 20%, transparent 70%);
    }

/* ── Hero ─────────────────────────────────────── */

.dashboard-hero[b-qtsnvtthk6] {
    text-align: center;
    margin-top: 1rem;
}

.hero-gem[b-qtsnvtthk6] {
    font-size: 2.25rem;
    background: linear-gradient(135deg, #009A45, #4CAF50);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    display: block;
    margin-bottom: 0.75rem;
    line-height: 1;
}

.hero-title[b-qtsnvtthk6] {
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 800;
    color: #1e1b4b;
    margin: 0 0 0.75rem;
    line-height: 1.15;
    letter-spacing: -0.01em;
}

.hero-accent[b-qtsnvtthk6] {
    background: linear-gradient(135deg, #009A45 0%, #4CAF50 60%, #10b981 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.hero-sub[b-qtsnvtthk6] {
    font-size: 1.05rem;
    color: #64748b;
    margin: 0;
    font-weight: 500;
}

/* ── Tools grid ───────────────────────────────── */

.tools-container[b-qtsnvtthk6] {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.tool-category[b-qtsnvtthk6] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.category-title[b-qtsnvtthk6] {
    font-size: 1.2rem;
    font-weight: 800;
    color: #1e293b;
    margin: 0;
    padding-bottom: 0.5rem;
    border-bottom: 3px solid rgba(0, 154, 69, 0.15);
    display: inline-block;
    align-self: flex-start;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.tools-grid[b-qtsnvtthk6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.25rem;
}

/* ── Tool card ────────────────────────────────── */

.tool-invoice[b-qtsnvtthk6] {
    --card-primary: #10b981; /* Emerald */
    --card-rgb: 16, 185, 129;
}

.tool-avaliador[b-qtsnvtthk6] {
    --card-primary: #3b82f6; /* Blue */
    --card-rgb: 59, 130, 246;
}

.tool-avaliador-voice[b-qtsnvtthk6] {
    --card-primary: #3b82f6; /* Blue */
    --card-rgb: 59, 130, 246;
}

.tool-diagnose[b-qtsnvtthk6] {
    --card-primary: #ec4899; /* Pink */
    --card-rgb: 236, 72, 153;
}

.tool-diagnose-voice[b-qtsnvtthk6] {
    --card-primary: #ec4899; /* Pink */
    --card-rgb: 236, 72, 153;
}

.tool-card[b-qtsnvtthk6] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    padding: 1.5rem 1.25rem;
    background: linear-gradient(160deg, #ffffff 0%, rgba(255, 255, 255, 0.8) 100%);
    border: 1px solid rgba(var(--card-rgb), 0.25);
    border-top: 4px solid var(--card-primary);
    border-radius: 12px;
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease, border-color 0.3s ease;
    text-decoration: none;
}

    /* Soft glowing wave in background */
    .tool-card[b-qtsnvtthk6]::before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: radial-gradient(circle at top right, rgba(var(--card-rgb), 0.1) 0%, transparent 60%);
        pointer-events: none;
    }

    .tool-card:hover[b-qtsnvtthk6] {
        transform: translateY(-4px);
        box-shadow: 0 12px 32px rgba(var(--card-rgb), 0.15);
        border-color: rgba(var(--card-rgb), 0.6);
    }

/* ── Tool header row ──────────────────────────── */

.tool-header[b-qtsnvtthk6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.tool-icon[b-qtsnvtthk6] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    font-size: 1.35rem;
    line-height: 1;
    background: rgba(var(--card-rgb), 0.15);
    border-radius: 10px;
    box-shadow: inset 0 0 0 1px rgba(var(--card-rgb), 0.3);
}

.tool-badge[b-qtsnvtthk6] {
    display: inline-block;
    padding: 0.25rem 0.6rem;
    border-radius: 20px;
    font-size: 0.65rem;
    font-weight: 750;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    background: rgba(var(--card-rgb), 0.12);
    color: var(--card-primary);
    border: 1px solid rgba(var(--card-rgb), 0.25);
}

/* ── Tool name & description ──────────────────── */

.tool-name[b-qtsnvtthk6] {
    font-size: 1.15rem;
    font-weight: 800;
    color: #1e1b4b;
    margin: 0;
    line-height: 1.25;
}

/* ── Tool action link ─────────────────────────── */

.tool-footer[b-qtsnvtthk6] {
    margin-top: auto;
    padding-top: 0.5rem;
}

.action-text[b-qtsnvtthk6] {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--card-primary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.btn-arrow[b-qtsnvtthk6] {
    display: inline-block;
    transition: transform 0.2s ease;
}

.tool-card:hover .btn-arrow[b-qtsnvtthk6] {
    transform: translateX(4px);
}

.tool-guide-link[b-qtsnvtthk6] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: #009A45;
    text-decoration: none;
    padding: 0.35rem 0;
    border-bottom: 1px dashed rgba(0, 154, 69, 0.3);
    transition: color 0.15s ease, border-color 0.15s ease;
}

    .tool-guide-link:hover[b-qtsnvtthk6] {
        color: #009A45;
        border-bottom-color: rgba(79, 70, 229, 0.6);
    }

/* ===== Header — mirrors .chat-header from Avaliador ===== */

.chat-header[b-qtsnvtthk6] {
    text-align: center;
    margin-bottom: 0;
}

    .chat-header h1[b-qtsnvtthk6] {
        font-weight: 700;
        font-size: 1.75rem;
        background: linear-gradient(135deg, #009A45, #4CAF50);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
    }

    .chat-header p[b-qtsnvtthk6] {
        color: #6c757d;
        font-size: 0.9rem;
    }

/* ===== Upload Card — mirrors .chat-card from Avaliador ===== */

.upload-card[b-qtsnvtthk6] {
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
    padding: 1.75rem;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 1rem;
    box-shadow: 0 8px 32px rgba(0, 154, 69, 0.12), 0 1px 4px rgba(0, 0, 0, 0.04);
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
}

/* ===== Upload Zone ===== */

.upload-zone[b-qtsnvtthk6] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 2.5rem 1.25rem;
    border-radius: 0.75rem;
    border: 2px dashed rgba(0, 154, 69, 0.25);
    background: rgba(0, 154, 69, 0.03);
    cursor: pointer;
    text-align: center;
    min-height: 9rem;
    transition: border-color 0.2s ease, background 0.2s ease;
    overflow: hidden;
}

    .upload-zone:hover[b-qtsnvtthk6] {
        border-color: rgba(0, 154, 69, 0.5);
        background: rgba(0, 154, 69, 0.07);
    }

    .upload-zone.has-file[b-qtsnvtthk6] {
        border-style: solid;
        border-color: rgba(0, 154, 69, 0.4);
        background: rgba(0, 154, 69, 0.05);
    }

/* The <InputFile> is stretched invisibly over the whole zone */
.upload-input[b-qtsnvtthk6] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
}

.upload-icon[b-qtsnvtthk6] {
    font-size: 2.5rem;
    line-height: 1;
    margin-bottom: 0.2rem;
    pointer-events: none;
}

.upload-prompt[b-qtsnvtthk6] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #4338ca;
    margin: 0;
    pointer-events: none;
}

.upload-hint[b-qtsnvtthk6] {
    font-size: 0.8rem;
    color: #94a3b8;
    margin: 0;
    pointer-events: none;
}

.upload-filename[b-qtsnvtthk6] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #1e1b4b;
    margin: 0;
    word-break: break-all;
    pointer-events: none;
}

.upload-meta[b-qtsnvtthk6] {
    font-size: 0.8rem;
    color: #009A45;
    margin: 0;
    pointer-events: none;
}

/* ===== Actions row ===== */

.upload-actions[b-qtsnvtthk6] {
    display: flex;
    justify-content: center;
}

/* ===== Error strip ===== */

.error-strip[b-qtsnvtthk6] {
    border-top: 1px solid rgba(220, 53, 69, 0.15);
    padding-top: 0.5rem;
    animation: slideUp-b-qtsnvtthk6 0.3s ease-out both;
}

/* ===== Results Card — mirrors .chat-card from Avaliador ===== */

.results-card[b-qtsnvtthk6] {
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0, 154, 69, 0.12), 0 1px 4px rgba(0, 0, 0, 0.04);
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
}

.results-header[b-qtsnvtthk6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.25rem;
    background: linear-gradient(135deg, rgba(0, 154, 69, 0.1), rgba(79, 70, 229, 0.07));
    border-bottom: 1px solid rgba(0, 154, 69, 0.12);
}

.results-title[b-qtsnvtthk6] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #1e1b4b;
}

.cost-badge[b-qtsnvtthk6] {
    font-size: 0.78rem;
    font-weight: 600;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: rgba(0, 154, 69, 0.1);
    color: #4338ca;
    border: 1px solid rgba(0, 154, 69, 0.2);
}

/* ===== Results Table ===== */

.results-table-wrapper[b-qtsnvtthk6] {
    overflow-x: auto;
    max-height: 420px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 154, 69, 0.3) transparent;
}

    .results-table-wrapper[b-qtsnvtthk6]::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }

    .results-table-wrapper[b-qtsnvtthk6]::-webkit-scrollbar-track {
        background: transparent;
    }

    .results-table-wrapper[b-qtsnvtthk6]::-webkit-scrollbar-thumb {
        background: rgba(0, 154, 69, 0.3);
        border-radius: 3px;
    }

.results-table[b-qtsnvtthk6] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

    .results-table thead th[b-qtsnvtthk6] {
        position: sticky;
        top: 0;
        z-index: 1;
        padding: 0.65rem 1.25rem;
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: #009A45;
        background: rgba(249, 250, 255, 0.97);
        border-bottom: 1px solid rgba(0, 154, 69, 0.1);
    }

    .results-table tbody tr[b-qtsnvtthk6] {
        border-bottom: 1px solid rgba(76, 175, 80, 0.12);
        transition: background 0.15s ease;
    }

        .results-table tbody tr:last-child[b-qtsnvtthk6] {
            border-bottom: none;
        }

        .results-table tbody tr:hover[b-qtsnvtthk6] {
            background: rgba(0, 154, 69, 0.04);
        }

        .results-table tbody tr.row-meta[b-qtsnvtthk6] {
            background: rgba(0, 154, 69, 0.05);
        }

.field-name[b-qtsnvtthk6] {
    padding: 0.65rem 1.25rem;
    font-weight: 600;
    color: #374151;
    white-space: nowrap;
    width: 40%;
}

.field-value[b-qtsnvtthk6] {
    padding: 0.65rem 1.25rem;
    color: #1e293b;
    word-break: break-word;
}

.value-badge[b-qtsnvtthk6] {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    margin: 0.1rem;
    border-radius: 0.375rem;
    background: rgba(0, 154, 69, 0.1);
    color: #4338ca;
    font-size: 0.8rem;
    border: 1px solid rgba(0, 154, 69, 0.15);
}

/* ===== Animations ===== */

@keyframes slideUp-b-qtsnvtthk6 {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/Pages/InvoiceReader/InvoiceReader.razor.rz.scp.css */
/* ===== Page Layout ===== */

.page-wrapper[b-93xxp1vi12] {
    max-width: 720px;
    margin: 0 auto;
    padding: 1.5rem 0 2rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ===== Header ===== */

.chat-header[b-93xxp1vi12] {
    text-align: center;
    margin-bottom: 0;
}

    .chat-header h1[b-93xxp1vi12] {
        font-weight: 700;
        font-size: 1.75rem;
        background: linear-gradient(135deg, #009A45, #4CAF50);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
    }

    .chat-header p[b-93xxp1vi12] {
        color: #6c757d;
        font-size: 0.9rem;
    }

/* ===== Upload Card ===== */

.upload-card[b-93xxp1vi12] {
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
    padding: 1.75rem;
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 1rem;
    box-shadow: 0 8px 32px rgba(0, 154, 69, 0.12), 0 1px 4px rgba(0, 0, 0, 0.04);
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
}

/* ===== Upload Zone ===== */

.upload-zone[b-93xxp1vi12] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 2.5rem 1.25rem;
    border-radius: 0.75rem;
    border: 2px dashed rgba(0, 154, 69, 0.25);
    background: rgba(0, 154, 69, 0.03);
    cursor: pointer;
    text-align: center;
    min-height: 9rem;
    transition: border-color 0.2s ease, background 0.2s ease;
    overflow: hidden;
}

    .upload-zone:hover[b-93xxp1vi12] {
        border-color: rgba(0, 154, 69, 0.5);
        background: rgba(0, 154, 69, 0.07);
    }

    .upload-zone.has-file[b-93xxp1vi12] {
        border-style: solid;
        border-color: rgba(0, 154, 69, 0.4);
        background: rgba(0, 154, 69, 0.05);
    }

.upload-input[b-93xxp1vi12] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
}

.upload-icon[b-93xxp1vi12] {
    font-size: 2.5rem;
    line-height: 1;
    margin-bottom: 0.2rem;
    pointer-events: none;
}

.upload-prompt[b-93xxp1vi12] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #4338ca;
    margin: 0;
    pointer-events: none;
}

.upload-hint[b-93xxp1vi12] {
    font-size: 0.8rem;
    color: #94a3b8;
    margin: 0;
    pointer-events: none;
}

.upload-filename[b-93xxp1vi12] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #1e1b4b;
    margin: 0;
    word-break: break-all;
    pointer-events: none;
}

.upload-meta[b-93xxp1vi12] {
    font-size: 0.8rem;
    color: #009A45;
    margin: 0;
    pointer-events: none;
}

/* ===== Actions row ===== */

.upload-actions[b-93xxp1vi12] {
    display: flex;
    justify-content: center;
}

/* ===== Error strip ===== */

.error-strip[b-93xxp1vi12] {
    border-top: 1px solid rgba(220, 53, 69, 0.15);
    padding-top: 0.5rem;
    animation: slideUp-b-93xxp1vi12 0.3s ease-out both;
}

/* ===== Results Card ===== */

.results-card[b-93xxp1vi12] {
    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0, 154, 69, 0.12), 0 1px 4px rgba(0, 0, 0, 0.04);
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
}

.results-header[b-93xxp1vi12] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.25rem;
    background: linear-gradient(135deg, rgba(0, 154, 69, 0.1), rgba(79, 70, 229, 0.07));
    border-bottom: 1px solid rgba(0, 154, 69, 0.12);
}

.results-title[b-93xxp1vi12] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #1e1b4b;
}

.cost-badge[b-93xxp1vi12] {
    font-size: 0.78rem;
    font-weight: 600;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    background: rgba(0, 154, 69, 0.1);
    color: #4338ca;
    border: 1px solid rgba(0, 154, 69, 0.2);
}

/* ===== Results Table ===== */

.results-table-wrapper[b-93xxp1vi12] {
    overflow-x: auto;
    max-height: 420px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 154, 69, 0.3) transparent;
}

    .results-table-wrapper[b-93xxp1vi12]::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }

    .results-table-wrapper[b-93xxp1vi12]::-webkit-scrollbar-track {
        background: transparent;
    }

    .results-table-wrapper[b-93xxp1vi12]::-webkit-scrollbar-thumb {
        background: rgba(0, 154, 69, 0.3);
        border-radius: 3px;
    }

.results-table[b-93xxp1vi12] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

    .results-table thead th[b-93xxp1vi12] {
        position: sticky;
        top: 0;
        z-index: 1;
        padding: 0.65rem 1.25rem;
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        color: #009A45;
        background: rgba(249, 250, 255, 0.97);
        border-bottom: 1px solid rgba(0, 154, 69, 0.1);
    }

    .results-table tbody tr[b-93xxp1vi12] {
        border-bottom: 1px solid rgba(76, 175, 80, 0.12);
        transition: background 0.15s ease;
    }

        .results-table tbody tr:last-child[b-93xxp1vi12] {
            border-bottom: none;
        }

        .results-table tbody tr:hover[b-93xxp1vi12] {
            background: rgba(0, 154, 69, 0.04);
        }

        .results-table tbody tr.row-meta[b-93xxp1vi12] {
            background: rgba(0, 154, 69, 0.05);
        }

.field-name[b-93xxp1vi12] {
    padding: 0.65rem 1.25rem;
    font-weight: 600;
    color: #374151;
    white-space: nowrap;
    width: 40%;
}

.field-value[b-93xxp1vi12] {
    padding: 0.65rem 1.25rem;
    color: #1e293b;
    word-break: break-word;
}

.value-badge[b-93xxp1vi12] {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    margin: 0.1rem;
    border-radius: 0.375rem;
    background: rgba(0, 154, 69, 0.1);
    color: #4338ca;
    font-size: 0.8rem;
    border: 1px solid rgba(0, 154, 69, 0.15);
}

/* ===== Animations ===== */

@keyframes slideUp-b-93xxp1vi12 {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/Pages/InvoiceReader/InvoiceReaderGuide.razor.rz.scp.css */
/* ═══════════════════════════════════════════════
   Invoice Reader Guide page — glassmorphism info layout
   ═══════════════════════════════════════════════ */

.guide-wrapper[b-69cudrzs2t] {
    max-width: 900px;
    margin: 0 auto;
    padding: 2rem 1.5rem 4rem;
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

/* ── Section shell ────────────────────────────── */

.guide-section[b-69cudrzs2t] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.section-title[b-69cudrzs2t] {
    font-size: 1.5rem;
    font-weight: 750;
    color: #1e1b4b;
    margin: 0;
}

.section-subtitle[b-69cudrzs2t] {
    font-size: 0.95rem;
    color: #64748b;
    margin: -0.75rem 0 0;
}

/* ── Steps grid ───────────────────────────────── */

.steps-grid[b-69cudrzs2t] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 1rem;
}

.step-card[b-69cudrzs2t] {
    position: relative;
    padding: 1.5rem;
    background: rgba(255,255,255,0.6);
    border: 1px solid rgba(129, 230, 217,0.25);
    border-radius: 1.1rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 2px 16px rgba(44, 122, 123,0.06), inset 0 1px 0 rgba(255,255,255,0.8);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .step-card:hover[b-69cudrzs2t] {
        transform: translateY(-3px);
        box-shadow: 0 8px 28px rgba(44, 122, 123,0.12);
    }

.step-number[b-69cudrzs2t] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background: linear-gradient(135deg, #2c7a7b, #81e6d9);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-icon[b-69cudrzs2t] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
    line-height: 1;
}

.step-card h3[b-69cudrzs2t] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #1e1b4b;
    margin: 0 0 0.5rem;
}

.step-card p[b-69cudrzs2t] {
    font-size: 0.875rem;
    color: #475569;
    margin: 0;
    line-height: 1.6;
}

/* ── Features grid ────────────────────────────── */

.features-grid[b-69cudrzs2t] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1rem;
}

.feature-card[b-69cudrzs2t] {
    padding: 1.4rem 1.5rem;
    border-radius: 1.1rem;
    border: 1px solid transparent;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: transform 0.2s ease;
}

    .feature-card:hover[b-69cudrzs2t] {
        transform: translateY(-2px);
    }

    .feature-card h4[b-69cudrzs2t] {
        font-size: 0.9rem;
        font-weight: 700;
        margin: 0.5rem 0 0.4rem;
    }

    .feature-card p[b-69cudrzs2t] {
        font-size: 0.855rem;
        margin: 0;
        line-height: 1.6;
    }

.feature-icon[b-69cudrzs2t] {
    font-size: 1.6rem;
    line-height: 1;
}

.feature-purple[b-69cudrzs2t] {
    background: linear-gradient(135deg, rgba(129, 230, 217,0.1), rgba(44, 122, 123,0.08));
    border-color: rgba(129, 230, 217,0.2);
    color: #3730a3;
}

.feature-blue[b-69cudrzs2t] {
    background: linear-gradient(135deg, rgba(59,130,246,0.1), rgba(44, 122, 123,0.06));
    border-color: rgba(59,130,246,0.2);
    color: #1e3a8a;
}

.feature-teal[b-69cudrzs2t] {
    background: linear-gradient(135deg, rgba(20,184,166,0.1), rgba(16,185,129,0.06));
    border-color: rgba(20,184,166,0.2);
    color: #134e4a;
}

.feature-indigo[b-69cudrzs2t] {
    background: linear-gradient(135deg, rgba(44, 122, 123,0.12), rgba(79,70,229,0.08));
    border-color: rgba(44, 122, 123,0.25);
    color: #312e81;
}

.feature-rose[b-69cudrzs2t] {
    background: linear-gradient(135deg, rgba(244,63,94,0.08), rgba(251,113,133,0.06));
    border-color: rgba(244,63,94,0.18);
    color: #881337;
}

.feature-amber[b-69cudrzs2t] {
    background: linear-gradient(135deg, rgba(245,158,11,0.1), rgba(251,191,36,0.07));
    border-color: rgba(245,158,11,0.2);
    color: #78350f;
}

/* ── Tips list ────────────────────────────────── */

.tips-list[b-69cudrzs2t] {
    display: flex;
    flex-direction: column;
    gap: 0;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(129, 230, 217,0.25);
    border-radius: 1.1rem;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    overflow: hidden;
}

.tip-item[b-69cudrzs2t] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.1rem 1.5rem;
    font-size: 0.9rem;
    color: #334155;
    line-height: 1.65;
    border-bottom: 1px solid rgba(129, 230, 217,0.14);
    transition: background 0.15s ease;
}

    .tip-item:last-child[b-69cudrzs2t] {
        border-bottom: none;
    }

    .tip-item:hover[b-69cudrzs2t] {
        background: rgba(44, 122, 123,0.04);
    }

.tip-dot[b-69cudrzs2t] {
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2c7a7b, #bee3f8);
    margin-top: 0.45rem;
    box-shadow: 0 0 6px rgba(44, 122, 123,0.4);
}

/* ── Fields explainer ─────────────────────────── */

.progress-explainer[b-69cudrzs2t] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(155px, 1fr));
    gap: 1rem;
}

.pe-item[b-69cudrzs2t] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.1rem;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(129, 230, 217,0.2);
    border-radius: 0.875rem;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

    .pe-item p[b-69cudrzs2t] {
        font-size: 0.8rem;
        color: #475569;
        margin: 0;
        line-height: 1.55;
    }

.pe-badge[b-69cudrzs2t] {
    display: inline-block;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    width: fit-content;
}

.pe-act[b-69cudrzs2t] {
    background: rgba(44, 122, 123,0.12);
    color: #4338ca;
    border: 1px solid rgba(44, 122, 123,0.25);
}

.pe-ins[b-69cudrzs2t] {
    background: rgba(20,184,166,0.12);
    color: #0f766e;
    border: 1px solid rgba(20,184,166,0.25);
}

.pe-hc[b-69cudrzs2t] {
    background: rgba(59,130,246,0.12);
    color: #1d4ed8;
    border: 1px solid rgba(59,130,246,0.25);
}

.pe-dt[b-69cudrzs2t] {
    background: rgba(245,158,11,0.12);
    color: #b45309;
    border: 1px solid rgba(245,158,11,0.25);
}

.pe-pr[b-69cudrzs2t] {
    background: rgba(129, 230, 217,0.12);
    color: #6d28d9;
    border: 1px solid rgba(129, 230, 217,0.25);
}
/* /Components/Pages/LocalHub/LocalHub.razor.rz.scp.css */
/* ── Page ─────────────────────────────────── */
.ac-page[b-dkcqsbc693] {
    display: flex;
    justify-content: center;
    padding: 3rem 1.5rem;
    min-height: 100%;
}

.ac-card[b-dkcqsbc693] {
    width: 100%;
    max-width: 680px;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

/* ── Header ───────────────────────────────── */
.ac-header[b-dkcqsbc693] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.ac-header-icon[b-dkcqsbc693] {
    font-size: 1.75rem;
    line-height: 1;
    color: var(--accent, #6366f1);
}

.ac-title[b-dkcqsbc693] {
    font-size: 1.35rem;
    font-weight: 700;
    margin: 0;
    color: var(--text-primary, #1e1e2e);
}

.ac-subtitle[b-dkcqsbc693] {
    margin: .25rem 0 0;
    font-size: .85rem;
    color: var(--text-secondary, #6b7280);
}

/* ── Search Input ─────────────────────────── */
.ac-search-wrapper[b-dkcqsbc693] {
    position: relative;
}

.ac-input-group[b-dkcqsbc693] {
    position: relative;
    display: flex;
    align-items: center;
}

.ac-input-icon[b-dkcqsbc693] {
    position: absolute;
    left: 1rem;
    font-size: .95rem;
    color: var(--text-secondary, #9ca3af);
    pointer-events: none;
}

.ac-input[b-dkcqsbc693] {
    width: 100%;
    padding: .85rem 2.75rem .85rem 2.75rem;
    font-size: .95rem;
    border: 1.5px solid var(--border, #e5e7eb);
    border-radius: 12px;
    background: var(--surface, #fff);
    color: var(--text-primary, #1e1e2e);
    outline: none;
    transition: border-color .15s, box-shadow .15s;
}

    .ac-input:focus[b-dkcqsbc693] {
        border-color: var(--accent, #6366f1);
        box-shadow: 0 0 0 3px rgba(99, 102, 241, .12);
    }

.ac-spinner[b-dkcqsbc693] {
    position: absolute;
    right: 1rem;
    width: 18px;
    height: 18px;
    border: 2px solid var(--border, #e5e7eb);
    border-top-color: var(--accent, #6366f1);
    border-radius: 50%;
    animation: ac-spin-b-dkcqsbc693 .6s linear infinite;
}

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

/* ── Dropdown ─────────────────────────────── */
.ac-dropdown[b-dkcqsbc693] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    background: var(--surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
    max-height: 320px;
    overflow-y: auto;
    z-index: 50;
    padding: .35rem;
}

.ac-option[b-dkcqsbc693] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: .7rem .85rem;
    border: none;
    border-radius: 8px;
    background: transparent;
    cursor: pointer;
    text-align: left;
    gap: .75rem;
    transition: background .1s;
    color: var(--text-primary, #1e1e2e);
}

    .ac-option:hover[b-dkcqsbc693],
    .ac-option--highlighted[b-dkcqsbc693] {
        background: var(--hover, #f3f4f6);
    }

.ac-option-content[b-dkcqsbc693] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    min-width: 0;
}

.ac-option-name[b-dkcqsbc693] {
    font-size: .9rem;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ac-option-specialty[b-dkcqsbc693] {
    font-size: .75rem;
    color: var(--text-secondary, #6b7280);
}

.ac-option-ai[b-dkcqsbc693] {
    flex-shrink: 0;
    font-size: .7rem;
    font-weight: 600;
    color: var(--accent, #6366f1);
    background: rgba(99, 102, 241, .08);
    padding: .2rem .55rem;
    border-radius: 6px;
    white-space: nowrap;
}

.ac-dropdown-hint[b-dkcqsbc693] {
    padding: .5rem .85rem;
    font-size: .75rem;
    color: var(--accent, #6366f1);
    text-align: center;
}

/* ── Selected Result ──────────────────────── */
.ac-selected[b-dkcqsbc693] {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.ac-selected-label[b-dkcqsbc693] {
    font-size: .8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--text-secondary, #6b7280);
    margin: 0;
}

.ac-selected-card[b-dkcqsbc693] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--surface-elevated, #f9fafb);
    border: 1.5px solid var(--accent, #6366f1);
    border-radius: 12px;
}

.ac-selected-info[b-dkcqsbc693] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    flex: 1;
    min-width: 0;
}

.ac-selected-name[b-dkcqsbc693] {
    font-size: .95rem;
    font-weight: 600;
    color: var(--text-primary, #1e1e2e);
}

.ac-selected-specialty[b-dkcqsbc693] {
    font-size: .8rem;
    color: var(--text-secondary, #6b7280);
}

.ac-selected-id[b-dkcqsbc693] {
    font-size: .7rem;
    font-family: monospace;
    color: var(--text-secondary, #9ca3af);
    flex-shrink: 0;
}
/* /Components/Pages/Login.razor.rz.scp.css */
.login-wrapper[b-9dktuhmges] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - 4rem);
    padding: 2rem;
}

.login-card[b-9dktuhmges] {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 16px;
    padding: 3rem 2.5rem;
    width: 100%;
    max-width: 420px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0,0,0,0.03);
}

.brand-section[b-9dktuhmges] {
    text-align: center;
    margin-bottom: 2.5rem;
}

.brand-title[b-9dktuhmges] {
    font-size: 2.2rem;
    font-weight: 800;
    letter-spacing: -0.05em;
    color: #1e293b;
    margin-bottom: 0.2rem;
    background: linear-gradient(135deg, #0f172a 0%, #334155 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.brand-subtitle[b-9dktuhmges] {
    color: #64748b;
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.custom-form-group[b-9dktuhmges] {
    margin-bottom: 1.5rem;
}

.form-label[b-9dktuhmges] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #475569;
    margin-bottom: 0.5rem;
    display: block;
}

.login-wrapper[b-9dktuhmges]  .custom-input {
    background-color: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 0.8rem 1rem;
    font-size: 1rem;
    color: #1e293b;
    width: 100%;
    transition: all 0.25s ease;
}

    .login-wrapper[b-9dktuhmges]  .custom-input:focus {
        background-color: #ffffff;
        border-color: #3b82f6;
        box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.15);
        outline: none;
    }

    .login-wrapper[b-9dktuhmges]  .custom-input::placeholder {
        color: #94a3b8;
    }

.login-wrapper[b-9dktuhmges]  .btn-login {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
    color: #ffffff;
    font-weight: 600;
    font-size: 1rem;
    padding: 0.85rem;
    border-radius: 10px;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    border: none;
    margin-top: 1rem;
    box-shadow: 0 4px 6px -1px rgba(37, 99, 235, 0.2), 0 2px 4px -1px rgba(37, 99, 235, 0.1);
}

    .login-wrapper[b-9dktuhmges]  .btn-login:hover {
        transform: translateY(-1px);
        box-shadow: 0 10px 15px -3px rgba(37, 99, 235, 0.3), 0 4px 6px -2px rgba(37, 99, 235, 0.15);
    }

    .login-wrapper[b-9dktuhmges]  .btn-login:active {
        transform: translateY(1px);
        box-shadow: 0 2px 4px -1px rgba(37, 99, 235, 0.2);
    }

.alert-custom[b-9dktuhmges] {
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    color: #ef4444;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

    .alert-custom i[b-9dktuhmges] {
        font-size: 1.1rem;
    }

/* ── Full-screen login overlay ────────────────────────── */

.login-overlay[b-9dktuhmges] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: radial-gradient(ellipse at 0% 0%, rgba(14, 165, 233, 0.13) 0%, transparent 55%), radial-gradient(ellipse at 100% 0%, rgba(44, 122, 123, 0.10) 0%, transparent 55%), radial-gradient(ellipse at 50% 100%, rgba(20, 184, 166, 0.08) 0%, transparent 55%), linear-gradient(160deg, #f0f9ff 0%, #fafafe 45%, #f5f3ff 100%);
    animation: login-overlay-in-b-9dktuhmges 0.3s ease-out both;
    user-select: none;
}

@keyframes login-overlay-in-b-9dktuhmges {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* ── Stage ────────────────────────────────────────────── */

.login-stage[b-9dktuhmges] {
    position: relative;
    width: 200px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ── Ambient glow ─────────────────────────────────────── */

.login-glow[b-9dktuhmges] {
    position: absolute;
    inset: -80px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(20, 184, 166, 0.14) 0%, rgba(14, 165, 233, 0.07) 45%, transparent 70%);
    pointer-events: none;
    animation: login-glow-breathe-b-9dktuhmges 3.2s ease-in-out infinite;
}

@keyframes login-glow-breathe-b-9dktuhmges {
    0%, 100% {
        opacity: 0.55;
        transform: scale(0.93);
    }

    50% {
        opacity: 1;
        transform: scale(1.07);
    }
}

/* ── Pulsing sonar rings ──────────────────────────────── */

.login-ring[b-9dktuhmges] {
    position: absolute;
    inset: 0;
    margin: auto;
    border-radius: 50%;
    will-change: transform, opacity;
    animation: login-pulse-out-b-9dktuhmges 3.6s ease-out infinite;
}

.login-ring--1[b-9dktuhmges] {
    width: 116px;
    height: 116px;
    border: 1.5px solid rgba(20, 184, 166, 0.60);
    animation-delay: 0s;
}

.login-ring--2[b-9dktuhmges] {
    width: 148px;
    height: 148px;
    border: 1px solid rgba(14, 165, 233, 0.42);
    animation-delay: 1.1s;
}

.login-ring--3[b-9dktuhmges] {
    width: 178px;
    height: 178px;
    border: 1px solid rgba(99, 102, 241, 0.26);
    animation-delay: 2.2s;
}

@keyframes login-pulse-out-b-9dktuhmges {
    0% {
        transform: scale(0.65);
        opacity: 1;
    }

    100% {
        transform: scale(1.85);
        opacity: 0;
    }
}

/* ── Spinning arcs ────────────────────────────────────── */

.login-arc[b-9dktuhmges] {
    position: absolute;
    inset: 0;
    margin: auto;
    border-radius: 50%;
    border: 2px solid transparent;
    will-change: transform;
}

.login-arc--outer[b-9dktuhmges] {
    width: 112px;
    height: 112px;
    border-top-color: #14b8a6;
    border-right-color: rgba(20, 184, 166, 0.22);
    animation: login-spin-b-9dktuhmges 1.5s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    box-shadow: 0 0 10px rgba(20, 184, 166, 0.28);
}

.login-arc--inner[b-9dktuhmges] {
    width: 94px;
    height: 94px;
    border-bottom-color: rgba(56, 189, 248, 0.82);
    border-left-color: rgba(56, 189, 248, 0.18);
    animation: login-spin-b-9dktuhmges 2.2s cubic-bezier(0.4, 0, 0.6, 1) infinite reverse;
}

@keyframes login-spin-b-9dktuhmges {
    to {
        transform: rotate(360deg);
    }
}

/* ── Frosted-glass core ───────────────────────────────── */

.login-core[b-9dktuhmges] {
    position: relative;
    z-index: 2;
    width: 78px;
    height: 78px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.90);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(20, 184, 166, 0.24);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.75), 0 0 18px rgba(20, 184, 166, 0.15), 0 8px 28px rgba(0, 0, 0, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-wordmark[b-9dktuhmges] {
    display: block;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1;
    background: linear-gradient(135deg, #0f172a 0%, #0ea5e9 55%, #14b8a6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
    transform: translateZ(0);
}

/* ── Label ────────────────────────────────────────────── */

.login-anim-label[b-9dktuhmges] {
    margin-top: 2.8rem;
    margin-bottom: 0;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #64748b;
    -webkit-font-smoothing: antialiased;
    animation: login-label-breathe-b-9dktuhmges 2.4s ease-in-out infinite;
}

@keyframes login-label-breathe-b-9dktuhmges {
    0%, 100% {
        opacity: 0.35;
    }

    50% {
        opacity: 1;
    }
}
/* /Components/UI/AppButton.razor.rz.scp.css */
/* ===== Base ===== */

.app-btn[b-yi6vrytl9u] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border: none;
    cursor: pointer;
    font-family: inherit;
    font-weight: 500;
    line-height: 1.4;
    white-space: nowrap;
    text-decoration: none;
    position: relative;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

    .app-btn:disabled[b-yi6vrytl9u],
    .app-btn--loading[b-yi6vrytl9u] {
        cursor: not-allowed;
        pointer-events: none;
    }

/* ===== Sizes ===== */

.app-btn--sm[b-yi6vrytl9u] {
    font-size: 0.82rem;
    padding: 0.3rem 0.85rem;
}

.app-btn--md[b-yi6vrytl9u] {
    font-size: 0.9rem;
    padding: 0.45rem 1.1rem;
}

.app-btn--lg[b-yi6vrytl9u] {
    font-size: 1rem;
    padding: 0.6rem 1.5rem;
}

/* ===== Shapes ===== */

.app-btn--default[b-yi6vrytl9u] {
    border-radius: 0.625rem;
}

.app-btn--pill[b-yi6vrytl9u] {
    border-radius: 2rem;
}

.app-btn--circle[b-yi6vrytl9u] {
    border-radius: 50%;
    width: 2.4rem;
    height: 2.4rem;
    padding: 0;
    flex-shrink: 0;
}

/* ===== Variant: primary (indigo gradient) ===== */

.app-btn--primary[b-yi6vrytl9u] {
    background: linear-gradient(135deg, #2c7a7b, #2c7a7b);
    color: #fff;
    border: none;
    box-shadow: 0 2px 10px rgba(44, 122, 123, 0.35);
}

    .app-btn--primary:hover:not(:disabled)[b-yi6vrytl9u] {
        transform: translateY(-1px);
        box-shadow: 0 6px 20px rgba(44, 122, 123, 0.5);
    }

    .app-btn--primary:active:not(:disabled)[b-yi6vrytl9u] {
        transform: scale(0.97);
    }

    .app-btn--primary:disabled[b-yi6vrytl9u] {
        background: #adb5bd;
        box-shadow: none;
        opacity: 0.5;
    }

/* ===== Variant: success (emerald gradient) ===== */

.app-btn--success[b-yi6vrytl9u] {
    background: linear-gradient(135deg, #2c7a7b, #81e6d9);
    color: #fff;
    border: none;
    box-shadow: 0 2px 8px rgba(5, 150, 105, 0.3);
}

    .app-btn--success:hover:not(:disabled)[b-yi6vrytl9u] {
        transform: translateY(-1px);
        box-shadow: 0 4px 14px rgba(5, 150, 105, 0.4);
        color: #fff;
    }

    .app-btn--success:active:not(:disabled)[b-yi6vrytl9u] {
        transform: scale(0.97);
    }

    .app-btn--success:disabled[b-yi6vrytl9u] {
        opacity: 0.65;
    }

/* ===== Variant: ghost (glass secondary) ===== */

.app-btn--ghost[b-yi6vrytl9u] {
    background: rgba(255, 255, 255, 0.55);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(180, 175, 170, 0.5);
    color: #6c757d;
}

    .app-btn--ghost:hover:not(:disabled)[b-yi6vrytl9u] {
        background: rgba(233, 229, 225, 0.75);
        border-color: rgba(120, 113, 108, 0.4);
    }

/* ===== Variant: outline-primary (indigo glass) ===== */

.app-btn--outline-primary[b-yi6vrytl9u] {
    background: rgba(44, 122, 123, 0.08);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(44, 122, 123, 0.4);
    color: #2c7a7b;
    font-weight: 600;
}

    .app-btn--outline-primary:hover:not(:disabled)[b-yi6vrytl9u] {
        background: rgba(44, 122, 123, 0.18);
        border-color: #2c7a7b;
        color: #4338ca;
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(44, 122, 123, 0.3);
    }

    .app-btn--outline-primary:disabled[b-yi6vrytl9u] {
        opacity: 0.35;
    }

/* ===== Variant: outline-success (emerald glass) ===== */

.app-btn--outline-success[b-yi6vrytl9u] {
    background: rgba(16, 185, 129, 0.1);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(16, 185, 129, 0.35);
    color: #2c7a7b;
    font-weight: 600;
}

    .app-btn--outline-success:hover:not(:disabled)[b-yi6vrytl9u] {
        background: rgba(16, 185, 129, 0.2);
        border-color: #81e6d9;
        color: #047857;
        transform: translateY(-1px);
        box-shadow: 0 4px 12px rgba(16, 185, 129, 0.25);
    }

/* ===== Variant: toggle (provider selector) ===== */

.app-btn--toggle[b-yi6vrytl9u] {
    background: transparent;
    border: none;
    color: rgba(79, 70, 229, 0.55);
}

    .app-btn--toggle.app-btn--sm[b-yi6vrytl9u] {
        padding: 0.3rem 1.1rem;
    }

    .app-btn--toggle:hover:not(.app-btn--active):not(:disabled)[b-yi6vrytl9u] {
        color: #2c7a7b;
        background: rgba(44, 122, 123, 0.07);
    }

    .app-btn--toggle.app-btn--active[b-yi6vrytl9u] {
        background: linear-gradient(135deg, #2c7a7b, #2c7a7b);
        color: #fff;
        box-shadow: 0 2px 8px rgba(44, 122, 123, 0.35);
    }

/* ===== Loading spinner ===== */

.btn-spinner[b-yi6vrytl9u] {
    width: 0.85em;
    height: 0.85em;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-top-color: #fff;
    border-radius: 50%;
    animation: btnSpin-b-yi6vrytl9u 0.6s linear infinite;
    flex-shrink: 0;
}

.app-btn--ghost .btn-spinner[b-yi6vrytl9u],
.app-btn--outline-primary .btn-spinner[b-yi6vrytl9u],
.app-btn--outline-success .btn-spinner[b-yi6vrytl9u],
.app-btn--toggle .btn-spinner[b-yi6vrytl9u] {
    border-color: rgba(0, 0, 0, 0.12);
    border-top-color: currentColor;
}

@keyframes btnSpin-b-yi6vrytl9u {
    to {
        transform: rotate(360deg);
    }
}
/* /Components/UI/CultureSelector.razor.rz.scp.css */
.culture-selector[b-4dm7rjvtme] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.65rem 0.75rem;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.4;
    border: 1px solid transparent;
    background: transparent;
    color: rgba(203, 213, 225, 0.65);
    transition: background 0.25s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.25s ease, transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
    text-align: left;
}

    .culture-selector:hover[b-4dm7rjvtme] {
        background: rgba(44, 122, 123, 0.08);
        color: rgba(226, 232, 240, 0.95);
        transform: translateX(4px);
        border-color: rgba(44, 122, 123, 0.2);
    }

    .culture-selector i[b-4dm7rjvtme] {
        display: inline-block;
        width: 1.1rem;
        height: 1.1rem;
        margin-right: 0.7rem;
        flex-shrink: 0;
        background-size: cover;
        vertical-align: middle;
        opacity: 0.7;
        transition: opacity 0.2s ease;
    }

    .culture-selector:hover i[b-4dm7rjvtme] {
        opacity: 1;
    }

.bi-globe[b-4dm7rjvtme] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23a5b4fc' viewBox='0 0 16 16'%3E%3Cpath d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm7.5-6.923c-.67.204-1.335.82-1.887 1.855A7.97 7.97 0 0 0 5.145 4H7.5V1.077zM4.09 4a9.267 9.267 0 0 1 .64-1.539 6.7 6.7 0 0 1 .597-.933A7.025 7.025 0 0 0 2.255 4H4.09zm-.582 3.5c.03-.877.138-1.718.312-2.5H1.674a6.958 6.958 0 0 0-.656 2.5h2.49zM4.847 5a12.5 12.5 0 0 0-.338 2.5H7.5V5H4.847zM8.5 5v2.5h2.99a12.495 12.495 0 0 0-.337-2.5H8.5zM4.51 8.5a12.5 12.5 0 0 0 .337 2.5H7.5V8.5H4.51zm3.99 0V11h2.653c.187-.765.306-1.608.338-2.5H8.5zM5.145 12c.138.386.295.744.468 1.068.552 1.035 1.218 1.65 1.887 1.855V12H5.145zm.141 2.469c.205.132.418.256.639.366A6.993 6.993 0 0 0 8.5 14.923V12h2.355a7.962 7.962 0 0 1-4.569 2.469zm3.56-2.469h2.355a7.97 7.97 0 0 0-.468-1.068c-.552-1.035-1.218-1.65-1.887-1.855V12zM11.91 12A9.266 9.266 0 0 0 11.27 10.461a6.76 6.76 0 0 0-.597-.933A7.025 7.025 0 0 1 13.745 12h-1.835zm.582-3.5c-.03.877-.138 1.718-.312 2.5h2.146c.196-.785.334-1.626.353-2.5h-2.187zM11.153 5A12.5 12.5 0 0 1 11.49 7.5h2.188c-.019-.874-.157-1.715-.353-2.5h-2.172z'/%3E%3C/svg%3E");
}

.culture-selector select[b-4dm7rjvtme] {
    background-color: transparent;
    border: none;
    cursor: pointer;
    font-weight: 500;
    color: inherit;
    padding: 0;
    width: 100%;
}

    .culture-selector select:focus[b-4dm7rjvtme] {
        box-shadow: none;
        outline: none;
        border: none;
    }

    .culture-selector select option[b-4dm7rjvtme] {
        color: black;
    }
/* /Components/UI/LoadingButton.razor.rz.scp.css */
.spinner-border[b-ow5dvnjs59] {
    width: 1rem;
    height: 1rem;
    border-width: 0.15em;
    vertical-align: -0.125em;
}
/* /Components/UI/PageLoader.razor.rz.scp.css */
/* ── Loader shell ─────────────────────────────────────── */

.nl-loader[b-jgyrumdihe] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 80vh;
    user-select: none;
}

/* ── Stage  ───────────────────────────────────────────── */

.nl-loader-stage[b-jgyrumdihe] {
    position: relative;
    width: 200px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ── Ambient glow ─────────────────────────────────────── */

.nl-ambient-glow[b-jgyrumdihe] {
    position: absolute;
    inset: -80px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(20, 184, 166, 0.14) 0%, rgba(14, 165, 233, 0.07) 45%, transparent 70%);
    pointer-events: none;
    animation: nl-glow-breathe-b-jgyrumdihe 3.2s ease-in-out infinite;
}

@keyframes nl-glow-breathe-b-jgyrumdihe {
    0%, 100% {
        opacity: 0.55;
        transform: scale(0.93);
    }

    50% {
        opacity: 1;
        transform: scale(1.07);
    }
}

/* ── Pulsing sonar rings ──────────────────────────────── */

.nl-pulse-ring[b-jgyrumdihe] {
    position: absolute;
    inset: 0;
    margin: auto;
    border-radius: 50%;
    will-change: transform, opacity;
    animation: nl-pulse-out-b-jgyrumdihe 3.6s ease-out infinite;
}

.nl-pulse-ring--1[b-jgyrumdihe] {
    width: 116px;
    height: 116px;
    border: 1.5px solid rgba(20, 184, 166, 0.60);
    animation-delay: 0s;
}

.nl-pulse-ring--2[b-jgyrumdihe] {
    width: 148px;
    height: 148px;
    border: 1px solid rgba(14, 165, 233, 0.42);
    animation-delay: 1.1s;
}

.nl-pulse-ring--3[b-jgyrumdihe] {
    width: 178px;
    height: 178px;
    border: 1px solid rgba(99, 102, 241, 0.26);
    animation-delay: 2.2s;
}

@keyframes nl-pulse-out-b-jgyrumdihe {
    0% {
        transform: scale(0.65);
        opacity: 1;
    }

    100% {
        transform: scale(1.85);
        opacity: 0;
    }
}

/* ── Spinning arcs ────────────────────────────────────── */

.nl-arc[b-jgyrumdihe] {
    position: absolute;
    inset: 0;
    margin: auto;
    border-radius: 50%;
    border: 2px solid transparent;
    will-change: transform;
}

.nl-arc--outer[b-jgyrumdihe] {
    width: 112px;
    height: 112px;
    border-top-color: #14b8a6;
    border-right-color: rgba(20, 184, 166, 0.22);
    animation: nl-spin-b-jgyrumdihe 1.5s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    box-shadow: 0 0 10px rgba(20, 184, 166, 0.28);
}

.nl-arc--inner[b-jgyrumdihe] {
    width: 94px;
    height: 94px;
    border-bottom-color: rgba(56, 189, 248, 0.82);
    border-left-color: rgba(56, 189, 248, 0.18);
    animation: nl-spin-b-jgyrumdihe 2.2s cubic-bezier(0.4, 0, 0.6, 1) infinite reverse;
}

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

/* ── Center frosted-glass core ────────────────────────── */

.nl-core[b-jgyrumdihe] {
    position: relative;
    z-index: 2;
    width: 78px;
    height: 78px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.90);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(20, 184, 166, 0.24);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.75), 0 0 18px rgba(20, 184, 166, 0.15), 0 8px 28px rgba(0, 0, 0, 0.06);
    display: flex;
    align-items: center;
    justify-content: center;
}

.nl-wordmark[b-jgyrumdihe] {
    display: block;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1;
    background: linear-gradient(135deg, #0f172a 0%, #0ea5e9 55%, #14b8a6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
    transform: translateZ(0);
}

/* ── Loading label ────────────────────────────────────── */

.nl-label[b-jgyrumdihe] {
    margin-top: 2.8rem;
    margin-bottom: 0;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #64748b;
    -webkit-font-smoothing: antialiased;
    animation: nl-label-breathe-b-jgyrumdihe 2.4s ease-in-out infinite;
}

@keyframes nl-label-breathe-b-jgyrumdihe {
    0%, 100% {
        opacity: 0.35;
    }

    50% {
        opacity: 1;
    }
}

/* ── Content reveal (after load) ─────────────────────── */

.nl-content-reveal[b-jgyrumdihe] {
    animation: nl-reveal-b-jgyrumdihe 0.3s ease-out both;
}

@keyframes nl-reveal-b-jgyrumdihe {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* /Components/UI/ToastContainer.razor.rz.scp.css */
.toast-container[b-5kwi77vke4] {
    position: fixed;
    bottom: 1.75rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1090;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 0.5rem;
    pointer-events: none;
}

.toast-item[b-5kwi77vke4] {
    pointer-events: all;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.8rem 1.25rem;
    border-radius: 0.5rem;
    min-width: 300px;
    max-width: 460px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    font-size: 0.9rem;
    font-weight: 500;
    animation: toast-in-b-5kwi77vke4 0.3s ease forwards;
}

    .toast-item.toast-leaving[b-5kwi77vke4] {
        animation: toast-out-b-5kwi77vke4 0.35s ease forwards;
    }

@keyframes toast-in-b-5kwi77vke4 {
    from {
        opacity: 0;
        transform: translateY(16px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes toast-out-b-5kwi77vke4 {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 0;
        transform: translateY(16px);
    }
}

.toast-success[b-5kwi77vke4] {
    background-color: #d1e7dd;
    border-left: 4px solid #198754;
    color: #0f5132;
}

.toast-warning[b-5kwi77vke4] {
    background-color: #fff3cd;
    border-left: 4px solid #ffc107;
    color: #664d03;
}

.toast-error[b-5kwi77vke4] {
    background-color: #f8d7da;
    border-left: 4px solid #dc3545;
    color: #842029;
}

.toast-info[b-5kwi77vke4] {
    background-color: #cff4fc;
    border-left: 4px solid #0dcaf0;
    color: #055160;
}

.toast-icon[b-5kwi77vke4] {
    font-size: 1.05rem;
    flex-shrink: 0;
}

.toast-message[b-5kwi77vke4] {
    flex: 1;
    line-height: 1.4;
}

.toast-close[b-5kwi77vke4] {
    background: none;
    border: none;
    cursor: pointer;
    opacity: 0.5;
    padding: 0;
    font-size: 0.75rem;
    color: inherit;
    flex-shrink: 0;
    line-height: 1;
}

    .toast-close:hover[b-5kwi77vke4] {
        opacity: 1;
    }
