﻿.mud-navmenu.mud-navmenu-default .mud-nav-link.active:not(.mud-nav-link-disabled) {
    color: inherit;
}

.mud-list {
    border: 1px solid var(--mud-palette-lines-default)
}

/* A nav item that belongs to the one above it — a job site belongs to a customer (#147). The
   class was already on the markup and styled nowhere, so the nesting only existed in the source. */
.mud-navmenu .mud-nav-link.fsh-nav-child {
    padding-left: 40px;
}

/* The message thread in the agent inbox (BC-12.3). A conversation grows without bound, so the
   thread scrolls inside the card rather than pushing the reply box off the bottom of the page —
   an agent should never have to scroll up to answer. */
.fsh-chat-thread {
    max-height: 55vh;
    overflow-y: auto;
    padding-right: 8px;
}

/* The issue dictation panel (#150). A floating window rather than a dialog: fixed to the viewport
   with no overlay behind it, so the menus, the nav and every screen underneath stay clickable
   while it is open. That is the whole requirement — dictate an issue about the screen you are
   looking at, without leaving it. */
.fsh-intake-panel {
    position: fixed;
    top: 76px;
    right: 24px;
    width: 420px;
    max-width: calc(100vw - 32px);
    background-color: var(--mud-palette-surface);
    border: 1px solid var(--mud-palette-lines-default);
    border-radius: var(--mud-default-borderradius);
    /* Above the app bar and the drawer, below MudBlazor's own popovers so a select inside the
       panel still renders over it. */
    z-index: 1400;
}

/* The strip the panel is dragged by. Everything in the header except the close button starts a
   drag, which is why the cursor changes over the whole strip. */
.fsh-intake-handle {
    align-items: center;
    background-color: var(--mud-palette-background-gray);
    border-bottom: 1px solid var(--mud-palette-lines-default);
    border-radius: var(--mud-default-borderradius) var(--mud-default-borderradius) 0 0;
    cursor: move;
    display: flex;
    padding: 6px 8px 6px 12px;
    touch-action: none;
    user-select: none;
}

.fsh-intake-body {
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    padding: 16px;
}

/* What the recogniser has not settled on yet. Deliberately outside the editable box: text that
   rewrites itself under a cursor cannot be corrected. */
.fsh-intake-interim {
    color: var(--mud-palette-text-secondary);
    font-style: italic;
}

.fsh-intake-live {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

.fsh-intake-dot {
    animation: fsh-intake-pulse 1.2s ease-in-out infinite;
    background-color: var(--mud-palette-error);
    border-radius: 50%;
    display: inline-block;
    height: 8px;
    width: 8px;
}

@keyframes fsh-intake-pulse {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: .25;
    }
}
