/* /Components/ChatComponent.razor.rz.scp.css */
/* ==========================================================================
   ChatComponent.razor.css
   - CSS isolation: use ::deep for HTML produced via MarkupString (Markdown).
   ========================================================================== */


/* =========================
   1) Theme tokens (scheme)
      scoped to this component
   ========================= */
.chat-shell[b-tob9p8dhn4] {
    --chat-bg: #ffffff;
    --mm-primary: #00609f;
    --mm-primary-rgb: 0, 96, 159;
    --mm-primary-hover: #004f82;
    --mm-heading: #05163d;
    /* identity colors */
    --user-accent: #e3f2fd;
    --bubble-user-bg: var(--user-accent);
    --bubble-ai-bg: #f7f7f7;
    --bubble-tool-bg: #eef7fc;
    --bubble-border: rgba(5, 22, 61, .12);
    --bubble-text: var(--mm-heading);
    --attachment-hover-bg: #eef7fc;
    --attachment-muted-text: #64748b;
    --attachment-danger: #b32121;
    --chat-icon-color: var(--bubble-text);
    --chat-icon-hover-bg: rgba(var(--mm-primary-rgb), .08);
    --chat-icon-focus-ring: rgba(var(--mm-primary-rgb), .35);
}


/* =========================
   2) Small utility text
   ========================= */
.tiny[b-tob9p8dhn4] {
    font-size: 0.7rem;
}


/* =========================
   3) Chat canvas (scroll area)
   ========================= */
.chat-shell[b-tob9p8dhn4] {
    min-height: 0;
    overflow: hidden;
}

#chat-container[b-tob9p8dhn4] {
    background: var(--chat-bg);
    border-radius: 12px;
    /* helps bubbles not touch the edges */
    padding-top: .5rem;
    padding-bottom: .75rem;
    min-height: 0;
    overscroll-behavior: contain;
}


/* =========================
   4) Message list layout
   ========================= */
.chat-messages[b-tob9p8dhn4] {
    display: flex;
    flex-direction: column;
    gap: .4rem;
    padding: .75rem .5rem;
}


/* Each message row (container for avatar + bubble) */
.msg[b-tob9p8dhn4] {
    display: flex;
    align-items: flex-end;
    gap: .5rem;
    width: 100%;
}

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

.msg-ai[b-tob9p8dhn4],
.msg-tool[b-tob9p8dhn4] {
    justify-content: flex-start;
}


/* =========================
   5) Bubble appearance
   ========================= */
.bubble[b-tob9p8dhn4] {
    max-width: clamp(16rem, 90%, 52rem);
    padding: .6rem .8rem;
    border-radius: .75rem;
    line-height: 1.35;
    color: var(--bubble-text);
    border: 1px solid var(--bubble-border);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .06);
    overflow-wrap: anywhere;
}

/* Role-specific bubble backgrounds */
.msg-ai .bubble[b-tob9p8dhn4] {
    background: var(--bubble-ai-bg);
}

.msg-user .bubble[b-tob9p8dhn4] {
    background: var(--bubble-user-bg);
}

.msg-tool .bubble[b-tob9p8dhn4] {
    background: var(--bubble-tool-bg);
}


/* =========================
   6) Markdown/HTML inside bubbles
   IMPORTANT: MarkupString content won't reliably match normal selectors
   under CSS isolation; use ::deep.
   ========================= */
[b-tob9p8dhn4] .bubble > :first-child {
    margin-top: 0;
}

[b-tob9p8dhn4] .bubble > :last-child {
    margin-bottom: 0;
}

/* tighten common block elements */
[b-tob9p8dhn4] .bubble p,
[b-tob9p8dhn4] .bubble ul,
[b-tob9p8dhn4] .bubble ol,
[b-tob9p8dhn4] .bubble pre,
[b-tob9p8dhn4] .bubble blockquote {
    margin: .25rem 0;
}

[b-tob9p8dhn4] .bubble li {
    margin: .1rem 0;
}

/* code blocks */
[b-tob9p8dhn4] .bubble pre {
    padding: .6rem;
    border-radius: 10px;
    overflow: auto;
}

[b-tob9p8dhn4] .bubble code {
    font-size: .95em;
}

/* tables */
[b-tob9p8dhn4] .bubble table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    margin: .5rem 0;
    border-collapse: collapse;
    -webkit-overflow-scrolling: touch;
}

[b-tob9p8dhn4] .bubble th,
[b-tob9p8dhn4] .bubble td {
    padding: .35rem .55rem;
    border: 1px solid rgba(5, 22, 61, .18);
    vertical-align: top;
    overflow-wrap: normal;
    word-break: normal;
    white-space: nowrap;
}

[b-tob9p8dhn4] .bubble th {
    background: rgba(var(--mm-primary-rgb), .08);
    font-weight: 600;
}


/* =========================
   7) Avatars
   ========================= */
.avatar[b-tob9p8dhn4] {
    width: 32px;
    height: 32px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .75rem;
    font-weight: 600;
    user-select: none;
    flex: 0 0 32px;
    align-self: flex-start;
    margin-top: .15rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .08);
    border: 1px solid rgba(0, 0, 0, .08);
}

.avatar-user[b-tob9p8dhn4] {
    background: var(--bubble-user-bg);
    color: var(--mm-primary-hover);
}

.avatar-ai[b-tob9p8dhn4] {
    background: var(--bubble-ai-bg);
    color: var(--bubble-text);
}


/* =========================
   8) Composer bar
      Layout: pending files above a single input row
      (left actions | textarea | speech/send/recording actions).
   ========================= */
.composerbar[b-tob9p8dhn4] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: .25rem;
    padding: .4rem .5rem;
    border: 1px solid rgba(0,0,0,.18);
    border-radius: .75rem;
    background: #fff;
    flex-shrink: 0;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

    .composerbar:focus-within[b-tob9p8dhn4] {
        border-color: var(--chat-icon-focus-ring);
        box-shadow: 0 0 0 1px rgba(var(--mm-primary-rgb), .12);
    }

/* --- Attachment chips for pending uploads and sent-message attachments --- */
.attachment-list[b-tob9p8dhn4] {
    display: flex;
    gap: .5rem;
    padding: .5rem .25rem .6rem;
    overflow-x: auto;
}


.attachment-chip[b-tob9p8dhn4] {
    position: relative;
    background: var(--bubble-ai-bg);
    border-radius: .4rem;
    padding: .45rem .6rem;
    flex: 0 0 8.25rem;
    min-width: 0;
    flex-shrink: 0;
    color: var(--bubble-text);
    border: 1px solid var(--bubble-border);
    overflow: visible;
}

.attachment-chip:hover[b-tob9p8dhn4] {
    background: var(--attachment-hover-bg);
}

/* -- File layout (icon + name + type) -- */
.file-preview[b-tob9p8dhn4] {
    display: grid;
    grid-template-columns: 1.5rem minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: .4rem;
    row-gap: .05rem;
    align-items: center;
    min-width: 0;
}

.file-icon[b-tob9p8dhn4] {
    grid-row: span 2;
    font-size: 1.35rem;
}

.file-name[b-tob9p8dhn4] {
    font-size: .8rem;
    font-weight: 500;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.file-type[b-tob9p8dhn4] {
    font-size: .7rem;
    color: var(--attachment-muted-text);
    text-transform: uppercase;
    font-weight: 600;
}

/* -- Remove button (overlay) -- */
.remove-btn[b-tob9p8dhn4] {
    position: absolute;
    top: -6px;
    right: -6px;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    border: none;
    background: rgba(0, 0, 0, .4);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity .15s, background-color .15s;
    color: #fff;
    font-size: .75rem;
    padding: 0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .15);
}

.attachment-chip:hover .remove-btn[b-tob9p8dhn4],
.remove-btn:focus-visible[b-tob9p8dhn4] {
    opacity: 1;
}

.remove-btn:hover[b-tob9p8dhn4] {
    background: var(--attachment-danger);
}

/* --- Input row: left actions | growing textarea | right actions --- */
.composer-toolbar[b-tob9p8dhn4] {
    display: flex;
    align-items: flex-end;
    gap: .35rem;
}

.cb-left-actions[b-tob9p8dhn4] {
    display: flex;
    align-items: center;
    gap: 0;
}


/* Shared composer icon button pattern.
   DocumentUploadComponent duplicates these rules in its own scoped CSS because
   Blazor CSS isolation does not let this component style that child component's
   internal label. Keep DocumentUploadComponent.razor.css in sync when editing. */
.cb-icon[b-tob9p8dhn4] {
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .9;
    color: var(--chat-icon-color);
    transition: background-color .15s, color .15s, opacity .15s;
}

    .cb-icon:hover[b-tob9p8dhn4],
    .cb-icon:focus-visible[b-tob9p8dhn4] {
        background: var(--chat-icon-hover-bg);
        color: var(--mm-primary);
    }

    .cb-icon:focus-visible[b-tob9p8dhn4] {
        outline: 2px solid var(--chat-icon-focus-ring);
        outline-offset: 2px;
    }

    .cb-icon:disabled[b-tob9p8dhn4] {
        opacity: .4;
        cursor: not-allowed;
    }

    .cb-icon i[b-tob9p8dhn4] {
        font-size: 1.35rem;
    }

/* Textarea — grows to fill the space between the left and right icon groups */
.cb-input[b-tob9p8dhn4] {
    flex: 1;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    min-height: 36px;
    padding: .35rem .25rem;
    line-height: 1.35;
    font: inherit;
    max-height: min(16rem, 40dvh);
    overflow-y: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
    resize: none;
}

/* Send/voice button.
   Keep the button itself as the positioning container: push-to-talk places
   .rec-indicator inside it, and the dot must stay anchored to the button. */
.cb-send[b-tob9p8dhn4],
[b-tob9p8dhn4] .cb-send {
    width: 44px;
    height: 40px;
    border-radius: 999px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cb-send.is-recording[b-tob9p8dhn4],
.cb-send.is-speaking[b-tob9p8dhn4],
[b-tob9p8dhn4] .cb-send.is-recording,
[b-tob9p8dhn4] .cb-send.is-speaking {
    position: relative;
}

/* Speaking: pulsing glow around button */
.cb-send.is-speaking[b-tob9p8dhn4],
[b-tob9p8dhn4] .cb-send.is-speaking {
    animation: mic-pulse-b-tob9p8dhn4 1s ease-in-out infinite;
}

/* Pulsing red dot — recording indicator */
.rec-indicator[b-tob9p8dhn4] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #dc3545;
    animation: rec-blink-b-tob9p8dhn4 1s ease-in-out infinite;
}

/* Steady dot when speech detected */
.cb-send.is-speaking .rec-indicator[b-tob9p8dhn4],
[b-tob9p8dhn4] .cb-send.is-speaking .rec-indicator {
    animation: none;
    opacity: 1;
}

@keyframes rec-blink-b-tob9p8dhn4 {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0.3; }
}

@keyframes mic-pulse-b-tob9p8dhn4 {
    0%, 100% { box-shadow: 0 0 0 0 rgba(220, 53, 69, .3); }
    50%      { box-shadow: 0 0 0 6px rgba(220, 53, 69, 0); }
}

/* Conversation recording indicator: separate status icon in the composer row */
.cb-rec[b-tob9p8dhn4] {
    width: 32px;
    height: 32px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .cb-rec i[b-tob9p8dhn4] {
        font-size: 1rem;
    }

    .cb-rec.is-on[b-tob9p8dhn4] {
        opacity: .95;
    }

    .cb-rec.is-off[b-tob9p8dhn4] {
        opacity: .35;
    }

/* Subtle state cue while streaming */
.composerbar.is-streaming[b-tob9p8dhn4] {
    border-color: rgba(var(--mm-primary-rgb), .25);
}

.chat-disclaimer[b-tob9p8dhn4] {
    flex-shrink: 0;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    margin-top: .4rem;
    margin-bottom: 1.25rem;
}

/* Attachment chips shown inside the user message bubble (smaller variant) */
.msg-attachments[b-tob9p8dhn4] {
    gap: .35rem;
    padding: 0 0 .4rem;
    flex-wrap: wrap;
    overflow-x: visible;
    margin-bottom: 0.4rem;
}

.attachment-chip-sm[b-tob9p8dhn4] {
    flex: 0 1 7.5rem;
    padding: .35rem .5rem;
    min-width: 5.75rem;
    max-width: 7.5rem;
}

.attachment-chip-sm .file-icon[b-tob9p8dhn4] {
    font-size: 1.1rem;
}

.attachment-chip-sm .file-name[b-tob9p8dhn4] {
    font-size: .7rem;
}

.attachment-chip-sm .file-type[b-tob9p8dhn4] {
    font-size: .6rem;
}

/* Downloadable chips in sent messages */
.attachment-chip-sm.downloadable[b-tob9p8dhn4] {
    cursor: pointer;
}

.attachment-chip-sm.downloadable:hover[b-tob9p8dhn4] {
    background: var(--attachment-hover-bg);
}

/* ── Inline drag-and-drop hint on composerbar ───────────────────────────────
   dragDrop.js toggles `.drop-target` on the composer bar while a file is
   dragged over the window. CSS isolation keeps these rules scoped to
   ChatComponent — the drop bar lives in this component only.
   ──────────────────────────────────────────────────────────────────────── */

/* Dashed border + tinted background while a file is dragged over the window */
.composerbar.drop-target[b-tob9p8dhn4] {
    border-color: var(--mm-primary) !important;
    border-style: dashed !important;
    background: var(--bubble-tool-bg) !important;
    box-shadow: 0 0 0 3px rgba(var(--mm-primary-rgb), 0.12) !important;
}

/* Hide attachment chips and make textarea invisible during drag */
.composerbar.drop-target .attachment-list[b-tob9p8dhn4] { display: none; }
.composerbar.drop-target .cb-input[b-tob9p8dhn4] { color: transparent !important; caret-color: transparent; }
.composerbar.drop-target .cb-input[b-tob9p8dhn4]::placeholder { color: transparent !important; }
.composerbar.drop-target .composer-toolbar[b-tob9p8dhn4] { visibility: hidden; }

/* Drop hint — hidden by default, centered over entire composerbar when dragging */
.drop-hint[b-tob9p8dhn4] {
    display: none;
    position: absolute;
    inset: 0;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: var(--mm-primary);
    font-size: 1rem;
    font-weight: 500;
    pointer-events: none;
    z-index: 10;
}

.drop-hint i[b-tob9p8dhn4] {
    font-size: 1.3rem;
}

.composerbar.drop-target .drop-hint[b-tob9p8dhn4] {
    display: flex;
}

/* /Components/DocumentUploadComponent.razor.rz.scp.css */
/* Duplicates ChatComponent's .cb-icon pattern intentionally.
   DocumentUploadComponent is rendered as a child component, and Blazor CSS
   isolation keeps ChatComponent.razor.css from styling this component's
   internal label. Keep these rules in sync with the chat composer icon buttons. */
.cb-icon[b-o3vyfccxc2] {
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .9;
    color: var(--chat-icon-color, #05163d);
    transition: background-color .15s, color .15s, opacity .15s;
}

    .cb-icon:hover[b-o3vyfccxc2],
    .cb-icon:focus-visible[b-o3vyfccxc2] {
        background: var(--chat-icon-hover-bg, rgba(0, 96, 159, .08));
        color: var(--mm-primary, #00609f);
    }

    .cb-icon:focus-visible[b-o3vyfccxc2] {
        outline: 2px solid var(--chat-icon-focus-ring, rgba(0, 96, 159, .35));
        outline-offset: 2px;
    }

    .cb-icon:disabled[b-o3vyfccxc2] {
        opacity: .4;
        cursor: not-allowed;
    }

    .cb-icon i[b-o3vyfccxc2] {
        font-size: 1.35rem;
    }

/* upload button: processing state */
.cb-upload.is-processing[b-o3vyfccxc2] {
    opacity: .6;
}
/* /Components/Layout/AnonymousLayout.razor.rz.scp.css */
/* Copied from MainLayout.razor.css - keep in sync */


/* outermost wrapper in AnonymousLayout.razor */
.page[b-18v02f4hve] {
    position: relative;
    display: flex;
    flex-direction: row;

    /* set height for h-100 to work */
    height: 100%;       /* allow content to grow larger than the viewport (don't use 100dvh here as well) */
    min-height: 100dvh; /* make it as large as the dynamic viewport (on mobile) */
}

/* main content area in MainLayout */
main[b-18v02f4hve] {
    flex: 1;

    /* set height for h-100 to work */
    height: 100%;
    min-height: 100dvh;
    min-width: 0;
}

/* The article element wrapping the page body in MainLayout; added to set height for h-100 to work.
*/
.content[b-18v02f4hve] {
    height: 100%;
    min-height: 0;
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;

    /* This was defined in app.css and moved here */
    padding-top: 1.1rem;
}

#blazor-error-ui[b-18v02f4hve] {
    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-18v02f4hve] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Note: If you make changes here, consider applying them also 
         in AnonymousLayout */


/* outermost wrapper in MainLayout.razor */
.page[b-0jrzrjr5au] {
    position: relative;
    display: flex;
    flex-direction: column;

    /* set height for h-100 to work */
    height: 100%;       /* allow content to grow larger than the viewport (don't use 100dvh here as well) */
    min-height: 100dvh; /* make it as large as the dynamic viewport (on mobile) */
}

/* main content area in MainLayout */
main[b-0jrzrjr5au] {
    flex: 1;

    /* set height for h-100 to work */
    height: 100%;
    min-height: 100dvh;
    min-width: 0;
}

/* The article element wrapping the page body in MainLayout; added to set height for h-100 to work.
*/
.content[b-0jrzrjr5au] {
    height: 100%;
    min-height: 0;
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;

    /* This was defined in app.css and moved here */
    padding-top: 1.1rem;
}

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

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

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

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

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

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

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

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

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

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

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

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

#blazor-error-ui[b-0jrzrjr5au] {
    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-0jrzrjr5au] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-ocuo9p0cbj] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-ocuo9p0cbj] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-ocuo9p0cbj] {
    height: 3.5rem;
    /*background-color: rgba(0,0,0,0.4);*/
}

.navbar-brand[b-ocuo9p0cbj] {
    font-size: 1.1rem;
}

.bi[b-ocuo9p0cbj] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' 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-house-door-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door' viewBox='0 0 16 16'%3E%3Cpath d='M8.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.5h4.5a.5.5 0 0 0 .5-.5v-4h2v4a.5.5 0 0 0 .5.5H14a.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.293zM2.5 14V7.707l5.5-5.5 5.5 5.5V14H10v-4a.5.5 0 0 0-.5-.5h-3a.5.5 0 0 0-.5.5v4z'/%3E%3C/svg%3E");
}

.bi-file-earmark-arrow-up-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-file-earmark-arrow-up' viewBox='0 0 16 16'%3E%3Cpath d='M8.5 11.5a.5.5 0 0 1-1 0V7.707L6.354 8.854a.5.5 0 1 1-.708-.708l2-2a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 7.707z'/%3E%3Cpath d='M14 14V4.5L9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2M9.5 3A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.bi-lock-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM5 8h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

.bi-person-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person' viewBox='0 0 16 16'%3E%3Cpath d='M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z'/%3E%3C/svg%3E");
}

.bi-person-badge-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-badge' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3Cpath d='M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0h-7zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492V2.5z'/%3E%3C/svg%3E");
}

.bi-person-fill-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.bi-gear-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-gear' viewBox='0 0 16 16'%3E%3Cpath d='M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z'/%3E%3Cpath d='M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z'/%3E%3C/svg%3E");
}

.bi-arrow-bar-left-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-arrow-bar-left' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5ZM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5Z'/%3E%3C/svg%3E");
}

/* download svg from https://icons.getbootstrap.com and URL encode it with https://yoksel.github.io/url-encoder, color was currentColor */
.bi-mortarboard-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-mortarboard' viewBox='0 0 16 16'%3E%3Cpath d='M8.211 2.047a.5.5 0 0 0-.422 0l-7.5 3.5a.5.5 0 0 0 .025.917l7.5 3a.5.5 0 0 0 .372 0L14 7.14V13a1 1 0 0 0-1 1v2h3v-2a1 1 0 0 0-1-1V6.739l.686-.275a.5.5 0 0 0 .025-.917zM8 8.46 1.758 5.965 8 3.052l6.242 2.913z'/%3E%3Cpath d='M4.176 9.032a.5.5 0 0 0-.656.327l-.5 1.7a.5.5 0 0 0 .294.605l4.5 1.8a.5.5 0 0 0 .372 0l4.5-1.8a.5.5 0 0 0 .294-.605l-.5-1.7a.5.5 0 0 0-.656-.327L8 10.466zm-.068 1.873.22-.748 3.496 1.311a.5.5 0 0 0 .352 0l3.496-1.311.22.748L8 12.46z'/%3E%3C/svg%3E");
}

.bi-list-stars-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-stars' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M5 11.5a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 0 1h-9a.5.5 0 0 1-.5-.5'/%3E%3Cpath d='M2.242 2.194a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.28.28 0 0 0-.094.3l.173.569c.078.256-.213.462-.423.3l-.417-.324a.27.27 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.28.28 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.27.27 0 0 0 .259-.194zm0 4a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.28.28 0 0 0-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.27.27 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.28.28 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.27.27 0 0 0 .259-.194zm0 4a.27.27 0 0 1 .516 0l.162.53c.035.115.14.194.258.194h.551c.259 0 .37.333.164.493l-.468.363a.28.28 0 0 0-.094.3l.173.569c.078.255-.213.462-.423.3l-.417-.324a.27.27 0 0 0-.328 0l-.417.323c-.21.163-.5-.043-.423-.299l.173-.57a.28.28 0 0 0-.094-.299l-.468-.363c-.206-.16-.095-.493.164-.493h.55a.27.27 0 0 0 .259-.194z'/%3E%3C/svg%3E");
}

.bi-chat-dots-fill-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-chat-dots-fill' 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");
}

.bi-terminal-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-terminal' viewBox='0 0 16 16'%3E%3Cpath d='M6 9a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3A.5.5 0 0 1 6 9M3.854 4.146a.5.5 0 1 0-.708.708L4.793 6.5 3.146 8.146a.5.5 0 1 0 .708.708l2-2a.5.5 0 0 0 0-.708z'/%3E%3Cpath d='M2 1a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm12 1a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

.bi-megaphone-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-megaphone' viewBox='0 0 16 16'%3E%3Cpath d='M13 2.5a1.5 1.5 0 0 1 3 0v11a1.5 1.5 0 0 1-3 0v-.214c-2.162-1.241-4.49-1.843-6.912-2.083l.405 2.712A1 1 0 0 1 5.51 15.1h-.548a1 1 0 0 1-.916-.599l-1.85-3.49-.202-.003A2.014 2.014 0 0 1 0 9V7a2.02 2.02 0 0 1 1.992-2.013 75 75 0 0 0 2.483-.075c3.043-.154 6.148-.849 8.525-2.199zm1 0v11a.5.5 0 0 0 1 0v-11a.5.5 0 0 0-1 0m-1 1.35c-2.344 1.205-5.209 1.842-8 2.033v4.233q.27.015.537.036c2.568.189 5.093.744 7.463 1.993zm-9 6.215v-4.13a95 95 0 0 1-1.992.052A1.02 1.02 0 0 0 1 7v2c0 .55.448 1.002 1.006 1.009A61 61 0 0 1 4 10.065m-.657.975 1.609 3.037.01.024h.548l-.002-.014-.443-2.966a68 68 0 0 0-1.722-.082z'/%3E%3C/svg%3E");
}

.bi-info-square-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-info-square' viewBox='0 0 16 16'%3E%3Cpath d='M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2z'/%3E%3Cpath d='m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0'/%3E%3C/svg%3E");
}

.bi-file-earmark-text-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-file-earmark-text' viewBox='0 0 16 16'%3E%3Cpath d='M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5'/%3E%3Cpath d='M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

.bi-eye-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-eye' viewBox='0 0 16 16'%3E%3Cpath d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8M1.173 8a13 13 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5s3.879 1.168 5.168 2.457A13 13 0 0 1 14.828 8q-.086.13-.195.288c-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5s-3.879-1.168-5.168-2.457A13 13 0 0 1 1.172 8z'/%3E%3Cpath d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5M4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0'/%3E%3C/svg%3E");
}

.bi-clock-history-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-clock-history' viewBox='0 0 16 16'%3E%3Cpath d='M8.515 1.019A7 7 0 0 0 8 1V0a8 8 0 0 1 .589.022zm2.004.45a7 7 0 0 0-.985-.299l.219-.976q.576.129 1.126.342zm1.37.71a7 7 0 0 0-.439-.27l.493-.87a8 8 0 0 1 .979.654l-.615.789a7 7 0 0 0-.418-.302zm1.834 1.79a7 7 0 0 0-.653-.796l.724-.69q.406.429.747.91zm.744 1.352a7 7 0 0 0-.214-.468l.893-.45a8 8 0 0 1 .45 1.088l-.95.313a7 7 0 0 0-.179-.483m.53 2.507a7 7 0 0 0-.1-1.025l.985-.17q.1.58.116 1.17zm-.131 1.538q.05-.254.081-.51l.993.123a8 8 0 0 1-.23 1.155l-.964-.267q.069-.247.12-.501m-.952 2.379q.276-.436.486-.908l.914.405q-.24.54-.555 1.038zm-.964 1.205q.183-.183.35-.378l.758.653a8 8 0 0 1-.401.432z'/%3E%3Cpath d='M8 1a7 7 0 1 0 4.95 11.95l.707.707A8.001 8.001 0 1 1 8 0z'/%3E%3Cpath d='M7.5 3a.5.5 0 0 1 .5.5v5.21l3.248 1.856a.5.5 0 0 1-.496.868l-3.5-2A.5.5 0 0 1 7 9V3.5a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E");
}

.bi-newspaper-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-newspaper' viewBox='0 0 16 16'%3E%3Cpath d='M0 2.5A1.5 1.5 0 0 1 1.5 1h11A1.5 1.5 0 0 1 14 2.5v10.528c0 .3-.05.654-.238.972h.738a.5.5 0 0 0 .5-.5v-9a.5.5 0 0 1 1 0v9a1.5 1.5 0 0 1-1.5 1.5H1.497A1.497 1.497 0 0 1 0 13.5zM12 14c.37 0 .654-.211.853-.441.092-.106.147-.279.147-.531V2.5a.5.5 0 0 0-.5-.5h-11a.5.5 0 0 0-.5.5v11c0 .278.223.5.497.5z'/%3E%3Cpath d='M2 3h10v2H2zm0 3h4v3H2zm0 4h4v1H2zm0 2h4v1H2zm5-6h2v1H7zm3 0h2v1h-2zM7 8h2v1H7zm3 0h2v1h-2zm-3 2h2v1H7zm3 0h2v1h-2zm-3 2h2v1H7zm3 0h2v1h-2z'/%3E%3C/svg%3E");
}

.bi-diagramm-3-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-diagram-3' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M6 3.5A1.5 1.5 0 0 1 7.5 2h1A1.5 1.5 0 0 1 10 3.5v1A1.5 1.5 0 0 1 8.5 6v1H14a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0V8h-5v.5a.5.5 0 0 1-1 0v-1A.5.5 0 0 1 2 7h5.5V6A1.5 1.5 0 0 1 6 4.5zM8.5 5a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5zM0 11.5A1.5 1.5 0 0 1 1.5 10h1A1.5 1.5 0 0 1 4 11.5v1A1.5 1.5 0 0 1 2.5 14h-1A1.5 1.5 0 0 1 0 12.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm4.5.5A1.5 1.5 0 0 1 7.5 10h1a1.5 1.5 0 0 1 1.5 1.5v1A1.5 1.5 0 0 1 8.5 14h-1A1.5 1.5 0 0 1 6 12.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm4.5.5a1.5 1.5 0 0 1 1.5-1.5h1a1.5 1.5 0 0 1 1.5 1.5v1a1.5 1.5 0 0 1-1.5 1.5h-1a1.5 1.5 0 0 1-1.5-1.5zm1.5-.5a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5z'/%3E%3C/svg%3E");
}

.bi-discord-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-discord' viewBox='0 0 16 16'%3E%3Cpath d='M13.545 2.907a13.2 13.2 0 0 0-3.257-1.011.05.05 0 0 0-.052.025c-.141.25-.297.577-.406.833a12.2 12.2 0 0 0-3.658 0 8 8 0 0 0-.412-.833.05.05 0 0 0-.052-.025c-1.125.194-2.22.534-3.257 1.011a.04.04 0 0 0-.021.018C.356 6.024-.213 9.047.066 12.032q.003.022.021.037a13.3 13.3 0 0 0 3.995 2.02.05.05 0 0 0 .056-.019q.463-.63.818-1.329a.05.05 0 0 0-.01-.059l-.018-.011a9 9 0 0 1-1.248-.595.05.05 0 0 1-.02-.066l.015-.019q.127-.095.248-.195a.05.05 0 0 1 .051-.007c2.619 1.196 5.454 1.196 8.041 0a.05.05 0 0 1 .053.007q.121.1.248.195a.05.05 0 0 1-.004.085 8 8 0 0 1-1.249.594.05.05 0 0 0-.03.03.05.05 0 0 0 .003.041c.24.465.515.909.817 1.329a.05.05 0 0 0 .056.019 13.2 13.2 0 0 0 4.001-2.02.05.05 0 0 0 .021-.037c.334-3.451-.559-6.449-2.366-9.106a.03.03 0 0 0-.02-.019m-8.198 7.307c-.789 0-1.438-.724-1.438-1.612s.637-1.613 1.438-1.613c.807 0 1.45.73 1.438 1.613 0 .888-.637 1.612-1.438 1.612m5.316 0c-.788 0-1.438-.724-1.438-1.612s.637-1.613 1.438-1.613c.807 0 1.451.73 1.438 1.613 0 .888-.631 1.612-1.438 1.612'/%3E%3C/svg%3E");
}

.bi-inboxes-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-inboxes' viewBox='0 0 16 16'%3E%3Cpath d='M4.98 1a.5.5 0 0 0-.39.188L1.54 5H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0A.5.5 0 0 1 10 5h4.46l-3.05-3.812A.5.5 0 0 0 11.02 1zm9.954 5H10.45a2.5 2.5 0 0 1-4.9 0H1.066l.32 2.562A.5.5 0 0 0 1.884 9h12.234a.5.5 0 0 0 .496-.438zM3.809.563A1.5 1.5 0 0 1 4.981 0h6.038a1.5 1.5 0 0 1 1.172.563l3.7 4.625a.5.5 0 0 1 .105.374l-.39 3.124A1.5 1.5 0 0 1 14.117 10H1.883A1.5 1.5 0 0 1 .394 8.686l-.39-3.124a.5.5 0 0 1 .106-.374zM.125 11.17A.5.5 0 0 1 .5 11H6a.5.5 0 0 1 .5.5 1.5 1.5 0 0 0 3 0 .5.5 0 0 1 .5-.5h5.5a.5.5 0 0 1 .496.562l-.39 3.124A1.5 1.5 0 0 1 14.117 16H1.883a1.5 1.5 0 0 1-1.489-1.314l-.39-3.124a.5.5 0 0 1 .121-.393zm.941.83.32 2.562a.5.5 0 0 0 .497.438h12.234a.5.5 0 0 0 .496-.438l.32-2.562H10.45a2.5 2.5 0 0 1-4.9 0z'/%3E%3C/svg%3E");
}

.bi-alarm-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-alarm' viewBox='0 0 16 16'%3E%3Cpath d='M8.5 5.5a.5.5 0 0 0-1 0v3.362l-1.429 2.38a.5.5 0 1 0 .858.515l1.5-2.5A.5.5 0 0 0 8.5 9z'/%3E%3Cpath d='M6.5 0a.5.5 0 0 0 0 1H7v1.07a7.001 7.001 0 0 0-3.273 12.474l-.602.602a.5.5 0 0 0 .707.708l.746-.746A6.97 6.97 0 0 0 8 16a6.97 6.97 0 0 0 3.422-.892l.746.746a.5.5 0 0 0 .707-.708l-.601-.602A7.001 7.001 0 0 0 9 2.07V1h.5a.5.5 0 0 0 0-1zm1.038 3.018a6 6 0 0 1 .924 0 6 6 0 1 1-.924 0M0 3.5c0 .753.333 1.429.86 1.887A8.04 8.04 0 0 1 4.387 1.86 2.5 2.5 0 0 0 0 3.5M13.5 1c-.753 0-1.429.333-1.887.86a8.04 8.04 0 0 1 3.527 3.527A2.5 2.5 0 0 0 13.5 1'/%3E%3C/svg%3E");
}

.bi-info-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-info' viewBox='0 0 16 16'%3E%3Cpath d='m8.93 6.588-2.29.287-.082.38.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0'/%3E%3C/svg%3E");
}

.bi-scroll-nav-menu[b-ocuo9p0cbj] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M12.61 8.41a5.5 5.5 0 0 1-1.454-.424A60 60 0 0 1 15.61 4.43l.1-.07l.06-.11a2.924 2.924 0 0 0-.765-3.496a2.92 2.92 0 0 0-3.459-.376l-.126.133A55 55 0 0 1 6.512 6.41a50 50 0 0 1-6.018 4.592L.1 11.25v.23a4.53 4.53 0 0 0 .7 3.655A2.83 2.83 0 0 0 3.007 16a2 2 0 0 0 1.778-.902C5.03 14.79 6.85 12.49 8.79 10.39c.268.464.476 1.003.594 1.575a6.3 6.3 0 0 1-.399 3.078L10.67 13L12 14a12.1 12.1 0 0 0-.584-3.336a5.3 5.3 0 0 0-.915-1.214c.406.346.871.643 1.372.874c.94.338 1.989.572 3.076.672L14 9.73L16 8a9 9 0 0 1-2.777.431q-.324 0-.642-.022zm-.45-7.23a1.9 1.9 0 0 1 .842-.194c.506 0 .966.196 1.309.516a1.93 1.93 0 0 1 .595 2.192c-.486.307-2.346 1.717-4.146 3.307a2 2 0 0 0-.668-1.298a1.6 1.6 0 0 0-1.24-.372A58 58 0 0 0 12.16 1.18M2.7 11.81a.46.46 0 0 1 .262-.082l.04.002h.068c.179.052.334.142.461.261l-.871.719a1.3 1.3 0 0 1-.119-.716a.33.33 0 0 1 .158-.183zM4 14.5a1 1 0 0 1-1.005.499a1.85 1.85 0 0 1-1.485-.54a3.43 3.43 0 0 1-.583-1.922q.001-.377.077-.73l.706-.457c-.094.14-.164.304-.199.481a3 3 0 0 0 .535 1.958l.354.44l1.7-1.4a2.4 2.4 0 0 1-.106 1.685zm.86-2.45a2.83 2.83 0 0 0-1.54-1.274c-.071-.012-.13-.016-.19-.016s-.119.004-.177.01a1.6 1.6 0 0 0-.35 0a45 45 0 0 0 3.988-3.052c.398.071.812.25 1.131.533c.297.313.48.739.48 1.209l-.002.094a54 54 0 0 0-3 3.506a2.8 2.8 0 0 0-.357-1.023z'/%3E%3C/svg%3E");    
}

.nav-item[b-ocuo9p0cbj] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-ocuo9p0cbj] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-ocuo9p0cbj] {
        padding-bottom: 1rem;
    }

    .nav-item[b-ocuo9p0cbj]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-ocuo9p0cbj]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-ocuo9p0cbj]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-ocuo9p0cbj] {
    display: none;
    /*background: linear-gradient(to bottom, #f7f7f5 0%, #f7f7f5 75%, #ffd700 100%);
    color: #000;*/ /* Adjust text/icon color for contrast */
    /*padding: 1rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);*/
}


/* Mobile overlay behavior for the hamburger menu; if you change the breakpoint, also change it 2x in MainLayout.razor.css */
@media (max-width: 767.98px) {
    /* Ensure toggler is visible on small screens */
    .navbar-toggler[b-ocuo9p0cbj] {
        display: block;
        z-index: 1100; /* above overlay */
    }

    /* Make the nav list an overlay that covers the viewport under the top-row */
    .nav-scrollable[b-ocuo9p0cbj] {
        display: none; /* default hidden; shown when toggler is checked */
        position: fixed;
        top: 3.5rem; /* below .top-row */
        left: 0;
        right: 0;
        height: calc(100% - 3.5rem);
        overflow-y: auto;
        background: linear-gradient(200deg, rgb(5, 39, 103) 0%, #3a0647 70%);
        padding: 0.75rem 0.5rem;
        box-shadow: 0 4px 12px rgba(0,0,0,0.3);
        z-index: 1050;
    }

    /* Show overlay when hamburger is checked */
    .navbar-toggler:checked ~ .nav-scrollable[b-ocuo9p0cbj] {
        display: block;
    }

    /* Optional: make nav items larger/tappable on mobile */
    .nav-item[b-ocuo9p0cbj] {
        padding: 0.75rem 1rem;
    }
}


/* Desktop rules: match MainLayout at 768px and above */
.navbar-toggler:checked ~ .nav-scrollable[b-ocuo9p0cbj] {
    display: block;
}

@media (min-width: 768px) {
    .navbar-toggler[b-ocuo9p0cbj] {
        display: none;
    }

    .nav-scrollable[b-ocuo9p0cbj] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Pages/EditMate.razor.rz.scp.css */
[b-d6sl0j6uq3] .rz-autocomplete-input {
    height: calc(1.5em + 0.75rem + 2px) !important;
    padding: 0.375rem 0.75rem !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.preview-mate-card-body[b-d6sl0j6uq3] {
    height: calc(100dvh - 1.1rem - 3.5rem);
    min-height: 28rem;
    overflow: auto;
}

.prompt-helpers-row[b-d6sl0j6uq3] {
    margin-top: -0.5rem;
}

.prompt-helpers-toggle[b-d6sl0j6uq3],
.collapsible-section-toggle[b-d6sl0j6uq3] {
    align-items: center;
    color: var(--bs-body-color);
    display: inline-flex;
    font-weight: 500;
    gap: 0.35rem;
    text-align: left;
    text-decoration: none;
    white-space: nowrap;
}

.prompt-helpers-toggle:hover[b-d6sl0j6uq3],
.prompt-helpers-toggle:focus[b-d6sl0j6uq3],
.collapsible-section-toggle:hover[b-d6sl0j6uq3],
.collapsible-section-toggle:focus[b-d6sl0j6uq3] {
    color: var(--bs-primary);
    text-decoration: none;
}

.prompt-helpers-panel[b-d6sl0j6uq3] {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.prompt-helper-link[b-d6sl0j6uq3] {
    align-items: center;
    display: inline-flex;
    gap: 0.35rem;
}

.prompt-helper-link .bi-box-arrow-up-right[b-d6sl0j6uq3] {
    font-size: 0.85em;
}
/* /Components/Pages/Mates.razor.rz.scp.css */
/* Action buttons */
.btn-soft-blue-sm[b-4yi8hvie1v] {
    background-color: #e3f2fd;
    color: #1976d2;
    border: none;
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    border-radius: 0.4rem;
    margin-top: 0.175rem;
    margin-right: 0rem;
    margin-bottom: 0.175rem;
    margin-left: 0.2rem;
    outline: none;
}
.btn-soft-blue-sm:hover[b-4yi8hvie1v] {
    background-color: #bbdefb;
    color: #0d47a1;
}
.btn-soft-blue-sm:focus[b-4yi8hvie1v],
.btn-soft-blue-sm:active[b-4yi8hvie1v],
.btn-soft-blue-sm:focus-visible[b-4yi8hvie1v] {
    outline: none;
    box-shadow: 0 0 0 3px #90caf9;
    border-radius: 0.4rem;
    --bs-btn-focus-box-shadow: none !important;
}
a.btn-soft-blue-sm:focus[b-4yi8hvie1v] { outline: none !important; }




.mates-grid[b-4yi8hvie1v] {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}


/* DataGrid header: bold titles (first thead row) */
.mates-grid[b-4yi8hvie1v]  thead tr:first-child th .rz-column-title-content {
    font-weight: 600;
}

/* Filter row (second thead row): comfortable sizing */
.mates-grid[b-4yi8hvie1v]  thead tr:nth-child(2) th {
    padding: 0.25rem 0.5rem !important;
}

.mates-grid[b-4yi8hvie1v]  .rz-cell-filter {
    padding: 0.125rem 0.5rem !important;
}

/* with the simple filter, this would not be necessary */
.mates-grid[b-4yi8hvie1v]  .rz-cell-filter-label {
    height: 2rem !important; /* override inline 35px */
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.375rem !important;
    width: 100%;
    min-width: 0 !important;
}

/* Operator button (filter icon + operator badge) */
.mates-grid[b-4yi8hvie1v]  .rz-filter-button {
    height: 1.6rem !important;
    min-height: 1.6rem !important;
    padding: 0 0.4rem !important;
    width: auto !important;
    flex: 0 0 auto !important;
    line-height: 1 !important;
    font-size: 0.85rem !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.25rem !important;
}

    .mates-grid[b-4yi8hvie1v]  .rz-filter-button .rzi {
        font-size: 1rem !important;
    }

/* Filter input textbox */
.mates-grid[b-4yi8hvie1v]  .rz-cell-filter .rz-textbox {
    height: 1.6rem !important;
    padding: 0.125rem 0.5rem !important;
    font-size: 0.95rem !important;
    flex: 1 1 0 !important; /* use zero basis so the input does not impose a large intrinsic column width */
    width: 0 !important; /* override width:100% in markup */
    min-width: 0 !important; /* avoid overflow */
    box-sizing: border-box;
}
/* /Components/Pages/UserManagement.razor.rz.scp.css */
/* Admin User Management table: mirrors the Mates page Radzen grid treatment. */
.users-grid[b-8nhsa635t3] {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}

.users-grid[b-8nhsa635t3]  thead tr:first-child th .rz-column-title-content {
    font-weight: 600;
}

.users-grid[b-8nhsa635t3]  thead tr:nth-child(2) th {
    padding: 0.25rem 0.5rem !important;
}

.users-grid[b-8nhsa635t3]  .rz-cell-filter {
    padding: 0.125rem 0.5rem !important;
}

.users-grid[b-8nhsa635t3]  .rz-cell-filter-label {
    height: 2rem !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.375rem !important;
    width: 100%;
    min-width: 0 !important;
}

.users-grid[b-8nhsa635t3]  .rz-filter-button {
    height: 1.6rem !important;
    min-height: 1.6rem !important;
    padding: 0 0.4rem !important;
    width: auto !important;
    flex: 0 0 auto !important;
    line-height: 1 !important;
    font-size: 0.85rem !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.25rem !important;
}

.users-grid[b-8nhsa635t3]  .rz-filter-button .rzi {
    font-size: 1rem !important;
}

.users-grid[b-8nhsa635t3]  .rz-cell-filter .rz-textbox {
    height: 1.6rem !important;
    padding: 0.125rem 0.5rem !important;
    font-size: 0.95rem !important;
    flex: 1 1 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    box-sizing: border-box;
}
/* /Components/TtsToggleComponent.razor.rz.scp.css */
/* icon button base (matches ChatComponent's cb-icon pattern) */
.cb-icon[b-5sgb1iskkr] {
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .9;
    color: var(--chat-icon-color, #05163d);
    transition: background-color .15s, color .15s, opacity .15s;
}

    .cb-icon:hover[b-5sgb1iskkr],
    .cb-icon:focus-visible[b-5sgb1iskkr] {
        background: var(--chat-icon-hover-bg, rgba(0, 96, 159, .08));
        color: var(--mm-primary, #00609f);
    }

    .cb-icon:focus-visible[b-5sgb1iskkr] {
        outline: 2px solid var(--chat-icon-focus-ring, rgba(0, 96, 159, .35));
        outline-offset: 2px;
    }

    .cb-icon:disabled[b-5sgb1iskkr] {
        opacity: .4;
        cursor: not-allowed;
    }

    .cb-icon i[b-5sgb1iskkr] {
        font-size: 1.35rem;
    }

/* TTS toggle: active state */
.cb-tts.is-active[b-5sgb1iskkr] {
    color: var(--rz-primary);
}
/* /Components/UrgentNewsBanner.razor.rz.scp.css */
.urgent-news-banner[b-0524cmlxew] {
    position: fixed;
    top: max(0.5rem, env(safe-area-inset-top));
    left: 50%;
    width: min(52rem, calc(100vw - 1.5rem));
    transform: translateX(-50%);
    z-index: 1040;
    pointer-events: none;
}

.urgent-news-banner__strip[b-0524cmlxew] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.6rem;
    padding: 0.55rem 0.75rem;
    color: #3f2d00;
    background: #fff3cd;
    border: 1px solid #ffda6a;
    border-radius: 0.45rem;
    box-shadow: 0 0.5rem 1.5rem rgba(5, 22, 61, 0.18);
    pointer-events: auto;
}

.urgent-news-banner__icon[b-0524cmlxew] {
    color: #a36b00;
    line-height: 1;
}

.urgent-news-banner__text[b-0524cmlxew] {
    min-width: 0;
    font-weight: 600;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.urgent-news-banner__close[b-0524cmlxew] {
    width: 2rem;
    height: 2rem;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #3f2d00;
    background: transparent;
}

.urgent-news-banner__close:hover[b-0524cmlxew],
.urgent-news-banner__close:focus-visible[b-0524cmlxew] {
    background: rgba(63, 45, 0, 0.12);
}
