@import '_content/ThalabusWebPlugins/ThalabusWebPlugins.bundle.scp.css';

/* _content/ThalabusWeb/App.razor.rz.scp.css */
body[b-7b26d5hhpr] {
    margin: 0;
    padding: 0;
    height: 100vh;
    font-family: var(--body-font);
    font-size: var(--type-ramp-base-font-size);
    line-height: var(--type-ramp-base-line-height);
    font-weight: var(--font-weight);
    color: var(--neutral-foreground-rest);
    background: var(--neutral-fill-layer-rest);
}
/* _content/ThalabusWeb/Pages/Dashboard/Dashboard_Llm.razor.rz.scp.css */
.dashboard-llm-top-links[b-jobkrd7dn9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1em;
}

.dashboard-llm-refresh[b-jobkrd7dn9] {
    display: flex;
    align-items: center;
}

.status-badge[b-jobkrd7dn9] {
    display: inline-block;
    padding: 0.25em 0.75em;
    border-radius: 1em;
    font-size: 0.95em;
    font-weight: 600;
    color: #fff;
    margin-left: 4px;
    transition: background-color 150ms ease-in-out, transform 150ms ease-in-out;
}

.status-available[b-jobkrd7dn9] {
    background-color: #28a745; /* green */
}

.status-unavailable[b-jobkrd7dn9] {
    background-color: #6f42c1; /* purple */
}

.status-unknown[b-jobkrd7dn9] {
    background-color: #6c757d; /* gray */
}

/* New status styles */
.status-not-supported[b-jobkrd7dn9] {
    background-color: gray;
}

.status-network-unreachable[b-jobkrd7dn9] {
    background-color: #ffc107; /* yellow */
    color: #212529; /* dark text for better contrast on yellow */
}

.status-machine-unresponsive[b-jobkrd7dn9] {
    background-color: darkred;
}

.status-loading[b-jobkrd7dn9] {
    background-color: #0d6efd; /* blue */
    position: relative;
}

/* Optional small spinner shown before the label */
.status-loading[b-jobkrd7dn9]::before {
    content: "";
    display: inline-block;
    width: 0.75em;
    height: 0.75em;
    margin-right: 0.5em;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.25);
    border-top-color: rgba(255,255,255,0.85);
    animation: llm-badge-spin-b-jobkrd7dn9 0.8s linear infinite;
    vertical-align: middle;
}

@keyframes llm-badge-spin-b-jobkrd7dn9 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
/* _content/ThalabusWeb/Pages/Dashboard/Dashboard_thalabus.razor.rz.scp.css */
.dashboard-status[b-ofyllazplo] {
    max-width: 720px;
}

.dashboard-table[b-ofyllazplo] {
    width: 100%;
    border-collapse: collapse;
}

.dashboard-table td[b-ofyllazplo] {
    border: none;
    padding: 8px 6px;
    vertical-align: middle;
}

.env-cell[b-ofyllazplo] {
    width: 220px;
}

.url-cell[b-ofyllazplo] {
    min-width: 120px;
    word-break: break-all;
}

.status-cell[b-ofyllazplo] {
    width: 200px;
    text-align: right;
}

.url-row[b-ofyllazplo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid rgba(0,0,0,0.06);
}

.url-row .url-left[b-ofyllazplo] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.url-row a[b-ofyllazplo] {
    color: var(--bs-link-color, #0d6efd);
    text-decoration: underline;
}

.env-label[b-ofyllazplo] {
    font-size: 0.9rem;
    color: #6b7280; /* gray-500 */
    font-weight: 600;
    text-transform: lowercase;
}

.dashboard-version[b-ofyllazplo] {
    margin-bottom: 8px;
    font-size: 0.95rem;
    color: #374151; /* gray-700 */
    font-weight: 600;
}

.status-box[b-ofyllazplo] {
    min-width: 120px;
    text-align: center;
    padding: 6px 10px;
    border-radius: 6px;
    font-weight: 600;
}

.status-box.available[b-ofyllazplo] {
    background: #e6ffed;
    color: #0a6b2d;
    border: 1px solid #baf0c9;
}

.status-box.not-available[b-ofyllazplo] {
    background: #fff2f2;
    color: #a10000;
    border: 1px solid #f0bcbc;
}

.actions[b-ofyllazplo] {
    margin-top: 12px;
    display: flex;
    gap: 8px;
}

.btn-refresh[b-ofyllazplo],
.btn-edit[b-ofyllazplo],
.btn-save[b-ofyllazplo],
.btn-cancel[b-ofyllazplo],
.btn-add[b-ofyllazplo],
.btn-remove[b-ofyllazplo] {
    padding: 6px 12px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-weight: 500;
}

.btn-refresh[b-ofyllazplo] {
    background: #0078d4;
    color: white;
}

.btn-refresh:hover[b-ofyllazplo] {
    background: #005a9e;
}

.btn-edit[b-ofyllazplo] {
    background: #f3f4f6;
    color: #374151;
    border: 1px solid #d1d5db;
}

.btn-edit:hover[b-ofyllazplo] {
    background: #e5e7eb;
}

.btn-save[b-ofyllazplo] {
    background: #10b981;
    color: white;
}

.btn-save:hover[b-ofyllazplo] {
    background: #059669;
}

.btn-cancel[b-ofyllazplo] {
    background: #6b7280;
    color: white;
}

.btn-cancel:hover[b-ofyllazplo] {
    background: #4b5563;
}

.btn-add[b-ofyllazplo] {
    background: #3b82f6;
    color: white;
}

.btn-add:hover[b-ofyllazplo] {
    background: #2563eb;
}

.btn-remove[b-ofyllazplo] {
    padding: 4px 8px;
    background: #ef4444;
    color: white;
    font-size: 0.875rem;
}

.btn-remove:hover[b-ofyllazplo] {
    background: #dc2626;
}

.action-cell[b-ofyllazplo] {
    width: 100px;
    text-align: center;
}

.form-control[b-ofyllazplo] {
    padding: 4px 8px;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    width: 100%;
}

.form-control:focus[b-ofyllazplo] {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
/* _content/ThalabusWeb/Pages/Datasets/Datasets.razor.rz.scp.css */
.datasets-container[b-8y27r1l2ni] {
    padding: 1.5rem;
    height: calc(100vh - 120px);
    display: flex;
    flex-direction: column;
}

.datasets-header[b-8y27r1l2ni] {
    margin-bottom: 1.5rem;
}

    .datasets-header h3[b-8y27r1l2ni] {
        margin: 0;
        color: #333;
    }

.datasets-layout[b-8y27r1l2ni] {
    display: flex;
    gap: 1.5rem;
    flex: 1;
    overflow: hidden;
}

.datasets-list-panel[b-8y27r1l2ni] {
    flex: 0 0 350px;
    border-right: 1px solid #ddd;
    padding-right: 1.5rem;
    overflow-y: auto;
}

[b-8y27r1l2ni] .datasets-list-panel .dataset-card.selected {
    background-color: var(--tbs-selection-bg);
    box-shadow: none;
}

.dataset-visualizer-panel[b-8y27r1l2ni] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-left: 1.5rem;
}

.dataset-details[b-8y27r1l2ni] {
    flex-shrink: 0;
}

.dataset-details h4[b-8y27r1l2ni] {
    margin-top: 0;
    margin-bottom: 0.5rem;
    color: var(--color-dataset);
    display: flex;
    align-items: center;
    gap: 0.2rem;
    font-family: 'Monaco', 'Menlo', 'Cascadia Code', monospace;
    text-transform: uppercase;
    font-size: 0.80rem;
    font-weight: bold;
    padding: 0;
    border-radius: 3px;
    width: fit-content;
}

    .dataset-details h4:hover[b-8y27r1l2ni] {
        text-decoration: underline solid;
    }

.dataset-details-neo4j-link[b-8y27r1l2ni] {
    color: var(--color-dataset);
    opacity: 0.7;
    font-size: 1.1rem;
    line-height: 1;
    text-decoration: none;
    flex-shrink: 0;
}

    .dataset-details-neo4j-link:hover[b-8y27r1l2ni] {
        opacity: 1;
    }

.dataset-description[b-8y27r1l2ni] {
    color: #555;
    line-height: 1.6;
    margin-bottom: 1rem;
}

.dataset-description-row textarea[b-8y27r1l2ni] {
    display: block;
    width: 100%;
    min-height: 6rem;
    margin-bottom: 0.35rem;
    padding: 0.5rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    resize: vertical;
    font: inherit;
}

.dataset-description-error[b-8y27r1l2ni] {
    color: #b42318;
    margin-top: 0.5rem;
}

.dataset-status-row[b-8y27r1l2ni] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

.dataset-status-btn[b-8y27r1l2ni] {
    border: none;
    background: transparent;
    color: var(--color-accent);
    cursor: pointer;
    padding: 0;
    text-decoration: underline;
    font-size: 0.875rem;
    display: inline-flex;
    align-items: center;
}

.dataset-status-btn:hover:not(:disabled)[b-8y27r1l2ni] {
    color: var(--color-dataset);
    text-decoration: none;
}

.dataset-status-btn:disabled[b-8y27r1l2ni] {
    cursor: wait;
    opacity: 0.6;
    text-decoration: underline;
}

.dataset-status-error[b-8y27r1l2ni] {
    color: #b42318;
    margin-top: 0.5rem;
}

.dataset-id-row[b-8y27r1l2ni] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.dataset-attributes[b-8y27r1l2ni] { border: 1px solid #555; border-collapse: collapse; table-layout: fixed; width: 100%; color: #666; background-color: #fff; font-family: inherit; font-size: 0.8rem; }
.dataset-attribute-column[b-8y27r1l2ni] { width: 18%; }
.dataset-value-column[b-8y27r1l2ni] { width: 67%; }
.dataset-actions-column[b-8y27r1l2ni] { width: 15%; }
.dataset-attributes th[b-8y27r1l2ni], .dataset-attributes td[b-8y27r1l2ni] { border: 1px solid #555; padding: 0.35rem 0.5rem; text-align: left; vertical-align: middle; }
.dataset-attributes thead th[b-8y27r1l2ni] { color: #666; font-weight: 700; white-space: nowrap; border-bottom: 1px solid #ddd; }
.dataset-attributes tbody th[b-8y27r1l2ni] { color: #666; font-weight: 700; white-space: nowrap; }
.dataset-object-counts[b-8y27r1l2ni] { display: flex; flex-wrap: wrap; gap: 0.35rem; }
.dataset-total-count-badge[b-8y27r1l2ni] { background-color: #198754; }
.dataset-knowledge-graph-count-badge[b-8y27r1l2ni] { background-color: #c0580a; }
.dataset-document-count-badge[b-8y27r1l2ni] { background-color: #4591b9; }

.dataset-id-row input[type="text"][b-8y27r1l2ni] {
    min-width: 12rem;
    padding: 0.35rem 0.5rem;
    font-size: 0.875rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    color: #333;
}

.dataset-id-row input[type="text"]:focus[b-8y27r1l2ni] {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.15);
}

.dataset-id-row input[type="text"]:disabled[b-8y27r1l2ni] {
    cursor: not-allowed;
    opacity: 0.6;
}

.btn-rename[b-8y27r1l2ni] {
    border: none;
    background: transparent;
    color: var(--color-accent);
    cursor: pointer;
    padding: 0;
    text-decoration: underline;
    font-size: 0.875rem;
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

    .btn-rename:hover:not(:disabled)[b-8y27r1l2ni] {
        color: var(--color-dataset);
        text-decoration: none;
    }

    .btn-rename:disabled[b-8y27r1l2ni] {
        cursor: wait;
        opacity: 0.6;
        text-decoration: underline;
    }

.dataset-rename-error[b-8y27r1l2ni] {
    color: #b42318;
    margin-top: 0.5rem;
}

.dataset-metadata[b-8y27r1l2ni] {
    background-color: #f8f9fa;
    border-radius: 6px;
    padding: 1rem;
    margin-bottom: 0.25rem;
}

.dataset-details-header[b-8y27r1l2ni] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dataset-details-actions[b-8y27r1l2ni] {
    flex-shrink: 0;
    flex-wrap: nowrap;
}

    .dataset-metadata h4[b-8y27r1l2ni] {
        margin-top: 0;
        margin-bottom: 1rem;
        color: var(--color-dataset);
        display: flex;
        align-items: center;
        gap: 0.2rem;
        font-family: 'Monaco', 'Menlo', 'Cascadia Code', monospace;
        text-transform: uppercase;
        font-size: 0.80rem;
        font-weight: bold;
        padding: 0;
        border-radius: 3px;
        width: fit-content;
    }

    .dataset-metadata h4:hover[b-8y27r1l2ni] {
        text-decoration: underline solid;
    }

    .dataset-metadata div[b-8y27r1l2ni] {
        margin-bottom: 0.5rem;
        color: #555;
    }

        .dataset-metadata div:last-child[b-8y27r1l2ni] {
            margin-bottom: 0;
        }

        .dataset-metadata div strong[b-8y27r1l2ni] {
            color: #333;
            margin-right: 0.5rem;
        }

.dataset-actions[b-8y27r1l2ni] {
    margin-top: 1.5rem;
}

    .dataset-actions .btn[b-8y27r1l2ni] {
        min-width: 150px;
    }

.dataset-graph-embedded[b-8y27r1l2ni] {
    margin-top: 1rem;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    background-color: #fff;
    flex: 1;
    min-height: 0;
}

    /* Override the graph visualizer styles for embedded mode */
    .dataset-graph-embedded[b-8y27r1l2ni]  .graph-visualizer-overlay {
        position: relative !important;
        background: transparent !important;
        z-index: auto !important;
        height: 100%;
    }

    .dataset-graph-embedded[b-8y27r1l2ni]  .graph-visualizer-popup {
        position: relative !important;
        transform: none !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        margin: 0 !important;
        box-shadow: none !important;
        display: flex;
        flex-direction: column;
    }

    .dataset-graph-embedded[b-8y27r1l2ni]  .graph-visualizer-content {
        flex: 1;
        min-height: 0;
    }

    .dataset-graph-embedded[b-8y27r1l2ni]  .graph-visualizer-container {
        height: 100%;
    }

    .dataset-graph-embedded[b-8y27r1l2ni]  .graph-visualizer-header {
        background-color: #f8f9fa;
        border-bottom: 1px solid #ddd;
    }

    .dataset-graph-embedded[b-8y27r1l2ni]  .graph-btn.close-btn {
        display: none !important;
    }

.no-datasets-message[b-8y27r1l2ni],
.no-selection-message[b-8y27r1l2ni] {
    text-align: center;
    padding: 3rem 1rem;
    color: #999;
}

    .no-datasets-message p[b-8y27r1l2ni],
    .no-selection-message p[b-8y27r1l2ni] {
        font-size: 1.1rem;
        margin: 0;
    }

/* Responsive adjustments */
@media (max-width: 768px) {
    .datasets-layout[b-8y27r1l2ni] {
        flex-direction: column;
    }

    .datasets-list-panel[b-8y27r1l2ni] {
        flex: 0 0 auto;
        border-right: none;
        border-bottom: 1px solid #ddd;
        padding-right: 0;
        padding-bottom: 1.5rem;
        max-height: 40vh;
    }

    .dataset-visualizer-panel[b-8y27r1l2ni] {
        padding-left: 0;
        padding-top: 1.5rem;
    }
}
/* _content/ThalabusWeb/Pages/Documents/DocumentExtractedInformation.razor.rz.scp.css */
.table-bordered[b-3nungyhw15],
.chapter-table[b-3nungyhw15] {
    font-size: 0.95em;
}

.table-bordered[b-3nungyhw15] {
    border-collapse: collapse;
    width: 100%;
    max-width: 1200px;
}

    .table-bordered th[b-3nungyhw15],
    .table-bordered td[b-3nungyhw15] {
        border: 1px solid #dee2e6;
        padding: 8px;
    }

.keywords-cell[b-3nungyhw15] {
}

.mono-block-cell[b-3nungyhw15] {
    background-color: antiquewhite;
}

.mono-block-cell-enhanced[b-3nungyhw15] {
    background-color: #E6D7C4; /* slightly darker than antiquewhite */
}

.rendered-cell[b-3nungyhw15] {
    background-color: azure;
}

.mono-block[b-3nungyhw15] {
    font-family: monospace;
    max-width: 1200px;
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-word;
}
/* _content/ThalabusWeb/Pages/Documents/DocumentManager.razor.rz.scp.css */
.document-filter[b-ewpotb0rxk] {
    margin-bottom: 1rem;
    transition: max-height 0.3s ease, opacity 0.3s ease, margin 0.3s ease, padding 0.3s ease;
    max-height: 200px;
    opacity: 1;
    overflow: hidden;
}

.document-filter.hide[b-ewpotb0rxk] {
    max-height: 0;
    opacity: 0;
    pointer-events: none;
    padding: 0;
    margin: 0;
}

.document-filter.show[b-ewpotb0rxk] {
    max-height: 200px;
    opacity: 1;
    pointer-events: auto;
}

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

.work-in-progress[b-ewpotb0rxk] {
    max-height: 120px;
}

.main-container[b-ewpotb0rxk] {
    display: flex;
    flex-direction: row;
}

.dossiers-panel[b-ewpotb0rxk] {
    width: 250px;
    border-right: 1px solid #ddd;
    padding: 1rem;
    background: #f9f9f9;
}

.dossiers-list[b-ewpotb0rxk] {
    list-style: none;
    padding: 0;
}

.dossier-item[b-ewpotb0rxk] {
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
}

.dossier-radio[b-ewpotb0rxk] {
    margin-right: 0.5rem;
}

.documents-panel[b-ewpotb0rxk] {
    flex: 1;
    margin: 1rem;
}

.filter-label[b-ewpotb0rxk] {
    margin-right: 0.5rem;
}

.filter-dropdown-select[b-ewpotb0rxk] {
    min-width: 200px;
}

.pagination-controls[b-ewpotb0rxk] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem;
    background: #f5f5f5;
    border-radius: 4px;
}

.pagination-buttons[b-ewpotb0rxk] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.pagination-page-info[b-ewpotb0rxk] {
    padding: 0 1rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.pagination-page-input[b-ewpotb0rxk] {
    width: 3rem;
    text-align: center;
    padding: 0.125rem 0.25rem;
    border: 1px solid #ccc;
    border-radius: 3px;
    font-size: 0.875rem;
}

.pagination-page-input:focus[b-ewpotb0rxk] {
    outline: none;
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

/* Remove spinner arrows from number input */
.pagination-page-input[b-ewpotb0rxk]::-webkit-inner-spin-button,
.pagination-page-input[b-ewpotb0rxk]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.pagination-page-input[type=number][b-ewpotb0rxk] {
    -moz-appearance: textfield;
}

.pagination-ok-button[b-ewpotb0rxk] {
    margin-left: 0.25rem;
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
    background-color: var(--color-accent-0, #3C82A4);
    color: white;
    border: none;
}

.pagination-ok-button:hover[b-ewpotb0rxk] {
    background-color: var(--color-accent-2, #29576f);
}

.pagination-ok-button:active[b-ewpotb0rxk] {
    background-color: var(--color-accent-2, #29576f);
}

.type-filter-container[b-ewpotb0rxk] {
    display: flex;
    flex-direction: column;
}

.type-filter-select[b-ewpotb0rxk] {
    margin-top: 4px;
    min-width: 120px;
}

.status-filter-container[b-ewpotb0rxk] {
    display: flex;
    flex-direction: column;
}

.status-filter-select[b-ewpotb0rxk] {
    margin-top: 4px;
    min-width: 150px;
}

.status-filter-select option em[b-ewpotb0rxk],
.type-filter-select option em[b-ewpotb0rxk] {
    font-style: italic;
    color: #666;
    font-size: 0.9em;
}

.action-button[b-ewpotb0rxk] {
    margin-left: 0.3rem;
}
/* _content/ThalabusWeb/Pages/Documents/DocumentTemplates.razor.rz.scp.css */
.skill-code-textarea[b-9dgsp4qyil],
.skill-code-textarea textarea[b-9dgsp4qyil],
.skill-code-textarea pre[b-9dgsp4qyil] {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    display: block;
    overflow-x: auto;
    white-space: pre-wrap; /* allow wrapping for preformatted text */
    word-break: break-word;
}

/* Ensure the textarea uses all available height when needed */
.skill-code-textarea textarea[b-9dgsp4qyil] {
    resize: vertical;
}
/* _content/ThalabusWeb/Pages/Documents/EnhancedDocument.razor.rz.scp.css */
.enhanced-document-page[b-uaz6eds1cn] {
    min-height: calc(100vh - 6rem);
    width: 100%;
    padding: 2rem clamp(1rem, 4vw, 4rem);
    background: #f4f6f8;
    box-sizing: border-box;
}

.enhanced-document-status[b-uaz6eds1cn],
.enhanced-document-header[b-uaz6eds1cn],
.enhanced-document-content[b-uaz6eds1cn] {
    margin-right: auto;
    margin-left: auto;
}

.enhanced-document-content[b-uaz6eds1cn]  .document-header {
    margin: 0 0 1.5rem;
    padding-bottom: 0.5rem;
    color: #172554;
    border-bottom: 2px solid #d9dee5;
    font-size: 1.25rem;
    font-weight: 700;
}

.enhanced-document-content[b-uaz6eds1cn]  [class^="text-"] {
    margin: 0;
}

.enhanced-document-status[b-uaz6eds1cn] {
    padding: 3rem;
    color: #4b5563;
    text-align: center;
}

.enhanced-document-error[b-uaz6eds1cn] {
    color: #b42318;
}

.enhanced-document-header[b-uaz6eds1cn] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.enhanced-document-title-row[b-uaz6eds1cn] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    min-width: 0;
}

.enhanced-document-label-code[b-uaz6eds1cn] {
    margin: 0;
    padding: 0.35rem 0.55rem;
    color: #374151;
    background: #e5e7eb;
    border: 1px solid #cbd5e1;
    border-radius: 0.25rem;
    font-family: Consolas, "Courier New", monospace;
    font-size: 0.9rem;
    line-height: 1.2;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.enhanced-document-header h1[b-uaz6eds1cn] {
    flex: 1 1 auto;
    min-width: 0;
    width: 0;
    margin: 0;
    color: #1f2937;
    font-size: clamp(1.5rem, 3vw, 2rem);
    overflow-wrap: anywhere;
}

.enhanced-document-id[b-uaz6eds1cn] {
    margin-top: 0.35rem;
    color: #6b7280;
    font-size: 0.875rem;
}

.enhanced-document-content[b-uaz6eds1cn] {
    padding: clamp(1.5rem, 4vw, 4rem);
    color: #202124;
    background: #fff;
    border: 1px solid #d9dee5;
    border-radius: 0.35rem;
    box-shadow: 0 0.25rem 1rem rgba(31, 41, 55, 0.08);
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.05rem;
    line-height: 1.65;
    text-align: left;
    overflow-wrap: anywhere;
}

[b-uaz6eds1cn] .enhanced-document-content * {
    text-align: left !important;
}

[b-uaz6eds1cn] .enhanced-document-content h1,
[b-uaz6eds1cn] .enhanced-document-content h2,
[b-uaz6eds1cn] .enhanced-document-content h3,
[b-uaz6eds1cn] .enhanced-document-content h4 {
    margin-top: 1.75rem;
    color: #172554;
    line-height: 1.25;
}

[b-uaz6eds1cn] .enhanced-document-content h1:first-child,
[b-uaz6eds1cn] .enhanced-document-content h2:first-child,
[b-uaz6eds1cn] .enhanced-document-content h3:first-child {
    margin-top: 0;
}

[b-uaz6eds1cn] .enhanced-document-content p {
    margin: 0 0 1.5rem;
}

[b-uaz6eds1cn] .enhanced-document-content p > span {
    display: block;
}

[b-uaz6eds1cn] .enhanced-document-content img,
[b-uaz6eds1cn] .enhanced-document-content table {
    max-width: 100%;
}

[b-uaz6eds1cn] .enhanced-document-content img {
    height: auto;
}

[b-uaz6eds1cn] .enhanced-document-content table {
    border-collapse: collapse;
}

[b-uaz6eds1cn] .enhanced-document-content th,
[b-uaz6eds1cn] .enhanced-document-content td {
    padding: 0.5rem;
    border: 1px solid #cbd5e1;
}

[b-uaz6eds1cn] .enhanced-document-content pre {
    padding: 1rem;
    overflow-x: auto;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

@media (max-width: 640px) {
    .enhanced-document-header[b-uaz6eds1cn] {
        flex-direction: column;
    }
}
/* _content/ThalabusWeb/Pages/Documents/ScanConfigurations.razor.rz.scp.css */
.table-scan[b-aj7sg0yvra] {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
}

    .table-scan th[b-aj7sg0yvra], .table-scan td[b-aj7sg0yvra] {
        border: 1px solid #ddd;
        padding: 8px;
    }

    .table-scan th[b-aj7sg0yvra] {
        background-color: #f2f2f2;
        color: #333;
        text-align: left;
    }

    .table-scan tr:nth-child(even)[b-aj7sg0yvra] {
        background-color: #f9f9f9;
    }

    .table-scan tr:hover[b-aj7sg0yvra] {
        background-color: #f1f1f1;
    }

    .table-scan td[b-aj7sg0yvra] {
        color: #555;
    }
/* _content/ThalabusWeb/Pages/Documents/ScanManager.razor.rz.scp.css */
.error[b-j3zosvwkqp] {
    color: red;
}
/* _content/ThalabusWeb/Pages/Dossiers/Dossiers.razor.rz.scp.css */
/* _content/ThalabusWeb/Pages/Home.razor.rz.scp.css */
.welcome[b-pspon6cefa] {
    margin-top: 4rem;
    align-items: center;
    text-align: center;
    transition: margin-top 0.3s ease-in-out;
}

.welcome-spacer-top[b-pspon6cefa] {
    height: 16vh;
    transition: height 0.3s ease-in-out;
}

.welcome-spacer-small[b-pspon6cefa] {
    height: 1vh;
    transition: height 0.3s ease-in-out;
}

.welcome-spacer-carousel[b-pspon6cefa] {
    height: 4vh;
    transition: height 0.3s ease-in-out;
}

.start-message-text[b-pspon6cefa] {
    font-size: 1.5rem;
    font-weight: 400;
    transition: font-size 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

#start-message[b-pspon6cefa] {
    transition: opacity 0.5s ease-in-out;
}

#start-message.loading-state[b-pspon6cefa] {
    animation: fadeInOut-b-pspon6cefa 1s ease-in-out;
}

#start-message.ready-state[b-pspon6cefa] {
    animation: fadeIn-b-pspon6cefa 0.8s ease-in-out 0.3s both;
}

@keyframes fadeIn-b-pspon6cefa {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInOut-b-pspon6cefa {
    0% {
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    100% {
        opacity: 1;
    }
}

.loading-spinner-container-inline[b-pspon6cefa] {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 1.5rem;
    transition: opacity 0.3s ease-in-out;
}

.loading-spinner-container[b-pspon6cefa] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem 0;
    transition: opacity 0.3s ease-in-out;
}

.fade-in-translate-hidden[b-pspon6cefa] {
    opacity: 0;
}

.fade-in-translate[b-pspon6cefa] {
    opacity: 1;
    transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

.translate-up-hidden[b-pspon6cefa] {
    transform: translateY(0);
}

.translate-up[b-pspon6cefa] {
    transform: translateY(-32px);
    transition: transform 2s ease-in-out;
}

.carousel[b-pspon6cefa] {
    display: flex;
    justify-content: center;
    transition: opacity 0.3s ease-in-out;
    overflow: hidden;
}

.carousel-inner[b-pspon6cefa] {
    width: min-content;
    border-radius: 18px;
    box-shadow: 0px 0px 12px rgb(60, 130, 164, 0.4);
    overflow: hidden;
}

.carousel-item[b-pspon6cefa] {
    transition: opacity 0.3s ease-in-out;
}

.carousel-image[b-pspon6cefa] {
    max-height: 320px;
    border: 12px solid rgba(255, 255, 255, 0.8);
    border-radius: 18px;
    transition: max-height 0.3s ease-in-out, border 0.3s ease-in-out;
}

/* Reduce vertical spacing on screens with limited height (e.g., iPad landscape) */
@media (max-height: 850px) {
    .welcome[b-pspon6cefa] {
        margin-top: 1rem;
    }

    .welcome-spacer-top[b-pspon6cefa] {
        height: 2vh !important;
    }

    .welcome-spacer-small[b-pspon6cefa] {
        height: 0.25vh !important;
    }

    .welcome-spacer-carousel[b-pspon6cefa] {
        height: 0.5vh !important;
    }

    .start-message-text[b-pspon6cefa] {
        font-size: 1.2rem;
    }

    .carousel[b-pspon6cefa] {
        opacity: 0;
        display: none !important;
        pointer-events: none;
    }

    .carousel-image[b-pspon6cefa] {
        max-height: 200px;
        border: 8px solid rgba(255, 255, 255, 0.8);
    }
}
/* _content/ThalabusWeb/Pages/KnowledgeManagement/KnowledgeGraph.razor.rz.scp.css */
.main-kb-container[b-6z1jy2hx28] {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    padding-bottom: 6px;
    transition: opacity 0.5s ease, visibility 0.5s ease;
    opacity: 0;
    visibility: hidden;
}

.main-kb-container--source-visible[b-6z1jy2hx28] {
    margin-right: -1.5rem;
}

.kg-header-actions[b-6z1jy2hx28] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.25rem;
    width: 100%;
}

.new-entity-modal-content[b-6z1jy2hx28] {
    background-color: #f2f2f2 !important;
}

.new-entity-modal-header[b-6z1jy2hx28] {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.new-entity-modal-footer[b-6z1jy2hx28] {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.kg-controls-grid[b-6z1jy2hx28] {
    display: grid;
    grid-template-columns: auto repeat(3, minmax(10rem, auto));
    gap: 0.25rem 0.5rem;
    align-items: end;
    justify-content: end;
}

.kg-controls-grid > .dataset-graph-layout-actions[b-6z1jy2hx28] {
    grid-column: 2 / -1;
    justify-content: flex-end;
}

    .main-kb-container.show[b-6z1jy2hx28] {
        opacity: 1;
        visibility: visible;
    }

.view-layout-link[b-6z1jy2hx28] {
    align-self: flex-end;
    margin-right: 0.75rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--color-primary-4);
    cursor: pointer;
    font: inherit;
    font-size: 0.85rem;
    text-decoration: underline;
    transform: translateY(-4px);
}

.save-layout-label-hidden[b-6z1jy2hx28] {
    visibility: hidden;
}

.save-layout-status[b-6z1jy2hx28] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.save-layout-check[b-6z1jy2hx28] {
    font-size: 1rem;
    font-weight: 700;
}

.save-layout-confirmed[b-6z1jy2hx28] {
    position: relative;
    color: darkgreen;
    text-decoration: none;
}

.view-layout-link.save-layout-confirmed:hover[b-6z1jy2hx28],
.view-layout-link.save-layout-confirmed:focus-visible[b-6z1jy2hx28] {
    color: darkgreen;
    text-decoration: none;
}

.view-layout-link:hover[b-6z1jy2hx28],
.view-layout-link:focus-visible[b-6z1jy2hx28] {
    color: var(--color-primary-6);
}

.view-layout-confirmation[b-6z1jy2hx28] {
    display: inline-flex;
    align-items: center;
    align-self: flex-end;
    gap: 0.4rem;
    white-space: nowrap;
    transform: translateY(-4px);
}

.view-layout-confirmation .view-layout-link[b-6z1jy2hx28] {
    transform: none;
}

.view-layout-confirm[b-6z1jy2hx28] {
    margin-right: 0.25rem;
    color: darkred;
}

.view-layout-confirm:hover[b-6z1jy2hx28],
.view-layout-confirm:focus-visible[b-6z1jy2hx28] {
    color: #5f0000;
}

/* _content/ThalabusWeb/Pages/KnowledgeManagement/OntologyCategories.razor.rz.scp.css */
.settings-top-links[b-h1lmxijn0q] {
    margin-bottom: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.settings-top-links a[b-h1lmxijn0q] {
    color: #0066cc;
    text-decoration: none;
    font-size: 0.95rem;
}

.settings-top-links a:hover[b-h1lmxijn0q] {
    text-decoration: underline;
    color: #0052a3;
}

.settings-top-links button[b-h1lmxijn0q] {
    margin: 0;
}

.settings-container[b-h1lmxijn0q] {
    padding: 2rem;
    background-color: #f9f9f9;
    border-radius: 4px;
    border: 1px solid #ddd;
}

.settings-container h1[b-h1lmxijn0q] {
    margin-top: 0;
    margin-bottom: 1.5rem;
    font-size: 1.75rem;
    color: #333;
}

.settings-container h3[b-h1lmxijn0q] {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    font-size: 1.25rem;
    color: #333;
}

.settings-container p[b-h1lmxijn0q] {
    color: #666;
    font-size: 1rem;
    margin: 0.5rem 0;
}

.ontology-selector[b-h1lmxijn0q] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding: 1rem;
    background-color: #fff;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
}

.ontology-selector label[b-h1lmxijn0q] {
    font-weight: 600;
    color: #333;
    margin: 0;
}

.ontology-selector select[b-h1lmxijn0q] {
    padding: 0.5rem 0.75rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 1rem;
    min-width: 320px; /* increased for better usability */
    background-color: #fff;
    cursor: pointer;
}

.ontology-selector select:focus[b-h1lmxijn0q] {
    outline: none;
    border-color: #0066cc;
    box-shadow: 0 0 0 3px rgba(0, 102, 204, 0.1);
}

.categories-table-container[b-h1lmxijn0q] {
    margin-top: 2rem;
    overflow-x: auto; /* Allow horizontal scroll if needed */
}

.categories-table-container .table[b-h1lmxijn0q] {
    width: 100%;
    table-layout: fixed; /* Fixed layout for better control */
    border-collapse: collapse;
    background-color: #fff;
    border: 1px solid #ddd;
    font-size: 0.85rem; /* Smaller font for better space utilization */
}

.categories-table-container .table thead[b-h1lmxijn0q] {
    background-color: #f0f0f0;
    border-bottom: 2px solid #ccc;
}

/* Specific column widths for better space utilization */
/* Class column - compact */
.categories-table-container .table th:nth-child(1)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(1)[b-h1lmxijn0q] {
    width: 80px;
    min-width: 80px;
}

/* Name columns (English, German, French, Italian) - compact but readable */
.categories-table-container .table th:nth-child(2)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(2)[b-h1lmxijn0q],
.categories-table-container .table th:nth-child(3)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(3)[b-h1lmxijn0q],
.categories-table-container .table th:nth-child(4)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(4)[b-h1lmxijn0q],
.categories-table-container .table th:nth-child(5)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(5)[b-h1lmxijn0q] {
    width: 120px;
    min-width: 100px;
}

/* Description column - wider */
.categories-table-container .table th:nth-child(6)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(6)[b-h1lmxijn0q] {
    width: 200px;
    min-width: 150px;
}

/* LoV column - wider */
.categories-table-container .table th:nth-child(7)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(7)[b-h1lmxijn0q] {
    width: 180px;
    min-width: 140px;
}

/* Legal Source column (if shown) */
.categories-table-container .table th:nth-child(8)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(8)[b-h1lmxijn0q] {
    width: 150px;
    min-width: 120px;
}

/* Checkbox columns (UseAsDocumentLabel, Proposed) - compact */
.categories-table-container .table th:nth-child(9)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(9)[b-h1lmxijn0q],
.categories-table-container .table th:nth-child(10)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(10)[b-h1lmxijn0q] {
    width: 60px;
    min-width: 60px;
    text-align: center;
}

/* Colors column */
.categories-table-container .table th:nth-child(11)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(11)[b-h1lmxijn0q] {
    width: 180px;
    min-width: 160px;
}

/* Actions column */
.categories-table-container .table th:nth-child(12)[b-h1lmxijn0q],
.categories-table-container .table td:nth-child(12)[b-h1lmxijn0q] {
    width: 140px;
    min-width: 120px;
}

/* Text wrapping and overflow handling */
.categories-table-container .table th[b-h1lmxijn0q],
.categories-table-container .table td[b-h1lmxijn0q] {
    word-wrap: break-word;
    overflow-wrap: break-word;
    vertical-align: top;
}

/* Make multiline edit fields resizable both vertically and horizontally */
.categories-table-container textarea.form-control[b-h1lmxijn0q] {
    resize: both;
    width: 100%;
    max-width: 100%;
    overflow: auto;
    box-sizing: border-box;
    font-size: 0.85rem; /* Match table font size */
}

.categories-table-container input.form-control[b-h1lmxijn0q] {
    font-size: 0.85rem; /* Match table font size */
}

.categories-table-container .table th[b-h1lmxijn0q] {
    padding: 0.5rem; /* Reduced padding */
    text-align: left;
    font-weight: 600;
    color: #333;
    border-right: 1px solid #ddd;
}

.categories-table-container .table th:last-child[b-h1lmxijn0q] {
    border-right: none;
}

.categories-table-container .table td[b-h1lmxijn0q] {
    padding: 0.5rem; /* Reduced padding */
    border-right: 1px solid #ddd;
    color: #555;
    border-bottom: 1px solid #eee;
}

.categories-table-container .table td:last-child[b-h1lmxijn0q] {
    border-right: none;
}

.categories-table-container .table tbody tr:hover[b-h1lmxijn0q] {
    background-color: #f9f9f9;
}

.categories-table-container .btn[b-h1lmxijn0q] {
    padding: 0.375rem 0.75rem;
    font-size: 0.8rem; /* Smaller button font */
    margin-right: 0.25rem;
}

.categories-table-container .btn-sm[b-h1lmxijn0q] {
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem; /* Smaller button font */
}

/* Filter row styling */
.categories-table-container .table-filters th[b-h1lmxijn0q] {
    padding: 0.35rem;
    background-color: #fafafa;
}

.categories-table-container .table-filters .form-control[b-h1lmxijn0q],
.categories-table-container .table-filters .form-select[b-h1lmxijn0q] {
    font-size: 0.8rem;
    padding: 0.25rem 0.5rem;
    height: auto;
}

/* Header buttons styling */
.categories-table-container .table th button.btn-link[b-h1lmxijn0q] {
    font-size: 0.85rem;
    padding: 0;
    font-weight: 600;
    text-decoration: none;
}

.categories-table-container .table th button.btn-link:hover[b-h1lmxijn0q] {
    text-decoration: underline;
}

/* Sort indicator */
.categories-table-container .table th button span[b-h1lmxijn0q] {
    margin-left: 0.25rem;
    font-size: 0.75rem;
}

/* Color picker and preset styling in edit mode */
.categories-table-container .form-select-sm[b-h1lmxijn0q] {
    font-size: 0.8rem;
    padding: 0.25rem 0.5rem;
}

.categories-table-container .form-control-color[b-h1lmxijn0q] {
    width: 40px !important;
    height: 28px !important;
}

/* Checkbox styling */
.categories-table-container .form-check-input[b-h1lmxijn0q] {
    width: 1.1em;
    height: 1.1em;
}

/* Pre-wrap for description and LoV display */
.categories-table-container td > div[style*="white-space: pre-wrap"][b-h1lmxijn0q] {
    max-height: 150px;
    overflow-y: auto;
    font-size: 0.85rem;
    line-height: 1.4;
}

/* Compact color display */
.categories-table-container td div[style*="width:34px"][b-h1lmxijn0q] {
    font-size: 0.75rem;
}

/* _content/ThalabusWeb/Pages/KnowledgeManagement/OntologyLexicon.razor.rz.scp.css */
.settings-top-links[b-t582s6q1hz] {
    margin-bottom: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.settings-top-links a[b-t582s6q1hz] {
    color: #0066cc;
    text-decoration: none;
    font-size: 0.95rem;
}

.settings-top-links a:hover[b-t582s6q1hz] {
    text-decoration: underline;
    color: #0052a3;
}

.settings-top-links button[b-t582s6q1hz] {
    margin: 0;
}

.settings-container[b-t582s6q1hz] {
    padding: 2rem;
    background-color: #f9f9f9;
    border-radius: 4px;
    border: 1px solid #ddd;
}

.settings-container h1[b-t582s6q1hz] {
    margin-top: 0;
    margin-bottom: 1.5rem;
    font-size: 1.75rem;
    color: #333;
}

.settings-container h3[b-t582s6q1hz] {
    margin-top: 1.5rem;
    margin-bottom: 1rem;
    font-size: 1.25rem;
    color: #333;
}

.settings-container p[b-t582s6q1hz] {
    color: #666;
    font-size: 1rem;
    margin: 0.5rem 0;
}

.ontology-selector[b-t582s6q1hz] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
    padding: 1rem;
    background-color: #fff;
    border-radius: 4px;
    border: 1px solid #e0e0e0;
}

.ontology-selector label[b-t582s6q1hz] {
    font-weight: 600;
    color: #333;
    margin: 0;
}

.ontology-selector select[b-t582s6q1hz] {
    padding: 0.5rem 0.75rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 1rem;
    min-width: 320px;
    background-color: #fff;
    cursor: pointer;
}

.ontology-selector select:focus[b-t582s6q1hz] {
    outline: none;
    border-color: #0066cc;
    box-shadow: 0 0 0 3px rgba(0, 102, 204, 0.1);
}

.lexicon-table-container[b-t582s6q1hz] {
    margin-top: 2rem;
}

.lexicon-table-container .table[b-t582s6q1hz] {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
    background-color: #fff;
    border: 1px solid #ddd;
}

.lexicon-table-container .table thead[b-t582s6q1hz] {
    background-color: #f0f0f0;
    border-bottom: 2px solid #ccc;
}

.lexicon-table-container .table th[b-t582s6q1hz] {
    padding: 0.75rem;
    text-align: left;
    font-weight: 600;
    color: #333;
    border-right: 1px solid #ddd;
}

.lexicon-table-container .table th:last-child[b-t582s6q1hz] {
    border-right: none;
}

.lexicon-table-container .table td[b-t582s6q1hz] {
    padding: 0.75rem;
    border-right: 1px solid #ddd;
    color: #555;
    border-bottom: 1px solid #eee;
}

.lexicon-table-container .table td:last-child[b-t582s6q1hz] {
    border-right: none;
}

.lexicon-table-container .table tbody tr:hover[b-t582s6q1hz] {
    background-color: #f9f9f9;
}

.lexicon-table-container .btn[b-t582s6q1hz] {
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
    margin-right: 0.25rem;
}

.lexicon-table-container .btn-sm[b-t582s6q1hz] {
    padding: 0.25rem 0.5rem;
    font-size: 0.8125rem;
}

.lexicon-table-container textarea.form-control[b-t582s6q1hz] {
    resize: both;
    width: 100%;
    max-width: 100%;
    overflow: auto;
    box-sizing: border-box;
}

.lexicon-table-container .table th:nth-child(1)[b-t582s6q1hz],
.lexicon-table-container .table td:nth-child(1)[b-t582s6q1hz] {
    width: 15%;
}

.lexicon-table-container .table th:nth-child(2)[b-t582s6q1hz],
.lexicon-table-container .table td:nth-child(2)[b-t582s6q1hz] {
    width: 65%;
}

.lexicon-table-container .table th:nth-child(3)[b-t582s6q1hz],
.lexicon-table-container .table td:nth-child(3)[b-t582s6q1hz] {
    width: 20%;
}

/* _content/ThalabusWeb/Pages/Sessions/ContainerLogs.razor.rz.scp.css */
@charset "utf-8";

.table-compact[b-7qq338eet1] {
    font-family: "Courier New", Courier, monospace;
    font-size: 11px;
    line-height: 1.0;
    /* Use fixed table layout so column widths are respected and the message column can take remaining space */
    table-layout: fixed;
}

    .table-compact th[b-7qq338eet1], .table-compact td[b-7qq338eet1] {
        padding: 4px 4px;
        vertical-align: top; /* ensure cells start at the top so content can overlap buttons */
    }

    .table-compact th[b-7qq338eet1] {
        background-color: #f8f9fa;
        font-weight: bold;
    }

    .table-compact tbody tr:nth-child(odd)[b-7qq338eet1] {
        background-color: #f2f2f2;
    }

    .table-compact tbody tr:hover[b-7qq338eet1] {
        background-color: #e9ecef;
    }

    /* Meta column (timestamp + details + log level combined) */
    .table-compact .meta-column[b-7qq338eet1], .table-compact th.meta-header[b-7qq338eet1] {
        width: 20%;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
        vertical-align: top;
    }

    .meta-cell[b-7qq338eet1] {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

    .meta-timestamp[b-7qq338eet1] {
        font-weight: bold;
        color: #333;
    }

    .meta-loglevel[b-7qq338eet1] {
        font-weight: bold;
        margin-top: 2px;
    }

    /* Details styling inside meta cell */
    .meta-cell p[b-7qq338eet1] {
        margin: 2px 0;
        padding: 0;
        font-size: 11px;
        color: #444;
        line-height: 1.1;
    }

    .meta-cell .detail-goal[b-7qq338eet1] {
        font-weight: bold;
        color: #222;
    }

    .meta-cell .detail-module[b-7qq338eet1],
    .meta-cell .detail-class[b-7qq338eet1],
    .meta-cell .detail-func[b-7qq338eet1] {
        color: #666;
        font-style: italic;
    }

    /* Give message column more space now that several columns merged and loglevel shrunk */
    .table-compact th.message-header[b-7qq338eet1], .table-compact td.message-column[b-7qq338eet1] {
        width: auto;
        max-width: none;
    }

    .table-compact .message-column[b-7qq338eet1] {
        /* Let message column take remaining space; keep wrapping and scrolling for code blocks */
        /* Use large percentage to ensure it gets maximum available width */
        width: 70%;
        max-width: none;
        word-wrap: break-word;
        white-space: normal;
        position: relative;
        padding-top: 4px;
    }

        .table-compact .message-column code[b-7qq338eet1] {
            display: block;
            max-width: 100%;
            white-space: break-spaces;
            margin-top: 0; /* remove default top margin */
        }

        .table-compact .message-column pre[b-7qq338eet1] {
            margin-top: 0; /* remove default top margin so text starts near the top */
        }

/* Show More / Show Less button: rightmost and on top */
.show-all-button[b-7qq338eet1] {
    position: absolute;
    top: 1px;
    right: 6px;
    z-index: 7;
    white-space: nowrap;
    width: 80px;
    box-sizing: border-box;
    padding: 1px 6px;
    text-align: center;
    /* subtle border and flat look */
    border: 1px solid rgba(0, 0, 0, 0.12);
    background-color: #b4ce74;
    box-shadow: none;
    border-radius: 3px;
}

/* Download button: stacked below the show-all button (right-aligned) */
.download-button[b-7qq338eet1] {
    position: absolute;
    top: 17px;
    right: 6px;
    z-index: 6;
    white-space: nowrap;
    width: 80px;
    box-sizing: border-box;
    padding: 1px 6px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.12);
    box-shadow: none;
    border-radius: 3px;
}

/* Toggle fragments button */
.toggle-fragments-button[b-7qq338eet1] {
    display: inline-block;
    white-space: nowrap;
    padding: 1px 6px;
    text-align: center;
    border: 1px solid rgba(0, 0, 0, 0.12);
    background-color: #b4ce74;
    box-shadow: none;
    border-radius: 3px;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    cursor: pointer;
    margin: 0;
}

.toggle-fragments-button:hover[b-7qq338eet1] {
    background-color: #a8c05f;
}

/* Fragment container with smooth visibility transition */
.fragments-container[b-7qq338eet1] {
    max-height: 1000px;
    opacity: 1;
    overflow: hidden;
    transition: max-height 0.4s ease, opacity 0.4s ease, margin-top 0.4s ease;
    margin-top: 8px;
}

.fragments-container.hidden[b-7qq338eet1] {
    max-height: 0;
    opacity: 0;
    margin-top: 0;
    transition: max-height 0.4s ease, opacity 0.4s ease, margin-top 0.4s ease;
}

/* Individual fragment styling */
.fragment-container[b-7qq338eet1] {
    margin-bottom: 12px;
}

/* Ensure code and pre blocks inside message column can scroll horizontally without affecting layout */
.table-compact .message-column pre[b-7qq338eet1],
.table-compact .message-column code[b-7qq338eet1],
.table-compact .message-column .message-array[b-7qq338eet1],
.table-compact .message-column > div[b-7qq338eet1] {
    overflow-x: auto;
}

/* Small screens: keep same stacking but adjust spacing */
@media (max-width: 640px) {
    .show-all-button[b-7qq338eet1] {
        right: 6px;
        top: 1px;
    }

    .download-button[b-7qq338eet1] {
        right: 6px;
        top: 22px; /* same vertical spacing */
    }

    /* On small screens relax fixed layout to allow better wrapping */
    .table-compact[b-7qq338eet1] {
        table-layout: auto;
    }

        .table-compact th:nth-child(-n+4)[b-7qq338eet1], .table-compact td:nth-child(-n+4)[b-7qq338eet1] {
            max-width: none;
            width: auto;
        }

        .table-compact .message-column[b-7qq338eet1] {
            width: auto;
            max-width: none;
        }
}

.json-llm-in[b-7qq338eet1] {
    color: black;
    background-color: #ff90ff;
}

.json-llm-out[b-7qq338eet1] {
    color: black;
    background-color: #9090ff;
}


/* Message array (OpenAI message table) styles */
.message-array[b-7qq338eet1] {
    margin: 8px 0;
    max-width: 100%;
    width: 100%;
    overflow-x: auto;
}

.message-table[b-7qq338eet1] {
    font-family: "Courier New", Courier, monospace;
    font-size: 11px;
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 0;
}

    .message-table th[b-7qq338eet1], .message-table td[b-7qq338eet1] {
        padding: 4px 8px;
        vertical-align: top;
    }

    .message-table th[b-7qq338eet1] {
        background-color: #f8f9fa;
        font-weight: bold;
    }

    .message-table tbody tr:nth-child(odd)[b-7qq338eet1] {
        background-color: #f2f2f2;
    }

    .message-table tbody tr:hover[b-7qq338eet1] {
        background-color: #e9ecef;
    }

.internal-thought[b-7qq338eet1] {
    color: gray;
    /* Allow wrapping while preserving line breaks */
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.internal-thought-label[b-7qq338eet1] {
    color: gray;
    font-weight: bold;
    text-decoration: underline;
}

.stats-label[b-7qq338eet1] {
    color: gray;
    font-weight: bold;
    text-decoration: underline;
}

.tokens-stats[b-7qq338eet1] {
    color: darkslateblue;
}

.tokens-stats[b-7qq338eet1],
.tokens-stats + p[b-7qq338eet1] {
    margin: 0;
    padding: 0;
}

.fragment-text[b-7qq338eet1] {
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 90%;
    line-height: 1.5;
    color: #333333; /* dark gray, literary tone */
    font-style: italic;
    margin: 8px 20px; /* added horizontal margins */
    padding: 10px 14px;
    border-left: 4px solid #dcdcdc; /* subtle quotation bar */
    background-color: transparent;
    white-space: pre-line; /* collapse multiple empty lines while preserving line breaks */
    quotes: "\201C" "\201D" "\2018" "\2019"; /* curly quotes */
    position: relative;
    max-height: 300px; /* limit vertical space */
    overflow-y: auto; /* enable vertical scrolling */
}

.fragment-text[b-7qq338eet1]::before {
    content: open-quote;
    font-size: 2.2em;
    line-height: 0.6;
    color: #666666;
    vertical-align: top;
    margin-right: 6px;
    position: absolute;
    left: 6px;
    top: 6px;
}

.fragment-label[b-7qq338eet1] {
    color: gray;
    font-weight: bold;
    text-decoration: underline;
}

.fragment-text[b-7qq338eet1] {
    padding-left: 34px; /* leave room for the decorative quote */
}

.json-fix-note-label[b-7qq338eet1] {
    margin: 8px 0;
    padding: 8px 12px;
    background-color: #fff3cd;
    border-left: 4px solid #ff8c00;
    color: #333;
    font-weight: bold;
    font-size: 12px;
}

.json-fix-note[b-7qq338eet1] {
    margin: 8px 0;
    padding: 8px 12px;
    background-color: #fff3cd;
    border-left: 4px solid #ff8c00;
    color: #333;
    font-weight: bold;
    font-size: 12px;
}

.json-fix-note + pre[b-7qq338eet1] {
    background-color: #2b2b2b;
    color: #ff8c00;
    border-left: 4px solid #ff8c00;
    padding: 8px 12px;
    overflow-x: auto;
    margin-top: 4px;
}

.json-fix-note + pre code[b-7qq338eet1] {
    color: #ff8c00;
    font-family: "Courier New", Courier, monospace;
    font-size: 11px;
}
/* _content/ThalabusWeb/Pages/Sessions/NewSession.razor.rz.scp.css */
.newsession-message[b-ycnnyqvr6c] {
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}
/* _content/ThalabusWeb/Pages/Sessions/Session.razor.rz.scp.css */
.main-session-div[b-oz8og0gan4] {
    font-family: 'Roboto', 'Open Sans', sans-serif;
    transition: padding 0.3s ease-in-out; /* Add transition for padding */
    min-height: calc(100vh - var(--top-offset));
}

.main-session-with-right-panel[b-oz8og0gan4] {
    display: flex;
    flex-direction: row;
    height: 100%;
    overflow: hidden;
}

    .main-session-with-right-panel > .main-chat-container-div[b-oz8og0gan4] {
        flex: 1 1 0;
        min-width: 0;
    }

.main-session-div-enlarged[b-oz8og0gan4] {
    padding: 0rem 3rem 0rem 3rem !important;
}

/* When right panel is visible in enlarged mode, extend past both main-session-div padding (3rem) and article padding (1.5rem) on both sides */
.main-session-div-enlarged .main-session-with-right-panel:has(.chat-right-panel--visible)[b-oz8og0gan4] {
    margin-right: -4.5rem;
    margin-left: -4rem;
}

@media (max-width: 849.98px) {
    .main-session-div[b-oz8og0gan4] {
        padding: 0rem 0rem 0rem 60px !important;
    }
    .main-session-with-right-panel[b-oz8og0gan4] {
        margin-right: 0;
    }
}

@media (min-width: 850px) and (max-width: 1249.98px) {
    .main-session-div[b-oz8og0gan4] {
        padding: 0rem 6rem 0rem 60px;
    }
    .main-session-with-right-panel[b-oz8og0gan4] {
        margin-right: -6rem;
    }
    .main-session-with-right-panel > .main-chat-container-div[b-oz8og0gan4] {
        padding-right: 6rem;
    }
    .main-session-with-right-panel:has(.chat-right-panel--visible)[b-oz8og0gan4] {
        margin-right: 0;
        margin-left: -6rem;
    }
    .main-session-with-right-panel:has(.chat-right-panel--visible) > .main-chat-container-div[b-oz8og0gan4] {
        padding-right: 0;
        padding-left: 0;
    }
}

@media (min-width: 1250px) {
    .main-session-div[b-oz8og0gan4] {
        padding: 0rem 12rem 0rem 190px;
    }
    .main-session-with-right-panel[b-oz8og0gan4] {
        margin-right: -12rem;
    }
    .main-session-with-right-panel > .main-chat-container-div[b-oz8og0gan4] {
        padding-right: 12rem;
    }
    .main-session-with-right-panel:has(.chat-right-panel--visible)[b-oz8og0gan4] {
        margin-right: 0;
        margin-left: -12rem;
    }
    .main-session-with-right-panel:has(.chat-right-panel--visible) > .main-chat-container-div[b-oz8og0gan4] {
        padding-right: 0;
        padding-left: 0;
    }
}

/* Chatbot mode: definite height so the flex layout pins the prompt at the bottom */
.main-session-div.chatbot-mode[b-oz8og0gan4] {
    height: 100%;
    min-height: unset;
}

/* Full-width layout for SearchTable mode - keep left padding for sidebar, remove right padding */
.main-session-div.search-table-mode[b-oz8og0gan4] {
    padding-right: 0rem !important;
    height: 100%;
    min-height: unset;
}

/* Full-width layout for Documents mode */
.main-session-div.documents-mode[b-oz8og0gan4] {
    padding: 0rem 2rem 0rem 2rem !important;
}

.top-gradient[b-oz8og0gan4], .bottom-gradient[b-oz8og0gan4] {
    position: fixed;
    left: 0;
    right: 0;
    height: 20px;
    z-index: 1;
}

.top-gradient[b-oz8og0gan4] {
    top: 60px;
    background: linear-gradient(to bottom, var(--color-primary-0), transparent);
}

/*.bottom-gradient {
    bottom: 108px;
    background: linear-gradient(to top, var(--color-primary-0), transparent);
}*/

.skill-name[b-oz8og0gan4] {
    color: var(--color-primary-4);
    font-size: 1.5rem;
}

.flex-container[b-oz8og0gan4] {
    display: flex;
    justify-content: space-between;
}

.flex-item-left[b-oz8og0gan4] {
    display: block;
    text-align: left;
}

.flex-item-right[b-oz8og0gan4] {
    display: block;
    text-align: right;
}

.horizontal-container[b-oz8og0gan4] {
    display: flex;
}

.float-top-right[b-oz8og0gan4] {
    position: fixed;
    top: 60px;
    right: 0;
    max-width: 75%;
    z-index: 10;
}
/* _content/ThalabusWeb/Pages/Sessions/Sessions.razor.rz.scp.css */
.newsession-message[b-8mif0u051c] {
    margin-top: 20px;
    margin-bottom: 20px;
    text-align: center;
}
/* _content/ThalabusWeb/Pages/Sessions/SessionTesting.razor.rz.scp.css */
.error[b-sp4odpyosj] {
    color: red;
}

.table[b-sp4odpyosj] {
    border: thin #ccc;
    border-collapse: collapse; /* Ensures that the borders of the table and cells are combined */
}

    .table a[b-sp4odpyosj] {
        background-color: var(--color-primary-0);
    }

    .table th[b-sp4odpyosj],
    .table td[b-sp4odpyosj] {
        background-color: var(--color-primary-0);
        border: 1px solid #ccc; /* Adds borders to the table cells */
        padding: 8px; /* Optional: Adds some padding to the cells */
    }

.table code[b-sp4odpyosj] {
    background-color: lightblue;
    color: black;
}

.table .code-cell[b-sp4odpyosj] {
    background-color: lightblue;
    height: 100%;
    border-radius: 4px;
    max-width: 400px;
    overflow-x: auto;
    display: block;
}

.table .test-good[b-sp4odpyosj] {
    text-align: center;
    background-color: lawngreen;
    color: black;
}

.table .test-bad[b-sp4odpyosj] {
    text-align: center;
    background-color: darkred;
    color: white;
}
/* _content/ThalabusWeb/Pages/SettingsPages/Settings.razor.rz.scp.css */
.dark-red-button[b-8z2tjdyvhy] {
    background-color: darkred;
    color: white;
}

.dark-green-button[b-8z2tjdyvhy] {
    background-color: darkgreen;
    color: white;
}

.grid-container[b-8z2tjdyvhy] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1rem;
    align-items: center;
}

.consolidation-status-box[b-8z2tjdyvhy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    max-height: 0;
    margin: 0;
    padding: 0 0.625rem;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-0.25rem);
    transition: max-height 220ms ease, margin 220ms ease, padding 220ms ease, opacity 180ms ease, transform 220ms ease;
}

.consolidation-status-box.is-visible[b-8z2tjdyvhy] {
    max-height: 3rem;
    margin-bottom: 0.25rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    opacity: 1;
    transform: translateY(0);
}

.consolidation-status-icon[b-8z2tjdyvhy] {
    color: inherit;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsCache.razor.rz.scp.css */
a.button[b-0jmrh829n1],
button.button[b-0jmrh829n1] {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font: inherit;
    text-decoration: underline;
    cursor: pointer;
    border-radius: 0;
    transition: color 0.2s;
    color: var(--color-primary-4);
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsHints.razor.rz.scp.css */
.settings-hints-table[b-mjy0icx180] {
    table-layout: fixed;
    width: 100%;
}

.settings-hints-table thead th[b-mjy0icx180] {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.settings-hints-table tbody td[b-mjy0icx180] {
    word-wrap: break-word;
    overflow-wrap: break-word;
    vertical-align: top;
}

.settings-hints-table.display-table th:nth-child(1)[b-mjy0icx180],
.settings-hints-table.display-table td:nth-child(1)[b-mjy0icx180] {
    width: 25%;
}

.settings-hints-table.display-table th:nth-child(2)[b-mjy0icx180],
.settings-hints-table.display-table td:nth-child(2)[b-mjy0icx180] {
    width: 55%;
}

.settings-hints-table.display-table th:nth-child(3)[b-mjy0icx180],
.settings-hints-table.display-table td:nth-child(3)[b-mjy0icx180] {
    width: 15%;
}

.settings-hints-table.display-table th:nth-child(4)[b-mjy0icx180],
.settings-hints-table.display-table td:nth-child(4)[b-mjy0icx180] {
    width: 5%;
}

.settings-hints-table.editing-table th:nth-child(1)[b-mjy0icx180],
.settings-hints-table.editing-table td:nth-child(1)[b-mjy0icx180] {
    width: 25%;
}

.settings-hints-table.editing-table th:nth-child(2)[b-mjy0icx180],
.settings-hints-table.editing-table td:nth-child(2)[b-mjy0icx180] {
    width: 65%;
}

.settings-hints-table.editing-table th:nth-child(3)[b-mjy0icx180],
.settings-hints-table.editing-table td:nth-child(3)[b-mjy0icx180] {
    width: 10%;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsKb.razor.rz.scp.css */
.error[b-5th9px7pi1] {
    background-color: #ff0000;
    border: 1px solid #ccc;
    padding: 15px;
    margin-bottom: 15px;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsLlm1.razor.rz.scp.css */
.model-selection[b-sq4yrdk8yh] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.model-selection-controls[b-sq4yrdk8yh] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dropdown-arrow[b-sq4yrdk8yh] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="none" stroke="currentColor" stroke-width=".5" d="M2 5L0 3h4z"/></svg>') no-repeat;
    background-position: calc(100% - 15px) center;
    background-size: 12.5px;
    padding-right: 25px;
    line-height: 1.5;
}

.form-group-inline[b-sq4yrdk8yh] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.form-group-column[b-sq4yrdk8yh] {
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 10px;
}

    .form-group-column.small[b-sq4yrdk8yh] {
        grid-template-columns: repeat(6, 1fr);
    }

    .form-group-column > div[b-sq4yrdk8yh] {
        display: flex;
        flex-direction: column;
        grid-column: span 6;
    }

    .form-group-column label[b-sq4yrdk8yh] {
        margin-top: 1rem;
    }

    .form-group-column input[b-sq4yrdk8yh] {
        width: 100%;
        font-size: 0.875em;
    }

.form-group-checkboxes[b-sq4yrdk8yh] {
    align-self: center;
    gap: 10px;
}

    .form-group-checkboxes div[b-sq4yrdk8yh] {
        display: flex;
        align-items: start;
        gap: 10px;
    }

        .form-group-checkboxes div label[b-sq4yrdk8yh] {
            margin: 0;
        }

.form-control[b-sq4yrdk8yh] {
    width: 420px;
    font-size: 0.875em;
}

.read-only[b-sq4yrdk8yh] {
    width: 100%;
    font-size: 0.875em;
    padding: 0.4rem;
    border: thin solid #ccc;
    border-radius: 6px;
}

.custom-textarea[b-sq4yrdk8yh] {
    background-color: #FCFCFC;
}

    .custom-textarea:focus[b-sq4yrdk8yh] {
        background-color: white;
    }

/* Test output display */
.test-output-container[b-sq4yrdk8yh] {
    flex: 1;
    padding: 0.4rem;
    background-color: #FCFCFC;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 0.875em;
    white-space: pre-wrap;
    word-break: break-word;
    overflow-wrap: break-word;
    max-height: 150px;
    overflow-y: auto;
    min-width: 200px;
}

/* Button group with output */
.button-output-group[b-sq4yrdk8yh] {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    width: 100%;
}

/* Small form controls */
.form-control-small[b-sq4yrdk8yh] {
    font-size: 0.875em;
    width: 48px;
}

/* Small input numbers */
.input-number-small[b-sq4yrdk8yh] {
    font-size: 0.875em;
    width: 48px;
}

/* Form control input sizing */
[b-sq4yrdk8yh] .form-control input,
[b-sq4yrdk8yh] .form-control select {
    font-size: 0.875em;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsLlm2.razor.rz.scp.css */
.model-selection[b-rafub75p00] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.model-selection-controls[b-rafub75p00] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dropdown-arrow[b-rafub75p00] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="none" stroke="currentColor" stroke-width=".5" d="M2 5L0 3h4z"/></svg>') no-repeat;
    background-position: calc(100% - 15px) center;
    background-size: 12.5px;
    padding-right: 25px;
    line-height: 1.5;
}

.form-group-inline[b-rafub75p00] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.form-group-column[b-rafub75p00] {
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 10px;
}

    .form-group-column > div[b-rafub75p00] {
        display: flex;
        flex-direction: column;
    }

    .form-group-column input[b-rafub75p00] {
        width: 100%;
        font-size: 0.875em;
    }

.form-control[b-rafub75p00] {
    width: 420px;
    font-size: 0.875em;
}

.custom-textarea[b-rafub75p00] {
    background-color: #FCFCFC;
}

    .custom-textarea:focus[b-rafub75p00] {
        background-color: white;
    }
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsLlm3.razor.rz.scp.css */
.dropdown-arrow[b-bfxktn2x77] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="none" stroke="currentColor" stroke-width=".5" d="M2 5L0 3h4z"/></svg>') no-repeat;
    background-position: calc(100% - 15px) center;
    background-size: 12.5px;
    padding-right: 25px;
    line-height: 1.5;
}

.form-group-inline[b-bfxktn2x77] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.form-group-column[b-bfxktn2x77] {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 10px;
}

    .form-group-column > div[b-bfxktn2x77] {
        display: flex;
        flex-direction: column;
    }

    .form-group-column input[b-bfxktn2x77] {
        width: 100%;
        font-size: 0.875em;
    }

.form-control[b-bfxktn2x77] {
    width: 420px;
    font-size: 0.875em;
}

.custom-textarea[b-bfxktn2x77] {
    background-color: #FCFCFC;
}

    .custom-textarea:focus[b-bfxktn2x77] {
        background-color: white;
    }
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsLlm4.razor.rz.scp.css */
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsLlmSkills.razor.rz.scp.css */
.skillset-block[b-59jchx8x0d] {
    text-align: left;
    margin-top: 48px;
    text-decoration: underline;
}

.disabled-select[b-59jchx8x0d] {
    background-color: #e9ecef;
    color: #6c757d;
    opacity: 0.7;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsOntologySourcesConfiguration.razor.rz.scp.css */
.ontology-sources-title[b-70ufdia97z] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.ontology-sources-todo[b-70ufdia97z] {
    min-height: 12rem;
}

.package-selection-tab-header[b-70ufdia97z] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--tbs-gap-md);
    flex-wrap: wrap;
}

.ontology-sources-todo .nav-tabs[b-70ufdia97z] {
    margin-left: -0.25rem;
    border-bottom-color: var(--tbs-border-color);
    flex: 1 1 auto;
    margin-bottom: 0;
}

.ontology-sources-todo .nav-link[b-70ufdia97z] {
    color: var(--tbs-text-muted);
    border-color: transparent;
    font-size: var(--tbs-text-sm);
    font-weight: 600;
}

.ontology-sources-todo .nav-link.active[b-70ufdia97z] {
    color: var(--bs-primary);
    background-color: transparent;
    border-color: var(--tbs-border-color) var(--tbs-border-color) var(--tbs-panel-bg);
}

.package-selection-actions[b-70ufdia97z] {
    flex: 0 0 auto;
    margin-left: auto;
    margin-bottom: 0.35rem;
}

.package-selection-auto-expand[b-70ufdia97z] {
    display: inline-flex;
    margin-right: 0.75rem;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsPods.razor.rz.scp.css */
.available-pods-style[b-r0ajal7o5m] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsRolesManagement.razor.rz.scp.css */
/* Make disabled checkboxes more visible */
.checkbox-disabled-visible[b-n2n78l8ygz] {
    opacity: 1 !important;
    filter: grayscale(0%) !important;
    border: 2px solid #888 !important;
    background-color: #f5f5f5 !important;
    box-shadow: 0 0 2px #888;
    cursor: not-allowed;
}
/* _content/ThalabusWeb/Pages/SettingsPages/SettingsSpecialModels.razor.rz.scp.css */
.spaced-label[b-06td3iz26l] {
    margin-top: 0.2rem;
}
/* _content/ThalabusWeb/Pages/Skills/SkillPage.razor.rz.scp.css */
.skill-status-box[b-f1av6potj7] {
    background-color: var(--color-primary-1);
    border: 1px solid var(--color-primary-3); /* Add a border */
    border-radius: 6px; /* Change to rounded edges */
    padding: 6px;
    margin: 0.5rem;
    margin-top: 6px;
    font-size: 0.8rem; /* Same font size as .skill-code */
}
/* _content/ThalabusWeb/Pages/Skills/Skillset.razor.rz.scp.css */
.skill-status-box[b-ury68d3gx6] {
    background-color: var(--color-primary-1);
    border: 1px solid var(--color-primary-3); /* Add a border */
    border-radius: 6px; /* Change to rounded edges */
    padding: 6px;
    margin: 0.5rem;
    margin-top: 6px;
    font-size: 0.8rem; /* Same font size as .skill-code */
}
/* _content/ThalabusWeb/Pages/Tools/0_Tools.razor.rz.scp.css */
.tools-container[b-bbwna2w2xp] {
    padding: 1.5rem;
}

.tools-header[b-bbwna2w2xp] {
    margin-bottom: 1.5rem;
}

    .tools-header h3[b-bbwna2w2xp] {
        margin: 0;
        color: #333;
    }

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

.tool-card[b-bbwna2w2xp] {
    position: relative;
    overflow: visible;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 1.5rem 1rem;
    border: 1px solid var(--color-primary-1, #ececec);
    border-radius: 8px;
    background-color: var(--color-primary-0, #fafaf8);
    cursor: pointer;
    text-align: center;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
    text-decoration: none;
    color: inherit;
}

    .tool-card:hover[b-bbwna2w2xp] {
        border-color: var(--color-accent-0, #3c82a4);
        box-shadow: 0 2px 8px rgba(60, 130, 164, 0.15);
        background-color: #fff;
    }

.tool-card--coming-soon[b-bbwna2w2xp] {
    cursor: default;
    filter: grayscale(1);
    opacity: 0.68;
}

    .tool-card--coming-soon:hover[b-bbwna2w2xp] {
        border-color: var(--color-primary-1, #ececec);
        box-shadow: none;
        background-color: var(--color-primary-0, #fafaf8);
    }

.tool-card-coming-soon[b-bbwna2w2xp] {
    position: absolute;
    top: 15px;
    right: -24px;
    padding: 0.5rem 0.85rem;
    transform: rotate(45deg);
    background-color: rgb(150, 150, 150);
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    color: #fff;
    font-size: 0.80rem;
    font-weight: normal;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.tool-card-icon[b-bbwna2w2xp] {
    font-size: 2rem;
    color: var(--color-accent-0, #3c82a4);
    line-height: 1;
}

.tool-card-title[b-bbwna2w2xp] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-primary-3, #4a4a4a);
    line-height: 1.3;
}
/* _content/ThalabusWeb/Pages/Tools/Translator.razor.rz.scp.css */
.translator-container[b-4lx20nvd6q] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 80px);
    padding: 1.25rem 1.5rem 1rem;
    gap: 1rem;
    box-sizing: border-box;
}

/* ── Header ── */
.translator-header[b-4lx20nvd6q] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
}

    .translator-header h2[b-4lx20nvd6q] {
        margin: 0;
        font-size: 1.4rem;
        display: flex;
        align-items: center;
        gap: 0.4rem;
        color: var(--color-primary-4, #1c1c1c);
    }

.translator-back-link[b-4lx20nvd6q] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.85rem;
    color: var(--color-accent-0, #3c82a4);
    text-decoration: none;
    white-space: nowrap;
}

    .translator-back-link:hover[b-4lx20nvd6q] {
        text-decoration: underline;
    }

/* ── Two-panel row ── */
.translator-panels[b-4lx20nvd6q] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.5rem;
    flex: 1;
    min-height: 0;
}

.translator-swap-container[b-4lx20nvd6q] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.translator-btn-swap[b-4lx20nvd6q] {
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* ── Individual panel ── */
.translator-panel[b-4lx20nvd6q] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--color-primary-1, #ececec);
    border-radius: 8px;
    background: var(--color-primary-0, #fafaf8);
    overflow: hidden;
}

.translator-panel-label[b-4lx20nvd6q] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-primary-2, #a0a0a0);
    padding: 0.6rem 0.85rem 0;
    flex-shrink: 0;
}

/* ── Source textarea ── */
.translator-textarea[b-4lx20nvd6q] {
    flex: 1;
    width: 100%;
    border: none;
    outline: none;
    resize: none;
    background: transparent;
    padding: 0.5rem 0.85rem 0.85rem;
    font-size: 0.95rem;
    color: var(--color-primary-4, #1c1c1c);
    font-family: inherit;
    line-height: 1.6;
    box-sizing: border-box;
}

    .translator-textarea[b-4lx20nvd6q]::placeholder {
        color: var(--color-primary-2, #a0a0a0);
    }

    .translator-textarea:disabled[b-4lx20nvd6q] {
        opacity: 0.6;
        cursor: not-allowed;
    }

/* ── Target panel toolbar ── */
.translator-panel-toolbar[b-4lx20nvd6q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0.75rem 0.4rem;
    min-height: 3.1rem;
    box-sizing: border-box;
    flex-shrink: 0;
    gap: 0.5rem;
    flex-wrap: nowrap;
    border-bottom: 1px solid var(--color-primary-1, #ececec);
}

.translator-toolbar-controls[b-4lx20nvd6q] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: nowrap;
}

.translator-language-select[b-4lx20nvd6q] {
    font-size: 0.875rem;
    padding: 0.3rem 0.5rem;
    border: 1px solid var(--color-primary-1, #ececec);
    border-radius: 5px;
    background: #fff;
    color: var(--color-primary-4, #1c1c1c);
    cursor: pointer;
    min-width: 140px;
}

    .translator-language-select:disabled[b-4lx20nvd6q] {
        opacity: 0.6;
        cursor: not-allowed;
    }

.translator-btn-translate[b-4lx20nvd6q] {
    font-size: 0.875rem;
    padding: 0.3rem 0.85rem;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.translator-btn-copy[b-4lx20nvd6q],
.translator-btn-clear[b-4lx20nvd6q] {
    font-size: 0.875rem;
    padding: 0.3rem 0.6rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* ── Output area ── */
.translator-output[b-4lx20nvd6q] {
    flex: 1;
    overflow-y: auto;
    padding: 0.75rem 0.85rem;
    font-size: 0.95rem;
    line-height: 1.6;
    color: var(--color-primary-4, #1c1c1c);
    white-space: pre-wrap;
    word-break: break-word;
}

.translator-output-placeholder[b-4lx20nvd6q] {
    color: var(--color-primary-2, #a0a0a0);
    font-style: italic;
}

.translator-error[b-4lx20nvd6q] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: #c0392b;
    font-size: 0.9rem;
}

/* ── Spinner for translate button ── */
@keyframes translator-spin-b-4lx20nvd6q {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.translator-spin[b-4lx20nvd6q] {
    display: inline-block;
    animation: translator-spin-b-4lx20nvd6q 0.8s linear infinite;
}

/* ── Lexicon footer ── */
.translator-footer[b-4lx20nvd6q] {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

/* ── Responsive: stack panels on narrow screens ── */
@media (max-width: 720px) {
    .translator-panels[b-4lx20nvd6q] {
        grid-template-columns: 1fr;
    }

    .translator-swap-container[b-4lx20nvd6q] {
        order: 2;
    }

    .translator-panel-target[b-4lx20nvd6q] {
        order: 3;
    }

    .translator-container[b-4lx20nvd6q] {
        height: auto;
    }

    .translator-panel[b-4lx20nvd6q] {
        min-height: 220px;
    }

    .translator-panel-toolbar[b-4lx20nvd6q],
    .translator-toolbar-controls[b-4lx20nvd6q] {
        flex-wrap: wrap;
    }
}
/* _content/ThalabusWeb/Pages/UserAdministration/UserSettings.razor.rz.scp.css */
.welcome[b-ruj82s7rcf] {
    margin-top: 4rem;
    align-items: center;
    text-align: center;
}

.center-container[b-ruj82s7rcf] {
    display: flex;
    justify-content: center;
    margin-top: 2rem;
    gap: 4rem;
}

.login-register-container[b-ruj82s7rcf] {
    flex: 1;
    background-color: var(--color-primary-1);
    max-width: 40%;
    width: min-content;
    height: 360px;
    border-radius: 18px;
    box-shadow: 0px 0px 12px rgb(60, 130, 164, 0.4);
    padding: 1.2rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.login-register-container-inner[b-ruj82s7rcf] {
    word-wrap: break-word;
    display: flex;
    flex-direction: column;
}

.login-register-form[b-ruj82s7rcf] {
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

    .login-register-form.show[b-ruj82s7rcf] {
        opacity: 1;
    }

.login-register-title[b-ruj82s7rcf] {
    text-align: center;
    font-weight: bold;
}

.login-register-link[b-ruj82s7rcf] {
    font-size: 2rem;
    font-weight: bold;
    text-decoration: underline;
    color: inherit;
}
/* _content/ThalabusWeb/Pages/Workspace/WorkItem.razor.rz.scp.css */
/* Styles moved from inline styles in WorkItem.razor */
.configuration-area.message-container.centered.show[b-5ds1f4i9j9] {
    max-height: 120px;
}

.workitem-actions[b-5ds1f4i9j9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

.section-top-margin[b-5ds1f4i9j9] {
    margin-top: 2rem;
}

.tab-content-scroll[b-5ds1f4i9j9] {
    margin-top: 1rem;
    max-height: 600px;
    overflow-y: auto;
}
/* _content/ThalabusWeb/Pages/Workspace/WorkItemAsylum.razor.rz.scp.css */
/* Simplified styles for WorkItemAsylum - two columns: left = TOC (smaller), right = content (flexible) */
.configuration-area.message-container.centered.show[b-iln785re1z] {
    max-height: 120px;
}

.workitem-actions[b-iln785re1z] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

/* Two-column container */
.reasoning-documents-container[b-iln785re1z] {
    margin-top: 2rem;
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    width: 100%;
    box-sizing: border-box;
}

/* Each child participates in the two-column layout. First child is the TOC and is narrower. */
.reasoning-documents-container .reasoning-grid-item[b-iln785re1z] {
    box-sizing: border-box;
}

.reasoning-documents-container .reasoning-grid-item:first-child[b-iln785re1z] {
    flex: 0 0 28%; /* TOC: smaller column */
    max-width: 20%;
    min-width: 100px;
    overflow: auto;
    height: auto; /* allow unlimited height */
}

.reasoning-documents-container .reasoning-grid-item:not(:first-child)[b-iln785re1z] {
    flex: 1 1 72%; /* main content */
    min-width: 0; /* allow proper shrinking on small screens */
}

/* Main division wrapper */
.reasoning-division-wrapper[b-iln785re1z] {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 0.5rem;
    overflow: auto;
    max-height: 80vh;
}

/* Keep content visible and simple */
.reasoning-division-content[b-iln785re1z] {
    width: 100%;
}

/* Responsive: stack on narrow viewports */
@media (max-width: 900px) {
    .reasoning-documents-container[b-iln785re1z] {
        flex-direction: column;
    }

    .reasoning-documents-container .reasoning-grid-item:first-child[b-iln785re1z] {
        flex: 0 0 auto;
        max-width: 100%;
        width: 100%;
        min-width: 0;
    }

    .reasoning-documents-container .reasoning-grid-item:not(:first-child)[b-iln785re1z] {
        width: 100%;
    }
}
/* _content/ThalabusWeb/RazorComponents/AgentComponents/PlanFragment.razor.rz.scp.css */
.form-group[b-ayjmppir18] {
    margin-bottom: 1rem;
}

.add-agent-margin[b-ayjmppir18] {
    margin-top: 1rem;
}

.agent-list[b-ayjmppir18] {
    list-style-type: none;
    padding: 0;
}

.agent-list li[b-ayjmppir18] {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
}

.agent-list li span[b-ayjmppir18] {
    flex-grow: 1;
}

.agent-list li button[b-ayjmppir18] {
    margin-left: 0.5rem;
}

.agent-cards[b-ayjmppir18] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between;
}

.agent-header[b-ayjmppir18] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.agent-index[b-ayjmppir18] {
    color: blue;
    font-weight: bold;
}

.agent-card[b-ayjmppir18] {
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 1rem;
    width: 300px;
    background-color: #f9f9f9;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.agent-card label[b-ayjmppir18] {
    font-weight: bold;
}

.agent-card .form-control[b-ayjmppir18] {
    margin-bottom: 0.5rem;
}

.agent-card .btn-danger[b-ayjmppir18] {
    align-self: flex-end;
}

.button-container[b-ayjmppir18] {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.5rem;
}

.selected-dependencies[b-ayjmppir18] {
    margin-left: 10px;
    font-size: 0.9em;
    color: #555;
}

.dropdown-menu[b-ayjmppir18] {
    position: absolute;
    background-color: white;
    border: 1px solid #ccc;
    padding: 10px;
    z-index: 1000;
}
/* _content/ThalabusWeb/RazorComponents/AgentComponents/PlanFragmentAgentCard.razor.rz.scp.css */
.form-group[b-rw8lidkhly] {
    margin-bottom: 1rem;
}

.add-agent-margin[b-rw8lidkhly] {
    margin-top: 1rem;
}

.agent-list[b-rw8lidkhly] {
    list-style-type: none;
    padding: 0;
}

    .agent-list li[b-rw8lidkhly] {
        display: flex;
        align-items: center;
        margin-bottom: 0.5rem;
    }

        .agent-list li span[b-rw8lidkhly] {
            flex-grow: 1;
        }

        .agent-list li button[b-rw8lidkhly] {
            margin-left: 0.5rem;
        }

.agent-cards[b-rw8lidkhly] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.agent-header[b-rw8lidkhly] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.agent-index[b-rw8lidkhly] {
    color: blue;
    font-weight: bold;
}

.agent-card[b-rw8lidkhly] {
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 1rem;
    min-width: 640px;
    max-width: 960px;
    background-color: #f9f9f9;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex-grow: 1; /* Allow the card to expand within its constraints */
}

    .agent-card .title-label[b-rw8lidkhly] {
        font-weight: bold;
    }

    .agent-card .form-control[b-rw8lidkhly] {
        margin-bottom: 0.5rem;
    }

    .agent-card .btn-danger[b-rw8lidkhly] {
        align-self: flex-end;
    }

.button-container[b-rw8lidkhly] {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.5rem;
}

.selected-dependencies[b-rw8lidkhly] {
    margin-left: 10px;
    font-size: 0.9em;
    color: #555;
}

.dropdown-menu[b-rw8lidkhly] {
    position: absolute;
    background-color: white;
    border: 1px solid #ccc;
    padding: 10px;
    z-index: 1000;
}
/* _content/ThalabusWeb/RazorComponents/AgentComponents/WorkflowStep.razor.rz.scp.css */
.readonly-gray[b-qiwsu1y3yg] {
    background-color: lightgray;
    color: #333; /* Darker text for readability */
    border: 1px solid #ccc; /* Optional: subtle border */
    cursor: not-allowed; /* Indicate the field is not editable */
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/Chat.razor.rz.scp.css */
.chat-main[b-n1n3ikto27] {
    position: relative;                 /* This is needed for the sticky positioning to work */
    overflow-x: hidden;
    overflow-y: auto;
}

.chat-welcome[b-n1n3ikto27] {
    font-size: large;
    padding: 12px;
    color: var(--color-accent-0);
    border-radius: 6px;
    margin-bottom: 12px;
}

.chat-lines[b-n1n3ikto27] {
}

.chat-line-container[b-n1n3ikto27] {
    display: flex;
    border-radius: 6px;
    padding: 6px;
    margin-bottom: 0;
    overflow: visible;
}

    .chat-line-container > *[b-n1n3ikto27] {
        display: inline-block;
        overflow: visible;
    }

.chat-widget-container[b-n1n3ikto27] {
    flex-grow: 0;
    flex-basis: 377px;
}

.chat-widget-container-dynamic[b-n1n3ikto27] {
    flex-grow: 0;
    flex-basis: 640px;
}

.bottom-controls[b-n1n3ikto27] {
}

.chat-feedback-sources-container[b-n1n3ikto27] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.chat-feedback-container[b-n1n3ikto27] {
    flex: 0 0 48px;                     /* Ensures the container is 48px wide and does not grow or shrink */
    margin-left: 16px;
    margin-top: 0;
    margin-bottom: 0;
    width: 48px;                        /* Redundant but ensures the width is set */
    transform: translateY(-1px);
}

.chat-sources-container[b-n1n3ikto27] {
    margin-left: 18px;
    flex: 1;
    margin-top: 0;
}

/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatBlazorComponentsContainer.razor.rz.scp.css */
.widget-group[b-atelwbwsfy] {
    width: 100%;
    display: flex;                                          /* Ensures divs are side-by-side */
    flex-direction: column;                                 /* Display items vertically by default */
    transition: ease-in flex-direction 1s;
}

/* .widget-container moved to global site.css for consistency */

@media (min-width: 849.98px) {
    .widget-group[b-atelwbwsfy] {
        flex-direction: row;                                /* Display items horizontally if the screen is big enough */
    }
}

.widget-group-has-multiple[b-atelwbwsfy] {
    overflow-x: auto;
}

.widget-grid[b-atelwbwsfy] {
    display: flex;
    flex-wrap: wrap;                                        /* Allow items to wrap to */
    gap: 24px;                                              /* Increase spacing between items */
    justify-content: space-evenly;                          /* Distribute items evenly */
    flex-direction: column;                                 /* Display items vertically */
    margin-bottom: 16px;                                    /* Add spacing below the grid */
}

.single-widget[b-atelwbwsfy] {
    display: flex;
    flex-direction: column;                                 /* Display items vertically */
    width: 40%;
    justify-content: center; 
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatDocumentsContainer.razor.rz.scp.css */
.documents-container[b-bd14bktl9g] {
    display: inline-flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.uploaded-documents[b-bd14bktl9g] {
    display: flex;
    align-items: center;
}

.uploaded-image[b-bd14bktl9g] {
    padding: 0;
    margin: 0;
    position: relative;
}

.uploaded-image>img[b-bd14bktl9g] {
    height: 4rem;
    width: 4rem;
    border-radius: 1rem;
    object-fit: cover;
}

.uploaded-image>.uploaded-image-icons[b-bd14bktl9g] {
    position: absolute;
    display: flex;
    top: 0.25rem;
    inset-inline-end: 0.25rem;
}

.uploaded-file-progress[b-bd14bktl9g] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 10;
    border-radius: 1rem;
    background-color: rgba(139, 139, 139, 0.5);
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
}

.uploaded-image>.uploaded-image-icons>button[b-bd14bktl9g] {
    height: 1.25rem;
    width: 1.25rem;
    border-radius: 10rem;
    cursor: pointer;
    background-color: white;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.uploaded-file[b-bd14bktl9g] {
    display: inline-flex;
    border-radius: 1rem;
    height: 4rem;
    position: relative;
}

.uploaded-file>.uploaded-file-logo[b-bd14bktl9g] {
    width: 3rem;
    background-color: #3e83a7;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
    border-radius: 1rem 0 0 1rem;
}

.uploaded-file>.uploaded-file-info[b-bd14bktl9g] {
    background-color: white;
    padding: 0 0.25rem;
    align-content: center;

}

.uploaded-file>.uploaded-file-info>div[b-bd14bktl9g] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

.uploaded-file>.uploaded-file-icons[b-bd14bktl9g] {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: white;
    width: 1.5rem;
    border-radius: 0 1rem 1rem 0;
}

.uploaded-file>.uploaded-file-icons>button[b-bd14bktl9g] {
    padding: 0;
    border: 0;
    background-color: transparent;
    cursor: pointer
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatLine.razor.rz.scp.css */
.buttons-top-right[b-3xnnozz9et] {
    position: absolute;
    top: 0rem;
    right: 0rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

.documents-container[b-3xnnozz9et] {
    display: inline-flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    max-width: 100%;
    width: max-content;
    margin-top: 6px;
    margin-bottom: 0.5rem;
}

.uploaded-documents[b-3xnnozz9et] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    width: max-content;
}

.uploaded-image[b-3xnnozz9et] {
    padding: 0;
    margin: 0;
    position: relative;
    flex-shrink: 0;
    width: 4rem;
}

    .uploaded-image > img[b-3xnnozz9et] {
        height: 4rem;
        width: 4rem;
        border-radius: 1rem;
        object-fit: cover;
    }

    .uploaded-image > .uploaded-image-icons[b-3xnnozz9et] {
        position: absolute;
        display: flex;
        top: 0.25rem;
        inset-inline-end: 0.25rem;
    }

.uploaded-file[b-3xnnozz9et] {
    display: inline-flex;
    border-radius: 1rem;
    height: 4rem;
    position: relative;
}

    .uploaded-file > .uploaded-file-logo[b-3xnnozz9et] {
        width: 3rem;
        background-color: #3e83a7;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: x-large;
        border-radius: 1rem 0 0 1rem;
    }

    .uploaded-file > .uploaded-file-info[b-3xnnozz9et] {
        background-color: white;
        padding: 0 0.25rem;
        align-content: center;
        border-radius: 0 1rem 1rem 0;
    }

        .uploaded-file > .uploaded-file-info > div[b-3xnnozz9et] {
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            max-width: 200px;
        }


.widget-expanded[b-3xnnozz9et] {
    font-size: 0.85em;
}

.button-expand[b-3xnnozz9et],
.button-contract[b-3xnnozz9et] {
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    background-color: var(--color-primary-0);
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease, transform 0.1s ease;
}

    .button-expand:hover[b-3xnnozz9et],
    .button-contract:hover[b-3xnnozz9et] {
        background-color: var(--color-primary-1);
        transform: scale(1.05);
    }

.chat-message-html[b-3xnnozz9et]  system_instructions {
    display: inline-block;
    background-color: #f5f5f5;
    color: #555555;
    font-family: 'Courier New', Courier, monospace;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 0.9em;
    border: 1px solid #e0e0e0;
}

    .button-expand:active[b-3xnnozz9et],
    .button-contract:active[b-3xnnozz9et] {
        transform: scale(0.95);
    }

.chat-line[b-3xnnozz9et] {
    display: flex;
    flex-direction: row;
    position: relative;
    flex-grow: 1;
    margin-top: 1em;
    margin-bottom: 0;
    animation: slideInFromBottom-b-3xnnozz9et 0.4s ease-out;
}

@keyframes slideInFromBottom-b-3xnnozz9et {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.chat-line-icon-and-text[b-3xnnozz9et] {
    display: flex;
    flex-direction: row;
    margin-left: 12px;
}

.chat-text-no-icon[b-3xnnozz9et] {
    padding-bottom: 0;
    margin-bottom: 0;
}

.chat-line-icon[b-3xnnozz9et] {
    font-size: 24px;
    color: var(--color-accent-0);
    transform: translateY(-5px);
}

.chat-line-icon-assistant[b-3xnnozz9et] {
    margin-left: 2px;
    margin-right: 8px;
}

.chat-line-icon-user[b-3xnnozz9et] {
    margin-left: 8px;
    margin-right: 2px;
}

.chat-user-container[b-3xnnozz9et] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: 100%;
}

.chat-text-user[b-3xnnozz9et] {
    padding-bottom: 12px;
}

.chat-user-container .chat-line[b-3xnnozz9et] {
    justify-content: flex-end;
    margin-left: auto;
}

.chat-user-container .chat-line-with-attachments[b-3xnnozz9et] {
    margin-top: 8px;
    padding-bottom: 0;
}

.chat-user-container .chat-line-icon-and-text[b-3xnnozz9et] {
    flex-direction: row-reverse;
    text-align: right;
}

    .chat-user-container .chat-line-icon-and-text > div[b-3xnnozz9et] {
        text-align: right;
    }

.chat-user-container .chat-line-icon-user[b-3xnnozz9et] {
    margin-left: 2px;
    margin-right: 8px;
}

.chat-text-assistant[b-3xnnozz9et] {
    padding-bottom: 0;
    margin-bottom: 0;
}

.chat-text-debug[b-3xnnozz9et] {
    font-size: 0.9em;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    overflow-x: auto;
}

.tool-minigui[b-3xnnozz9et] {
    text-align: left;
    margin-top: 1em;
    animation: expandIn-b-3xnnozz9et 0.3s ease-out;
}

@keyframes expandIn-b-3xnnozz9et {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.thinking-message[b-3xnnozz9et] {
    text-align: center;
    margin-bottom: 0.4rem;
}

.chat-message-html[b-3xnnozz9et] {
    animation: fadeInContent-b-3xnnozz9et 0.3s ease-in;
    max-width: 100%;
    min-width: 0;
}

    .chat-message-html[b-3xnnozz9et]  img {
        display: block;
        max-width: 100%;
        max-height: 40vh;
        width: auto;
        height: auto;
        object-fit: contain;
    }

    .chat-message-html .no-bottom-margin[b-3xnnozz9et]  p {
        margin-bottom: 0px;
    }

    @keyframes fadeInContent-b-3xnnozz9et {
        from {
            opacity: 0;
            transform: translateY(10px);
        }

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

    .chat-message-html[b-3xnnozz9et]  .doc-reference {
        cursor: pointer;
        color: var(--color-accent-0);
    }

    .chat-message-html[b-3xnnozz9et]  .url-reference {
        cursor: pointer;
        color: darkgreen;
    }

    .chat-message-html[b-3xnnozz9et]  .kb-reference {
        color: darkorange;
    }

    .chat-message-html[b-3xnnozz9et]  .doc-card-category-badge {
        cursor: default;
        margin: 0 0.2rem;
    }

    .chat-message-html[b-3xnnozz9et]  h1 {
        font-size: 1.4em;
        margin-block-start: 0.9em;
        margin-block-end: 0.5em;
        scroll-margin-top: 1rem;
        font-weight: 600;
    }

    .chat-message-html[b-3xnnozz9et]  h2 {
        font-size: 1.2em;
        margin-block-start: 0.8em;
        margin-block-end: 0.4em;
        scroll-margin-top: 1rem;
        font-weight: 600;
    }

    .chat-message-html[b-3xnnozz9et]  h3 {
        font-size: 1.1em;
        margin-block-start: 0.7em;
        margin-block-end: 0.3em;
        scroll-margin-top: 0.9rem;
        font-weight: 600;
    }

    .chat-message-html[b-3xnnozz9et]  h4,
    .chat-message-html[b-3xnnozz9et]  h5,
    .chat-message-html[b-3xnnozz9et]  h6 {
        font-size: 1em;
        margin-block-start: 0.6em;
        margin-block-end: 0.25em;
        scroll-margin-top: 0.8rem;
        font-weight: 600;
    }

    /* Ensure headers that are not the very first child get a bit more spacing above */
    .chat-message-html[b-3xnnozz9et]  h1:not(:first-child),
    .chat-message-html[b-3xnnozz9et]  h2:not(:first-child),
    .chat-message-html[b-3xnnozz9et]  h3:not(:first-child),
    .chat-message-html[b-3xnnozz9et]  h4:not(:first-child),
    .chat-message-html[b-3xnnozz9et]  h5:not(:first-child),
    .chat-message-html[b-3xnnozz9et]  h6:not(:first-child) {
        margin-block-start: 1em;
    }

[b-3xnnozz9et] .chat-table {
    margin-top: 1em;
    margin-bottom: 1.5em;
    border: medium solid var(--color-accent-1);
    border-collapse: collapse; /* Ensures borders are not doubled */
    background-color: var(--color-primary-1);
    width: 100%;
}

    [b-3xnnozz9et] .chat-table th {
        background-color: var(--color-primary-2);
        color: var(--color-primary-4);
    }

    [b-3xnnozz9et] .chat-table th,
    [b-3xnnozz9et] .chat-table td {
        border: thin solid var(--color-accent-1); /* Adds borders to table cells */
        padding: 0.5em; /* Adds some padding inside the cells */
        text-align: left; /* Aligns text to the left */
    }

[b-3xnnozz9et] .blockquote {
    padding: 1em;
    font-size: 1.0em;
    margin: 1em 0;
    border-left: 5px solid var(--color-accent-1);
    background-color: var(--color-primary-1);
    font-style: italic;
    color: #333;
}

    [b-3xnnozz9et] .blockquote footer {
        text-align: right;
        font-size: 0.8em;
        color: #333;
        margin-top: 0.5em;
    }

/* doc-embed variant: renders the source element as-is, without blockquote decoration */
[b-3xnnozz9et] .blockquote.doc-embed {
    font-style: normal;
    background-color: transparent;
    border-left: 3px solid var(--color-accent-1);
    padding: 0.5em 0.75em;
}

[b-3xnnozz9et] .blockquote.doc-embed-error::after {
    content: '⚠ Element could not be loaded';
    font-size: 0.85em;
    color: #999;
    font-style: italic;
}

/* Word wrap for query commands */
.query-wrapper[b-3xnnozz9et] {
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal;
}

/* Placeholder styling for in-progress content */
.chat-message-html[b-3xnnozz9et]  .assistant-placeholder {
    display: block;
    min-height: 2rem;
    padding: 1rem;
    margin: 0.5rem 0;
    background-color: #fff3e0;
    border-left: 4px solid #ff9800;
    border-radius: 4px;
    color: #666;
    font-style: italic;
    font-size: 0.95em;
    position: relative;
    transition: all 0.6s ease;
}

    .chat-message-html[b-3xnnozz9et]  .assistant-placeholder::before {
        content: "⏳ Generating content...";
        display: block;
        color: #ff6f00;
        font-weight: 600;
        margin-bottom: 0.5rem;
        font-style: normal;
        transition: opacity 0.6s ease;
    }

    .chat-message-html[b-3xnnozz9et]  .assistant-placeholder:empty::before {
        content: "⏳ Generating content...";
    }

    /* When filled: smooth transition to normal content appearance */
    .chat-message-html[b-3xnnozz9et]  .assistant-placeholder.assistant-placeholder-filled {
        background-color: transparent;
        border-left: none;
        color: inherit;
        font-style: normal;
        padding: 0;
        margin: 0;
    }

    .chat-message-html[b-3xnnozz9et]  .assistant-placeholder.assistant-placeholder-filled::before {
        display: none;
    }
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatLineFeedback.razor.rz.scp.css */
.chatline-feedback[b-y6regiqbqu] {
    display: flex;
    align-items: center;
    margin-top: 4px;
}

@keyframes revealText-b-y6regiqbqu {
    from {
        width: 0;
    }
    to {
        width: 100%;
    }
}

.accent-color[b-y6regiqbqu] {
    color: var(--color-accent-0);
}

.reveal-container[b-y6regiqbqu] {
    overflow: hidden;
    display: inline-block;
    white-space: nowrap;
}

.reveal-text[b-y6regiqbqu] {
    display: inline-block;
    animation: revealText-b-y6regiqbqu 2s ease-out forwards;
    white-space: nowrap;
    padding: 0rem 0.2rem 0rem 0.2rem;
}

button[b-y6regiqbqu] {
    border: none;
    background: none;
    cursor: pointer;
}

    button:disabled[b-y6regiqbqu] {
        cursor: not-allowed;
    }

.centered-button[b-y6regiqbqu] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: none;
    background: none;
    cursor: pointer;
}

.trainer-button[b-y6regiqbqu] {
    color: #444;
    font-weight: 700;
}

    .centered-button:disabled[b-y6regiqbqu] {
        cursor: not-allowed;
    }

.negative-feedback[b-y6regiqbqu] {
    display: none;
}

.popup.active[b-y6regiqbqu] {
    display: block;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border: 1px solid #ccc;
    padding: 20px;
    background-color: white;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.feedback-form[b-y6regiqbqu] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

    .feedback-form label[b-y6regiqbqu] {
        margin-bottom: 10px;
    }

    .feedback-form textarea[b-y6regiqbqu] {
        margin-bottom: 10px;
        width: 100%;
        max-width: 400px; /* Adjust max-width as needed */
    }

    .feedback-form button[b-y6regiqbqu] {
        align-self: center;
    }
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatLineFollowup.razor.rz.scp.css */
.arrow-bullets[b-t5j1il9ye3] {
    list-style-type: none;
    padding-left: 0;
}

    .arrow-bullets li[b-t5j1il9ye3]::before {
        content: "→"; /* Unicode arrow character */
        margin-right: 8px;
        margin-left: 44px;
        color: #000; /* Change color as needed */
    }
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatLineSource.razor.rz.scp.css */
.open-source-file[b-1ydb71svw0] {
    position: relative;
    z-index: 10;
    /* Exclude from mask by giving it opaque background matching card */
    background-color: #fbfaf8;
    padding-bottom: 0.5rem;
    margin: 0; /* remove extra paragraph-like spacing */
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

    .open-source-file[b-1ydb71svw0],
    .open-source-file a[b-1ydb71svw0] {
        font-family: Roboto, 'Open Sans', sans-serif;
        font-size: 0.95rem;
        font-weight: 500;
        line-height: 1.2;
        color: #0b63d6; /* match link color used site-wide */
        text-decoration: underline;
        font-style: normal;
    }

        .open-source-file a[b-1ydb71svw0] {
            background: transparent; /* ensure it doesn't get the card background again */
            padding: 0;
        }

/* Language button styles (inline hyperlink look) */
.doc-card-language-button[b-1ydb71svw0] {
    color: #0b63d6;
    text-decoration: underline;
    cursor: pointer;
    margin-right: 6px;
    font-weight: 500;
    font-size: 0.95rem;
    display: inline-flex; /* use inline-flex so icon and text are centered */
    align-items: center; /* vertically center children (spinner, text) */
    gap: 0.25rem; /* small gap between spinner and language text */
    line-height: 1; /* normalize line-height for consistent centering */
    vertical-align: middle; /* align the inline-flex container with surrounding text */
    height: 1.5rem; /* fixed height to prevent shifting */
}

    .doc-card-language-button:hover[b-1ydb71svw0] {
        color: #084ea8;
    }

.doc-card-language-button-active[b-1ydb71svw0] {
    font-weight: 700;
    text-decoration: none;
}

/* Ensure any SVG or image inside the language button aligns and doesn't overflow */
.doc-card-language-button svg[b-1ydb71svw0],
.doc-card-language-button img[b-1ydb71svw0] {
    display: inline-block;
    vertical-align: middle;
    max-height: 1.25em;
    max-width: 1.25em;
}

/* Container for all language buttons */
.open-source-file > .me-2[b-1ydb71svw0] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}


/* Ensure the link itself is positioned above the decorative layers (extra safety) */
.open-source-file a[b-1ydb71svw0] {
    position: relative;
    z-index: 1002;
    flex-shrink: 0;
}

/* Keep code blocks wrapping but make them look like monospaced excerpts */
.fragment-typography pre[b-1ydb71svw0] {
    white-space: pre-wrap;
    word-wrap: break-word;
    background: #f6f5f3;
    border: 1px solid #e1dbd3;
    padding: .8rem;
    border-radius: .35rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, 'Roboto Mono', 'Courier New', monospace;
    font-size: .95rem;
    color: #1d1d1d;
    overflow: auto;
}

/* Paragraphs and generic text */
.fragment-typography p[b-1ydb71svw0],
.fragment-typography text[b-1ydb71svw0] {
    margin: 0.9rem 0;
    text-align: justify;
    text-indent: 1.4em; /* book style paragraph indent */
    hyphens: auto;
    color: #2a2a2a;
    font-size: 1rem;
}

/* Headings styled like chapter/title headings */
.fragment-typography h1[b-1ydb71svw0],
.fragment-typography h2[b-1ydb71svw0],
.fragment-typography h3[b-1ydb71svw0],
.fragment-typography h4[b-1ydb71svw0],
.fragment-typography h5[b-1ydb71svw0],
.fragment-typography h6[b-1ydb71svw0] {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: #111;
    margin: 1.25rem 0.6rem;
    line-height: 1.2;
    text-align: left;
}

/* Reduced heading sizes per request */
.fragment-typography h1[b-1ydb71svw0] {
    font-size: 1.25rem;
    letter-spacing: -0.4px;
}

.fragment-typography h2[b-1ydb71svw0] {
    font-size: 1.05rem;
    letter-spacing: -0.2px;
}

.fragment-typography h3[b-1ydb71svw0] {
    font-size: 0.95rem;
}

.fragment-typography h4[b-1ydb71svw0] {
    font-size: 0.9rem;
}

.fragment-typography h5[b-1ydb71svw0] {
    font-size: 0.85rem;
}

.fragment-typography h6[b-1ydb71svw0] {
    font-size: 0.8rem;
}

/* Make the first letter look like a subtle drop cap for larger paragraphs */
.fragment-typography p:first-of-type[b-1ydb71svw0]::first-letter,
.fragment-typography text:first-of-type[b-1ydb71svw0]::first-letter {
    float: left;
    font-size: 2.2rem;
    line-height: 1;
    padding-right: .25rem;
    padding-left: .05rem;
    font-weight: 600;
    color: #1a1a1a;
}

/* Blockquote style to resemble a quoted passage */
.fragment-typography blockquote[b-1ydb71svw0] {
    margin: 1rem 0;
    padding: .6rem 1rem;
    background: linear-gradient(90deg, rgba(240, 237, 233, 0.6), rgba(248, 246, 243, 0.6));
    border-left: 6px solid #d8cfc5;
    border-radius: .25rem;
    font-style: italic;
    color: #2c2c2c;
}

/* Inline code and code spans */
.fragment-typography code[b-1ydb71svw0] {
    background: #f1f0ee;
    padding: .15rem .4rem;
    border-radius: .25rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, 'Roboto Mono', 'Courier New', monospace;
    font-size: .95em;
    color: #0f1720;
}

/* Tables look clean and readable */
.fragment-typography table[b-1ydb71svw0] {
    width: 100%;
    border-collapse: collapse;
    margin: .75rem 0;
    font-size: .95rem;
}

    .fragment-typography table th[b-1ydb71svw0],
    .fragment-typography table td[b-1ydb71svw0] {
        border: 1px solid #e7e1d9;
        padding: .45rem .6rem;
        vertical-align: top;
    }

    .fragment-typography table th[b-1ydb71svw0] {
        background: #f7f6f4;
        text-align: left;
    }

/* Lists spacing */
.fragment-typography ul[b-1ydb71svw0],
.fragment-typography ol[b-1ydb71svw0] {
    margin: 0.75rem 1.6rem;
}

/* Links styling */
.fragment-typography a[b-1ydb71svw0] {
    color: #0b63d6;
    text-decoration: underline;
}

    .fragment-typography a:hover[b-1ydb71svw0] {
        color: #084ea8;
    }

/* Custom Confluence inline comment markers (escape the colon) */
ac\:inline-comment-marker[b-1ydb71svw0],
ac\:inline-comment-marker *[b-1ydb71svw0] {
    display: inline-block;
    background: rgba(255, 240, 200, 0.9);
    border: 1px dashed rgba(160, 130, 80, 0.6);
    padding: .15rem .35rem;
    margin: 0 .15rem;
    border-radius: .25rem;
    font-size: .85rem;
    vertical-align: middle;
}

/* Slight adjustment for the OpenSource link area */
.fragment-typography .d-flex.justify-content-end[b-1ydb71svw0] {
    margin-bottom: .5rem;
}

/* Make any emphasized visual separators subtle */
.fragment-typography hr[b-1ydb71svw0] {
    border: none;
    border-top: 1px solid rgba(34, 34, 34, 0.06);
    margin: 1rem 0;
}

/* Preserve any remaining defaults but ensure readability on small screens */
@media (max-width: 576px) {
    .fragment-typography[b-1ydb71svw0] {
        padding: 1rem;
        font-size: .98rem;
    }

        .fragment-typography p[b-1ydb71svw0], .fragment-typography text[b-1ydb71svw0] {
            text-indent: .9em;
        }
}

/* Ellipsis paragraph fragment styling */
.fragment-ellipsis[b-1ydb71svw0] {
    text-align: center;
    font-weight: 600;
    color: rgba(34, 34, 34, 0.35);
    margin: 0.25rem 0;
    font-size: 1.05rem;
    line-height: 1;
    -webkit-user-select: none;
    user-select: none;
    /* ensure ellipsis remains visible even when mask applied */
    position: relative;
    z-index: 2;
}

/* Slightly reduce ellipsis size on small screens */
@media (max-width: 576px) {
    .fragment-ellipsis[b-1ydb71svw0] {
        font-size: 0.95rem;
    }
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatPrompt.razor.rz.scp.css */
.bottom-div[b-asimi75l2s] {
    position: fixed; /* Fix the position at the bottom */
    bottom: 0;
    display: flex;
    justify-content: center;
    padding-right: 46px;
    width: calc(100% + 16px);
    z-index: 11;
}

.bottom-div-opaque[b-asimi75l2s] {
    background-color: inherit;
}

.inputs-and-buttons[b-asimi75l2s] {
    width: 100%;
    opacity: 1;
    transition: opacity 0.6s ease, height 0.6s ease;
    height: auto;
    /* Use a grid so the input and submit button can share the top row,
       while the bottom controls span the full width on the next row */
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    gap: 8px;
    align-items: center;
}

.inputs-and-buttons-expecting-gui-components-feedback[b-asimi75l2s] {
    opacity: 0;
    height: 0;
    overflow: hidden;
    pointer-events: none; /* Prevent interaction */
}

.submit-button-container[b-asimi75l2s] {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}

.submit-message[b-asimi75l2s] {
    margin-right: 0;
}

.submit-button-confirm[b-asimi75l2s] {
    background-color: var(--color-accent-1);
    color: white;
    border: 2px solid white;
}

.hidden[b-asimi75l2s] {
    display: none; /* Hides the element */
    pointer-events: none; /* Disables interaction */
}

.input-container-full-width[b-asimi75l2s] {
    width: 100% !important;
}

.input-container[b-asimi75l2s] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 70%;
    max-height: 500px;
    margin: 1rem 0;
    padding: 8px 18px 0 18px;
    background: #FFFFFF;
    border: thin solid;
    border-radius: 16px;
    border-color: #C0C0C0;
    box-sizing: border-box;
    cursor: text;
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    font-variation-settings: unset;
    background: var(--chat-line-background-user);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    box-shadow: 0px 0px 12px rgb(60, 130, 164, 0.2);
    transition: background 1.0s ease, width 0.6s ease, height 0.6s ease, margin 0.6s ease;
    position: relative; /* anchor for positioned children */
    order: 2; /* ensure input sits after the thermometer in flex layout */
}

/* Override margins when used in query view mode */
.input-container.input-container-query-view[b-asimi75l2s] {
    margin-top: 0;
}

    /* Highlight when a category/value is inserted */
    .input-container.category-inserted[b-asimi75l2s] {
        animation: category-insert-pulse-b-asimi75l2s 0.9s ease-in-out;
        box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-accent-0) 18%, transparent), 0 4px 16px rgba(60, 130, 164, 0.18);
        border-color: rgba(60, 130, 164, 0.6);
    }

@keyframes category-insert-pulse-b-asimi75l2s {
    0% {
        transform: translateY(0px) scale(1);
        background-color: var(--chat-line-background-user);
    }

    25% {
        transform: translateY(-4px) scale(1.01);
        background-color: rgba(60, 130, 164, 0.06);
    }

    60% {
        transform: translateY(0px) scale(1);
        background-color: rgba(60, 130, 164, 0.03);
    }

    100% {
        transform: translateY(0px) scale(1);
        background-color: var(--chat-line-background-user);
    }
}

.input-container-expecting-gui-components-feedback[b-asimi75l2s] {
    display: flex;
    height: 68px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    background-color: var(--chat-line-background-gui-component);
    border: thick solid white;
    margin-bottom: 18px;
    transition: background 1.0s ease, width 0.6s ease, height 0.6s ease, margin 0.6s ease;
}

@media (min-width: 850px) {
    .bottom-div[b-asimi75l2s] {
        justify-content: center;
        align-content: center;
    }

    .input-container[b-asimi75l2s] {
        width: 70%;
    }

    .input-container-expecting-gui-components-feedback[b-asimi75l2s] {
        width: 440px;
    }
}

@media (max-width: 849.98px) {
    .bottom-div[b-asimi75l2s] {
        justify-content: center; /* Center horizontally on small screens as well */
        align-content: normal;
    }

    .input-container[b-asimi75l2s] {
        width: 96%;
    }

    .input-container-expecting-gui-components-feedback[b-asimi75l2s] {
        width: 440px;
    }
}

.input-row[b-asimi75l2s] {
    width: 100%;
    grid-column: 1 / 2; /* place input in first column of first row */
    grid-row: 1 / 2;
    flex: 1; /* allow the input to take remaining space */
    min-width: 0; /* prevent overflow in grid */
}

    .input-row.input-row-query-view[b-asimi75l2s] {
        /* Optional: adjust vertical alignment if needed */
        align-items: center;
        display: flex;
        flex: 1;
    }

.text-input[b-asimi75l2s] {
    background-color: inherit;
    position: relative;
    width: 100%;
    white-space: pre-wrap;
    color: #111111;
    resize: none;
    border: none;
    padding: 0px;
    margin: 0px;
    word-break: break-word;
    font-family: inherit;
    font-size: 16px;
    line-height: 24px;
    max-height: calc(24px * 5);
    font-weight: 400;
    font-variation-settings: unset;
}

    .text-input:focus[b-asimi75l2s] {
        outline: none;
        border: none;
    }

.bottom-controls[b-asimi75l2s] {
    min-height: 2.1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    grid-column: 1 / 3; /* span both columns on the second row */
    grid-row: 2 / 3;
}

.left-controls[b-asimi75l2s] {
    display: flex;
    gap: 16px;
    align-items: center; /* vertically center icons and controls */
}

.bottom-dropdown[b-asimi75l2s] {
    min-height: 33.29px;
    margin-right: 0px;
    top: 2px;
    position: relative;
    z-index: 20;
    display: inline-block;
    /*    align-content: end*/
}

.control[b-asimi75l2s] {
    border: none;
    background: none;
}

.flex-end[b-asimi75l2s] {
    /* place submit button in second column of first row */
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-left: auto; /* push the submit button to the far right of the flex row */
}

.token-stats[b-asimi75l2s] {
    display: flex;
    align-items: center;
    margin-left: 0; /* no extra left gap so it can sit close to input */
    margin-right: 4px; /* smaller spacing to the input */
    height: 92px; /* match input-container height */
    width: 36px;
    box-sizing: border-box;
    opacity: 0;
    transform: translate(4px, 8px); /* nudge slightly right and down when hidden */
    transition: opacity 0.5s ease, transform 0.5s ease;
    order: 1; /* place thermometer before the input in flex layout */
}

    .token-stats.visible[b-asimi75l2s] {
        opacity: 1;
        transform: translate(4px, 0); /* keep the small right offset when visible */
        transition-delay: 2s; /* delay visibility transition by 2s */
    }

    .token-stats .thermometer[b-asimi75l2s] {
        position: relative;
        width: 12px;
        height: 100%;
        background: linear-gradient(180deg, #eee 0%, #ddd 100%);
        border: 1px solid #c0c0c0;
        border-radius: 8px;
        overflow: hidden;
        display: flex;
        align-items: flex-end;
    }

    .token-stats .thermometer-fill[b-asimi75l2s] {
        width: 100%;
        background: linear-gradient(180deg, var(--color-accent-0), var(--color-accent-1));
        transition: height 0.3s ease;
        height: 0%;
    }

    .token-stats.high .thermometer-fill[b-asimi75l2s] {
        background: linear-gradient(180deg, darkorange, orangered);
    }

    .token-stats.critical .thermometer-fill[b-asimi75l2s] {
        background: linear-gradient(180deg, red, darkred);
    }

    .token-stats.high .thermometer[b-asimi75l2s] {
        border-color: darkorange;
    }

    .token-stats.critical .thermometer[b-asimi75l2s] {
        border-color: red;
    }

    .token-stats[title][b-asimi75l2s] {
        position: relative;
    }

        .token-stats[title]:hover[b-asimi75l2s]::after {
            content: attr(title);
            position: absolute;
            top: -26px;
            left: 50%;
            transform: translateX(-50%);
            background: rgba(0,0,0,0.8);
            color: #fff;
            padding: 4px 8px;
            border-radius: 4px;
            font-size: 12px;
            white-space: nowrap;
        }

.submit[b-asimi75l2s] {
    color: var(--color-accent-0);
    opacity: 0.7;
    cursor: pointer;
}

/* Show button at full opacity when the textarea has content (placeholder hidden) */
form:has(#promptInput:not(:placeholder-shown)) .submit[b-asimi75l2s] {
    opacity: 1;
}

    /* Move the submit icon slightly down to align visually with the input */
    .flex-end .submit .ph[b-asimi75l2s],
    .submit .ph[b-asimi75l2s] {
        display: inline-block; /* enable transform */
        transform: translateY(4px);
    }

.drop-area[b-asimi75l2s] {
    transition: color 0.25s ease, background-color 0.25s ease;
}

/* Visual feedback while a file dragged from the OS hovers over the prompt input container */
.input-container.dragging-over[b-asimi75l2s] {
    outline: 2px dashed var(--color-accent-0);
    outline-offset: -2px;
    background-color: color-mix(in srgb, var(--color-accent-0) 8%, transparent);
}

    .drop-area label[b-asimi75l2s] {
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .drop-area .ph[b-asimi75l2s] {
        transition: color 0.25s ease;
        color: inherit;
        font-size: 1.4rem; /* slightly larger for better visibility */
    }

    .drop-area:hover .ph[b-asimi75l2s] {
        color: var(--color-accent-0);
    }

/* QueryView chat icon and input row */
.queryview-icon-input-row[b-asimi75l2s] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
}

.queryview-chat-icon[b-asimi75l2s] {
    font-size: 1.3rem;
    cursor: pointer;
    transition: color 0.3s ease, transform 0.2s ease;
    color: darkgray;
    margin-right: 4px;
}

    .queryview-chat-icon.activated[b-asimi75l2s] {
        color: var(--color-accent-0) !important;
    }

    .queryview-chat-icon.deactivated[b-asimi75l2s] {
        color: darkgray !important;
    }

    .queryview-chat-icon:hover[b-asimi75l2s] {
        transform: scale(1.1);
        color: var(--color-accent-0) !important;
    }
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatRightPanel.razor.rz.scp.css */
.chat-right-panel[b-7ojz3g60j6] {
    flex-shrink: 0;
    --panel-width: 570px;
    width: 0;
    /* overflow: hidden; */
    transition: width 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    height: 100%;
    background: var(--dossier-color, #f8f9fa);
    display: flex;
    flex-direction: column;
    position: relative;
}

.chat-right-panel--visible[b-7ojz3g60j6] {
    width: var(--panel-width, 570px);
    border-left: 3px solid rgba(255, 255, 255, 0.3);
    border-top-left-radius: 16px;
    -webkit-backdrop-filter: brightness(102%) blur(5px);
    backdrop-filter: brightness(102%) blur(5px);
}

.chat-right-panel-content[b-7ojz3g60j6] {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    /* overflow: hidden; */
}

.chat-right-panel-tabs[b-7ojz3g60j6] {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid var(--color-primary-2, #dee2e6);
    flex-shrink: 0;
    padding: 0 4px;
    padding-top: 6px;
    gap: 2px;
}

.chat-right-panel-tab[b-7ojz3g60j6] {
    background: transparent;
    border: none;
    padding: 8px 14px;
    cursor: pointer;
    color: var(--color-primary-5, #6c757d);
    font-size: 0.85rem;
    font-weight: 500;
    transition: color 0.2s;
    white-space: nowrap;
}

    .chat-right-panel-tab:hover[b-7ojz3g60j6] {
        color: var(--color-accent-0, #0d6efd);
    }

    .chat-right-panel-tab--active[b-7ojz3g60j6] {
        color: var(--color-accent-0, #0d6efd);
        font-weight: 600;
    }

.chat-right-panel-close[b-7ojz3g60j6] {
    margin-left: auto;
    align-self: center;
    border: none;
    background: transparent;
    color: var(--color-primary-5, #6c757d);
    cursor: pointer;
    font-size: 1.15rem;
    line-height: 1;
    padding: 4px 10px 8px;
}

    .chat-right-panel-close:hover[b-7ojz3g60j6] {
        color: var(--color-accent-0, #0d6efd);
    }

.chat-right-panel-tab-content[b-7ojz3g60j6] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0;
}

.chat-right-panel-sources-dataset[b-7ojz3g60j6] {
    padding: 0.5rem 0.75rem 0.35rem;
    font-size: 0.85rem;
    font-weight: 600;
}

.chat-right-panel-sources-banner[b-7ojz3g60j6] {
    margin: 0.6rem 0.75rem 0;
    padding: 0;
    color: #666666;
    font-size: 0.78rem;
    line-height: 1.35;
    transition: background-color 0.25s ease, color 0.25s ease, font-size 0.25s ease, padding 0.25s ease;
}

.chat-right-panel-sources-banner:hover[b-7ojz3g60j6] {
    color: #333333;
    background: rgba(60, 130, 164, 0.18);
    font-size: 0.85rem;
    padding: 0.55rem 0.7rem;
    border-radius: 4px;
    transition-delay: 1s;
}

.chat-right-panel-sources-content[b-7ojz3g60j6] {
    padding: 0 1rem;
}

.chat-right-panel-datasets-content[b-7ojz3g60j6] {
    padding: 0 1rem;
}

.chat-right-panel-trainer-content[b-7ojz3g60j6] {
    font-size: 0.75rem;
}

.chat-right-panel-trainer-content[b-7ojz3g60j6]  .goal-row {
    border-bottom: 1px solid #aeb8c0 !important;
    transition: background-color 0.15s ease-in-out;
}

.chat-right-panel-trainer-content[b-7ojz3g60j6]  .goal-row > td {
    border-bottom: 1px solid #aeb8c0 !important;
}

.chat-right-panel-trainer-content[b-7ojz3g60j6]  .goal-row:hover {
    background-color: var(--dossier-color, #f8f9fa);
}

.no-datasets-message[b-7ojz3g60j6] {
    padding-top: 2rem;
    text-align: center;
}

[b-7ojz3g60j6] .chat-right-panel-datasets-content .dataset-card,
[b-7ojz3g60j6] .chat-right-panel-datasets-content .dataset-card:hover,
[b-7ojz3g60j6] .chat-right-panel-datasets-content .dataset-card.selected,
[b-7ojz3g60j6] .chat-right-panel-datasets-content .dataset-card.selected:hover {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

[b-7ojz3g60j6] .chat-right-panel-datasets-content .source-container--dataset-contents,
[b-7ojz3g60j6] .chat-right-panel-datasets-content .source-container--dataset-contents .source-item,
[b-7ojz3g60j6] .chat-right-panel-datasets-content .source-container--dataset-contents .source-item:hover {
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
}

.chat-right-panel-toggle[b-7ojz3g60j6] {
    display: inline-flex;
    align-items: center;
    padding: 10px 8px;
    background: var(--chat-line-background-user);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    border: thin solid #C0C0C0;
    border-radius: 16px;
    box-shadow: 0px 0px 12px rgb(60, 130, 164, 0.2);
    position: fixed;
    top: 80px;
    right: 12px;
    z-index: 10;
    opacity: 0;
    transform: translateX(120%) scale(0.98);
    pointer-events: none;
    transition: opacity 0.35s cubic-bezier(.4,0,.2,1), transform 0.35s cubic-bezier(.4,0,.2,1);
}

    .chat-right-panel-toggle.shown[b-7ojz3g60j6] {
        opacity: 1;
        transform: translateX(0) scale(1);
        pointer-events: auto;
    }

    .chat-right-panel-toggle.hidden[b-7ojz3g60j6] {
        opacity: 0;
        transform: translateX(120%) scale(0.98);
        pointer-events: none;
    }

.chat-right-panel-open[b-7ojz3g60j6] {
    border: none;
    background: transparent;
    color: var(--color-primary-5, #6c757d);
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
    padding: 0px 2px;
}

    .chat-right-panel-open:hover[b-7ojz3g60j6],
    .chat-right-panel-close:hover[b-7ojz3g60j6] {
        color: var(--color-accent-0, #0d6efd);
    }

.chat-right-panel-resize-handle[b-7ojz3g60j6] {
    position: absolute;
    left: 0;
    top: 0;
    width: 6px;
    height: 100%;
    cursor: ew-resize;
    z-index: 10;
    background: transparent;
    transition: background 0.2s;
}

    .chat-right-panel-resize-handle:hover[b-7ojz3g60j6] {
        background: rgba(13, 110, 253, 0.25);
    }
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatRightPanelLoadedDocuments.razor.rz.scp.css */
.crp-loaded-docs[b-yd8cwrg5ie] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.no-loaded-documents-message[b-yd8cwrg5ie] {
    margin-top: 2rem;
    text-align: center;
}

.crp-loaded-docs-tabs[b-yd8cwrg5ie] {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2px;
    padding: 4px 8px;
    border-bottom: 1px solid var(--color-primary-2, #dee2e6);
    flex-shrink: 0;
}

.crp-loaded-docs-tab[b-yd8cwrg5ie] {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 4px 4px 0 0;
    padding: 5px 10px;
    cursor: pointer;
    color: var(--color-primary-5, #6c757d);
    font-size: 0.78rem;
    font-weight: 400;
    transition: color 0.2s, background 0.2s;
    white-space: nowrap;
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    display: flex;
    align-items: center;
    gap: 4px;
}

    .crp-loaded-docs-tab:hover[b-yd8cwrg5ie] {
        background: var(--color-primary-2, #e9ecef);
        color: var(--color-primary-7, #212529);
    }

    .crp-loaded-docs-tab--active[b-yd8cwrg5ie] {
        background: var(--color-primary-0, #fff);
        border-color: var(--color-primary-2, #dee2e6);
        border-bottom-color: var(--color-primary-0, #fff);
        color: var(--color-accent-0, #0d6efd);
        font-weight: 500;
    }

.crp-loaded-docs-tab-close[b-yd8cwrg5ie] {
    background: transparent;
    border: none;
    outline: none;
    cursor: pointer;
    color: var(--color-primary-5, #6c757d);
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    transition: color 0.2s;
    flex-shrink: 0;
    margin-left: auto;
}

    .crp-loaded-docs-tab-close:hover[b-yd8cwrg5ie] {
        color: #ff3b30;
    }

    .crp-loaded-docs-tab-close:focus[b-yd8cwrg5ie] {
        outline: none;
    }

.crp-loaded-docs-content[b-yd8cwrg5ie] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0;
    width: 100%;
    box-sizing: border-box;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatTopButtons.razor.rz.scp.css */
.administration-item[b-nb27fhsyhj] {
    margin-right: 1rem;
    cursor: pointer;
    transition: color 0.3s ease;
}

    .administration-item.small[b-nb27fhsyhj] {
        font-size: 0.85em;
    }

.disabled[b-nb27fhsyhj] {
    pointer-events: none;
    opacity: 0.5;
    color: gray;
}

.dashboard-link[b-nb27fhsyhj] {
    text-decoration: none;
}

.dashboard-link .dashboard-icon[b-nb27fhsyhj] {
    padding-right: 12px;
    cursor: pointer;
    display: inline-block;
}

/* Small spacer variant used at end of the control group */
.administration-spacer[b-nb27fhsyhj] {
    margin-right: 24px;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ChatWidgetContainer.razor.rz.scp.css */
.widget-group[b-vb7hapmw6g] {
    width: 100%;
    display: flex;                                          /* Ensures divs are side-by-side */
    flex-direction: column;                                 /* Display items vertically by default */
    transition: ease-in flex-direction 1s;
}

/* .widget-container moved to global site.css for consistency */

/* Override the global .chat-text-container flex-direction for this component */
.widget-container .chat-text-container[b-vb7hapmw6g] {
    flex-direction: column;                                 /* Force vertical stacking of children */
}

@media (min-width: 849.98px) {
    .widget-group[b-vb7hapmw6g] {
        flex-direction: row;                                /* Display items horizontally if the screen is big enough */
    }
}

.widget-group-has-multiple[b-vb7hapmw6g] {
    overflow-x: auto;
}

.widget-grid[b-vb7hapmw6g] {
    display: flex;
    flex-direction: column;                                 /* Display items vertically */
    margin-left: 24px;
    padding-top: 24px;
}

.widget-grid .widget-container[b-vb7hapmw6g] {
    flex-direction: row;                                    /* Override for widget grid to display widgets horizontally */
    align-items: flex-end;                                  /* Aligns all .widget elements to the bottom */
}

.single-widget[b-vb7hapmw6g] {
    display: flex;
    flex-direction: column;                                 /* Display items vertically */
    width: 40%;
    margin-left: 24px;
    padding-top: 24px;
    border-radius: 16px;
    justify-content: center; 
}

.widget[b-vb7hapmw6g] {
    flex: 0 0 auto;                                         /* Prevents the widget from shrinking */
    position: relative;                                     /* Required for positioning the bar */
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/FlavorChoice.razor.rz.scp.css */
.disabled[b-ws5k9cp3q9] {
    pointer-events: none;
    opacity: 0.5;
    color: gray;
}

.icon-large[b-ws5k9cp3q9] {
    font-size: 1.3rem;
}

.administration-item[b-ws5k9cp3q9] {
    cursor: pointer;
    transition: color 0.25s ease;
}

.administration-item.small[b-ws5k9cp3q9] {
    font-size: 0.85em;
}

.administration-item .ph[b-ws5k9cp3q9] {
    transition: color 0.25s ease;
    color: inherit;
}

.administration-item:hover .ph[b-ws5k9cp3q9] {
    color: var(--color-accent-0);
}

/* Target the nested span structure in FlavorChoice */
.administration-item .undecorated-hyperlink .ph[b-ws5k9cp3q9] {
    transition: color 0.25s ease;
    color: inherit;
}

.administration-item:hover .undecorated-hyperlink .ph[b-ws5k9cp3q9] {
    color: var(--color-accent-0);
}

.dropdown[b-ws5k9cp3q9] {
    position: relative;
    display: inline-block;
}

.dropdown-content[b-ws5k9cp3q9] {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    bottom: 100%; /* Show the dropdown upwards */
    flex-direction: column;
}

    .dropdown-content.show[b-ws5k9cp3q9] {
        display: flex;
    }

.dropdown-item[b-ws5k9cp3q9] {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

    .dropdown-item:hover[b-ws5k9cp3q9] {
        background-color: #f1f1f1;
        color: var(--color-accent-0);
    }

.selected[b-ws5k9cp3q9] {
    background-color: var(--color-accent-0);
    color: white;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/HttpRedirectModal.razor.rz.scp.css */
.http-redirect-overlay[b-uj0xazngpk] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100000;
    background: rgba(0, 0, 0, 0.5);
}

.http-redirect-modal-wrapper[b-uj0xazngpk] {
    position: relative; /* positioning context for the close button */
    max-width: 90%;
    max-height: 80vh;
}

.http-redirect-modal[b-uj0xazngpk] {
    background: var(--color-primary-0);
    padding: 20px;
    border-radius: 6px;
    max-height: 80vh; /* limit modal height */
    overflow: hidden; /* clip modal and let content scroll inside */
    box-shadow: 4px 12px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
}

.http-redirect-close[b-uj0xazngpk] {
    position: absolute;
    top: 8px; /* now positioned relative to wrapper, not affected by modal padding */
    right: 8px;
    background: rgba(255, 255, 255, 0.1); /* semi-transparent white circle */
    border: none;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    color: var(--color-primary-4);
    z-index: 10001; /* ensure button is above scrolling content and scrollbar */
}

    .http-redirect-close:focus[b-uj0xazngpk] {
        outline: 2px solid rgba(255, 255, 255, 0.45);
    }

.http-redirect-content[b-uj0xazngpk] {
    /* allow content to wrap naturally and be the scrollable flex child */
    flex: 1 1 auto; /* take available space inside modal */
    overflow: auto; /* make only the content area scrollable */
    min-height: 0; /* allow shrinking inside flex container */
    padding-right: 8px; /* give a little space so scrollbar isn't flush under the button */
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/InfoSourceModal.razor.rz.scp.css */
.info-source-overlay[b-3wah3sxxlr] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100000;
    background: rgba(0, 0, 0, 0.5);
}

.info-source-modal-wrapper[b-3wah3sxxlr] {
    position: relative; /* positioning context for the close button */
    max-width: 90%;
    max-height: 80vh;
    min-width: 70vw;
}

.info-source-modal[b-3wah3sxxlr] {
    background: var(--color-primary-0);
    padding: 20px;
    border-radius: 6px;
    max-height: 80vh; /* limit modal height */
    overflow: hidden; /* clip modal and let content scroll inside */
    box-shadow: 4px 12px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
}

.info-source-close[b-3wah3sxxlr] {
    position: absolute;
    top: 8px; /* now positioned relative to wrapper, not affected by modal padding */
    right: 8px;
    background: rgba(255, 255, 255, 0.1); /* semi-transparent white circle */
    border: none;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    color: var(--color-primary-4);
    z-index: 10001; /* ensure button is above scrolling content and scrollbar */
}

    .info-source-close:focus[b-3wah3sxxlr] {
        outline: 2px solid rgba(255, 255, 255, 0.45);
    }

.info-source-content[b-3wah3sxxlr] {
    /* allow content to wrap naturally and be the scrollable flex child */
    flex: 1 1 auto; /* take available space inside modal */
    overflow: auto; /* make only the content area scrollable */
    min-height: 0; /* allow shrinking inside flex container */
    padding-right: 8px; /* give a little space so scrollbar isn't flush under the button */
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/KnowledgeGraphCommunityModal.razor.rz.scp.css */
th:first-child[b-c1nf8xkrjk],
td:first-child[b-c1nf8xkrjk],
th:last-child[b-c1nf8xkrjk],
td:last-child[b-c1nf8xkrjk] {
    width: 1%;
    white-space: nowrap;
}

/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/LlmChoice.razor.rz.scp.css */
.disabled-item[b-svuvzwpi3r] {
    pointer-events: none;
    opacity: 0.6;
    color: #888;
    background: transparent;
}

.disabled-item .dropdown-llm-col.name[b-svuvzwpi3r] {
    font-weight: 400;
}

.disabled-item .dropdown-llm-col.status[b-svuvzwpi3r] {
    color: #888;
}

.disabled[b-svuvzwpi3r] {
    pointer-events: none;
    opacity: 0.5;
    color: gray;
}

.administration-item[b-svuvzwpi3r] {
    margin-right: 1rem;
    cursor: pointer;
    transition: color 0.25s ease;
}

.administration-item.small[b-svuvzwpi3r] {
    font-size: 0.85em;
}

/* LlmChoice uses a custom dropdown that should visually match NavMenu's panel */

.dropdown-llm-root[b-svuvzwpi3r] {
    position: relative;
    display: inline-block;
    transform: translateY(-3px);
}

.dropdown-llm-toggle[b-svuvzwpi3r] {
    background: transparent;
    border: 1px solid transparent;
    padding: 4px 8px;
    border-radius: 6px; /* Match NavMenu item radius */
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem; /* Match .nav-item */
    font-family: inherit;
    color: var(--color-primary-4, #222);
    font-weight: 400;
}

.dropdown-llm-toggle .caret[b-svuvzwpi3r] {
    font-size: 0.9em;
}

/* Panel styling: emulate NavMenu popup panel (light surface, rounded, subtle shadow, separators) */

.dropdown-llm-menu[b-svuvzwpi3r] {
    position: absolute;
    z-index: 2000;
    top: calc(100% - 4px); /* Move panel 10px up from previous (was +6px, now -4px) */
    left: 0;
    background-color: var(--color-primary-0);
    border: none; /* Remove border to match NavMenu */
    border-radius: 6px; /* Match NavMenu radius */
    min-width: 260px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); /* Match NavMenu shadow exactly */
    padding: 10px 0; /* Slightly reduced top and bottom padding */
    overflow: hidden;
}

.dropdown-llm-item[b-svuvzwpi3r] {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 12px;
    padding: 10px 24px; /* More space left and right */
    align-items: center;
    color: var(--color-primary-4, #222);
    font-size: 0.9rem;
    font-family: inherit;
    background: transparent;
    transition: background 0.3s, color 0.3s;
    /* Remove all borders to eliminate separators */
    border: none;
}

.dropdown-llm-item:hover[b-svuvzwpi3r] {
    background-color: var(--color-accent-1, #e0e0e0); /* Match NavMenu hover */
    color: white;
    cursor: pointer;
}

.dropdown-llm-col.name[b-svuvzwpi3r] {
    font-weight: 400; /* always normal, never bold */
}

.dropdown-llm-item.available-item .dropdown-llm-col.name[b-svuvzwpi3r] {
    font-weight: 400; /* remove bold for available */
}

/* status specific - make selector more specific so it overrides .dropdown-llm-col.status */
.dropdown-llm-item.available-item .dropdown-llm-col.status[b-svuvzwpi3r] {
    color: #2b6b2b; /* dark green */
    font-weight: 400; /* remove bold for available status */
}

/* fallback generic class */
.status-available[b-svuvzwpi3r] {
    color: #2b6b2b;
}

.dropdown-llm-col.status[b-svuvzwpi3r] {
    font-size: 0.9em;
    color: #666;
}

/* small responsive tweak to match nav visuals */
@media (max-width: 640px) {
    .dropdown-llm-menu[b-svuvzwpi3r] {
        min-width: 200px;
        right: 0;
        left: auto;
    }
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/MermaidDiagram.razor.rz.scp.css */
.mermaid-diagram-container[b-of9bmymajz] {
    display: flex;
    justify-content: center;
    margin: 0.75rem 0;
    overflow-x: auto;
}

    .mermaid-diagram-container svg[b-of9bmymajz] {
        max-width: 100%;
        height: auto;
    }

.mermaid-error[b-of9bmymajz] {
    color: red;
    font-size: 0.8em;
    white-space: pre-wrap;
    word-break: break-all;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/RagChoice.razor.rz.scp.css */
.administration-item[b-w5rbro1v6p] {
    min-height: 1.8rem;
    cursor: pointer;
    transition: color 0.25s ease;
    border-width: 1px;
    border-style: solid;
    border-radius: 10px;
    padding-top: 3px;
    top: -6px;
    border-style: hidden;
}

.administration-item .ph[b-w5rbro1v6p],
.administration-item .ph-bold[b-w5rbro1v6p] {
    transition: color 0.25s ease;
    color: inherit;
}

.administration-item:hover .icon-container .ph[b-w5rbro1v6p],
.administration-item:hover .icon-container .ph-bold[b-w5rbro1v6p] {
    color: var(--color-accent-0);
}

.collapsible-administration-item[b-w5rbro1v6p] {
    cursor: pointer;
    border-width: 1px;
    border-style: solid;
    border-radius: 10px;
    padding-top: 3px;
    top: -6px;
    border-style: hidden;
}
.collapsible-administration-item:hover[b-w5rbro1v6p] {
    border-color: var(--color-accent-0);
}
/* container for icon(s) */
.icon-container[b-w5rbro1v6p] {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    transition: width 0.3s ease, box-shadow 0.3s ease;
    border-radius: 6px;
}

    .icon-container.single[b-w5rbro1v6p] {
        width: 1.3rem; /* Single icon width */
        height: 1.3rem; /* Match icon-large font-size */
        border: none;
        padding: 0;
    }

    /* Multiple icons: no border, but an embossed/inset look so icons appear embedded */
    .icon-container.multiple[b-w5rbro1v6p] {
        width: 10.8rem; /* Increased width so multiple icons have more space including padding */
        height: 1.8rem; /* Reduced height to fit within parent while keeping top padding */
        padding: 8px 10px 2px 10px; /* Top: 8px, Right: 10px, Bottom: 2px (reduced), Left: 10px */
        border: none; /* remove visible border */
        top: -2px;
        /* Default: plain and simple, no emboss/shadow. Hover will apply the embossed effect. */
        box-shadow: none;
        background: transparent;
        transition: box-shadow 0.25s ease;
    }

        /* Hover effect: reverse the emboss to make it look "pressed in" */
        .icon-container.multiple:hover[b-w5rbro1v6p] {
            box-shadow:
                inset -1px -1px 2px rgba(255,255,255,0.6),
                inset 2px 2px 5px rgba(0,0,0,0.15),
                0 0 1px rgba(0,0,0,0.1);
        }

        /* Ensure icons in multiple state match the same visual size as single icons */
        .icon-container.multiple .ph[b-w5rbro1v6p],
        .icon-container.multiple .ph-bold[b-w5rbro1v6p] {
            font-size: 1.3rem;
            line-height: 1.3rem;
        }

        /* Adjust spacing between icons inside the multiple container */
        .icon-container.multiple .ph-bold[b-w5rbro1v6p] {
            margin: 0 6px;
            transition: color 0.3s ease;
        }

/* Make sure the absolute icon-group fills the inner padded area and centers content */
.icon-group[b-w5rbro1v6p] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center; /* center icons horizontally */
    transition: opacity 0.3s ease;
}

.icon-group.visible[b-w5rbro1v6p] {
    opacity: 1;
}

.icon-group.hidden[b-w5rbro1v6p] {
    opacity: 0;
    pointer-events: none;
}

.disabled[b-w5rbro1v6p] {
    pointer-events: none;
    opacity: 0.5;
    color: gray;
}

.activated[b-w5rbro1v6p] {
    color: var(--color-accent-0) !important;
    transition: color 0.3s ease;
}

.deactivated[b-w5rbro1v6p] {
    color: darkgray !important;
    transition: color 0.3s ease;
}

/* More specific selectors to ensure transitions work */
.icon-container .ph-bold.activated[b-w5rbro1v6p] {
    color: var(--color-accent-0) !important;
    transition: color 0.3s ease;
}

.icon-container .ph-bold.ph-graph.activated.pathrag-enabled[b-w5rbro1v6p] {
    color: #987354 !important;
}

.icon-container .ph-bold.deactivated[b-w5rbro1v6p] {
    color: darkgray !important;
    transition: color 0.3s ease;
}

.icon-large[b-w5rbro1v6p] {
    font-size: 1.3rem;
}

.dropdown[b-w5rbro1v6p] {
    position: relative;
    display: inline-block;
}

.dropdown-content[b-w5rbro1v6p] {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    width: min(430px, calc(100vw - 1rem));
    box-sizing: border-box;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    bottom: 100%; /* Show the dropdown upwards */
    flex-direction: column;
    z-index: 100;
    padding: 5px;
}

.dropdown-content.show[b-w5rbro1v6p] {
    display: flex;
}

.dropdown-content > div[b-w5rbro1v6p] {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-top: 5px;
    margin-bottom: 5px;
}

.dropdown-content > div > span[b-w5rbro1v6p] {
    white-space: nowrap;
    margin: 4px;
}

.dropdown-content > div > span.label[b-w5rbro1v6p] {
    flex-grow: 1;
    margin-left: 13px;
    margin-right: 13px;
}

.rag-choice-subcontrol-label[b-w5rbro1v6p] {
    flex: 0 0 5.2rem;
    font-size: 0.75rem;
}

.rag-choice-subcontrol[b-w5rbro1v6p] {
    min-width: 0;
    flex: 1 1 auto;
    padding: 0.15rem 0.4rem;
    font-size: 0.75rem;
    line-height: 1.5;
    color: #888;
}

.knowledge-graph-community .kg-community-selection-value[b-w5rbro1v6p] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
}

.knowledge-graph-community > .d-flex[b-w5rbro1v6p] {
    width: 100%;
}

.dropdown-content > div.knowledge-graph-community-loading[b-w5rbro1v6p] {
    justify-content: flex-start;
    text-align: left;
}

.dropdown-content > div > span.ph[b-w5rbro1v6p] {
    align-content: center;
}

.dropdown-content > div.innovator-repository[b-w5rbro1v6p],
.dropdown-content > div.knowledge-graph-community[b-w5rbro1v6p],
.dropdown-content > div.knowledge-graph-community-loading[b-w5rbro1v6p] {
    justify-content: flex-start;
    margin-top: -2px !important;
    margin-left: 2.1rem;
    width: calc(100% - 2.1rem);
}

.dropdown-content > div.innovator-repository[b-w5rbro1v6p] {
    margin-top: -2px !important;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/ReasoningChoice.razor.rz.scp.css */
.disabled[b-g02lohrk5t] {
    pointer-events: none;
    opacity: 0.5;
    color: gray;
}

.icon-large[b-g02lohrk5t] {
    font-size: 1.3rem;
}

.administration-item[b-g02lohrk5t] {
    cursor: pointer;
    transition: color 0.25s ease;
}

.administration-item .ph[b-g02lohrk5t] {
    transition: color 0.25s ease;
    color: inherit;
}

.administration-item:hover .ph[b-g02lohrk5t] {
    color: var(--color-accent-0);
}

.dropdown[b-g02lohrk5t] {
    position: relative;
    display: inline-block;
}

.dropdown-content[b-g02lohrk5t] {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    bottom: 100%; /* Show the dropdown upwards */
    flex-direction: column;
    z-index: 100;
}

    .dropdown-content.show[b-g02lohrk5t] {
        display: flex;
    }

.dropdown-item[b-g02lohrk5t] {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

    .dropdown-item:hover[b-g02lohrk5t] {
        background-color: #f1f1f1;
        color: var(--color-accent-0);
    }

.selected[b-g02lohrk5t] {
    background-color: var(--color-accent-0);
    color: white;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/SwitchComponent.razor.rz.scp.css */
.switch-container[b-yzm38nirfe] {
    position: relative;
    display: inline-block;
    width: 49px;
    height: 24px;
    margin: 4px;
}

.switch-container input[b-yzm38nirfe] {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider[b-yzm38nirfe] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #e0e0e0;
    transition: .4s;
    border-radius: 34px;
    border-width: thin;
    border-style: solid;
    border-color: #91b1c4;
}

.slider[b-yzm38nirfe]:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 17px;
    left: 3px;
    bottom: 2px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
}

input:checked + .slider[b-yzm38nirfe] {
    background-color: var(--color-accent-0);
}

input:focus + .slider[b-yzm38nirfe] {
    box-shadow: 0 0 1px var(--color-accent-0);
}

input:checked + .slider[b-yzm38nirfe]:before {
    transform: translateX(26px);
}
input:disabled + .slider[b-yzm38nirfe] {
    cursor: not-allowed;
    background-color: #e0e0e0;
    border-style: none;
}

input:disabled:checked + .slider[b-yzm38nirfe]:before {
    background-color: #a0a0a0;
}

input:disabled + .slider[b-yzm38nirfe]:before {
    opacity: 0.5;
}
/* _content/ThalabusWeb/RazorComponents/ChatRazorComponents/UploadDocuments.razor.rz.scp.css */
.disabled[b-h9so7qae9d] {
    pointer-events: none;
    opacity: 0.5;
    color: gray;
}

.icon-large[b-h9so7qae9d] {
    font-size: 1.3rem;
}

.administration-item[b-h9so7qae9d] {
    cursor: pointer;
    transition: color 0.25s ease;
}

.administration-item.small[b-h9so7qae9d] {
}

.administration-item .ph[b-h9so7qae9d] {
    transition: color 0.25s ease;
    color: inherit;
}

.administration-item:hover .ph[b-h9so7qae9d] {
    color: var(--color-accent-0);
}

/* Target the nested span structure in FlavorChoice */
.administration-item .undecorated-hyperlink .ph[b-h9so7qae9d] {
    transition: color 0.25s ease;
    color: inherit;
}

.administration-item:hover .undecorated-hyperlink .ph[b-h9so7qae9d] {
    color: var(--color-accent-0);
}

.dropdown[b-h9so7qae9d] {
    position: relative;
    display: inline-block;
}

.dropdown-content[b-h9so7qae9d] {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 30;
    bottom: 100%;
    /* Show the dropdown upwards */
    flex-direction: column;
}

.dropdown-content.show[b-h9so7qae9d] {
    display: flex;
}

.dropdown-item[b-h9so7qae9d] {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    /* Allow positioning child submenu relative to item */
    position: relative;
}

.dropdown-item:hover[b-h9so7qae9d] {
    background-color: #f1f1f1;
    color: var(--color-accent-0);
    cursor: pointer;
}

.dropdown-item>div[b-h9so7qae9d] {
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Specific fix for the flex layout in dropdown items, avoiding conflict with submenu div */
.dropdown-item>span[b-h9so7qae9d] {
    display: inline-block;
}

.dropdown-item[b-h9so7qae9d] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.selected[b-h9so7qae9d] {
    background-color: var(--color-accent-0);
    color: white;
}

/* Submenu Styles */
.dossier-submenu[b-h9so7qae9d] {
    position: absolute;
    left: 100%;
    /* Position to the right of the parent item */
    bottom: 0;
    /* Align bottom of submenu with bottom of parent item */
    min-width: 200px;
    max-height: 300px;
    overflow-y: auto;
    background-color: #fff;
    border: 1px solid #ddd;
    display: flex;
    flex-direction: column;
    z-index: 31;
    /* Ensure above others */
}

/* Override dropdown-content bottom for the submenu since it inherits it */
.dropdown-content.dossier-submenu[b-h9so7qae9d] {
    bottom: 0;
}

.search-box[b-h9so7qae9d] {
    padding: 8px;
    position: sticky;
    top: 0;
    background: #fff;
    border-bottom: 1px solid #eee;
}

.search-box input[b-h9so7qae9d] {
    width: 100%;
    padding: 4px 8px;
    box-sizing: border-box;
}

.dossier-list[b-h9so7qae9d] {
    flex: 1;
    overflow-y: auto;
}
/* _content/ThalabusWeb/RazorComponents/Datasets/Dataset.razor.rz.scp.css */
/* Document count header container */
.document-count-header[b-bhe2530xbv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px;
    /* Anchor a constant row height so the header (and the vertically centered
       slider) does not move when inner text changes as counts update. */
    min-height: 36px;
    margin: 0 0 12px 0;
    background: linear-gradient(135deg, rgba(60, 130, 164, 0.08) 0%, rgba(60, 130, 164, 0.12) 100%);
    border-radius: 0;
    box-shadow: 0 1px 3px rgba(60, 130, 164, 0.1);
    width: 100%;
}

/* Loading state container */
.document-loading-state[b-bhe2530xbv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 10px 14px;
    margin: 0 0 12px 0;
    background: linear-gradient(135deg, rgba(60, 130, 164, 0.08) 0%, rgba(60, 130, 164, 0.12) 100%);
    border-radius: 0;
    box-shadow: 0 1px 3px rgba(60, 130, 164, 0.1);
    width: 100%;
}

.loading-message[b-bhe2530xbv] {
    color: var(--color-primary-3);
    font-size: 0.9rem;
    font-weight: 500;
    letter-spacing: 0.3px;
}

.document-count-header.chat-context[b-bhe2530xbv] {
    margin: 0 -16px 12px 0;  /* Only extend right, no left overhang */
    width: calc(100% + 16px); /* Only add right extension */
    padding: 10px 14px;
}

/* Document count summary */
.document-count-summary[b-bhe2530xbv] {
    color: var(--color-primary-4);
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.3px;
    margin: 0;
    white-space: nowrap;
    min-width: 130px;
    text-align: right;
    flex-shrink: 0;
}

/* Dataset name links in document count summary */
.dataset-name-link-wrapper[b-bhe2530xbv] {
    font-weight: 400;
    margin-left: 2px;
}

/* Show Categories checkbox control */
.dataset-show-categories-control[b-bhe2530xbv] {
    margin-left: auto;
    display: flex;
    align-items: center;
}

.dataset-show-categories-control label[b-bhe2530xbv] {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    font-size: 0.85rem;
    color: var(--color-primary-4);
    white-space: nowrap;
}

.dataset-show-categories-control input[type="checkbox"][b-bhe2530xbv] {
    cursor: pointer;
}

/* Chat context: no left extension, only extend to the right */
.document-count-summary.chat-context[b-bhe2530xbv] {
    margin: 0;
}

/* Document cards container layout */
.doc-cards[b-bhe2530xbv] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 6px;
    align-items: flex-start;
    width: 100%;
    justify-content: flex-start;
}

/* Chat context: add padding for spacing from container edges */
.doc-cards.chat-context[b-bhe2530xbv] {
    padding: 0 12px; /* Doubled padding to prevent cards from touching edges */
    align-items: stretch; /* Make cards same height in each row */
}

    /* Don't apply flex-basis to hr element */
    .doc-cards.chat-context > hr[b-bhe2530xbv] {
        width: 100%;
        flex: 0 0 100%;
    }

    /* Card sizing for proper grid layout - use simpler flex values */
    .doc-cards.chat-context > *:not(hr)[b-bhe2530xbv] {
        flex: 1 1 280px; /* Allow cards to grow/shrink, with base of 280px */
        min-width: 280px;
        max-width: 400px;
    }

/* Document pagination controls */
.documents-pagination-controls[b-bhe2530xbv] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
    width: auto;
    margin-left: auto;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    pointer-events: none;
}

.documents-pagination-controls.visible[b-bhe2530xbv] {
    opacity: 1;
    pointer-events: auto;
}

.documents-pagination-controls.hidden[b-bhe2530xbv] {
    opacity: 0;
    pointer-events: none;
}

.documents-nav-btn[b-bhe2530xbv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1px solid #d0d0d0;
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
    color: #555;
    font-size: 14px;
    font-weight: 600;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    user-select: none;
}

    .documents-nav-btn:hover:not(:disabled)[b-bhe2530xbv] {
        background: linear-gradient(135deg, #e9ecef 0%, #f8f9fa 100%);
        border-color: #999;
        color: #333;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
    }

    .documents-nav-btn:active:not(:disabled)[b-bhe2530xbv] {
        background: #e9ecef;
        box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
    }

    .documents-nav-btn:disabled[b-bhe2530xbv] {
        opacity: 0.4;
        cursor: not-allowed;
        color: #999;
    }

    .documents-nav-btn:focus[b-bhe2530xbv] {
        outline: 2px solid rgba(0, 128, 0, 0.3);
        outline-offset: 2px;
    }

.documents-pagination-info[b-bhe2530xbv] {
    font-size: 12px;
    color: #666;
    font-weight: 500;
    min-width: 50px;
    text-align: center;
    /* Keep on a single line so the pagination block never grows taller than
       the slider and pushes the header height (vertical jump). */
    white-space: nowrap;
}

/* Dataset filter controls */
.dataset-filter-controls[b-bhe2530xbv] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex: 1;
}

.slider-container[b-bhe2530xbv] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    padding-top: 20px;  /* room for the percentage label above */
}

.slider-percentage[b-bhe2530xbv] {
    position: absolute;
    top: 0;
    font-size: 0.7rem;
    color: #555;
    font-weight: 600;
    pointer-events: none;
    white-space: nowrap;
}

    .dataset-filter-controls label[b-bhe2530xbv] {
        font-size: 0.85rem;
        color: #555;
        font-weight: 500;
        white-space: nowrap;
        margin: 0;
    }

    .dataset-filter-controls input[type="range"][b-bhe2530xbv] {
        flex: 1;
        min-width: 120px;
        max-width: 200px;
        height: 6px;
        -webkit-appearance: none;
        appearance: none;
        background: linear-gradient(90deg, #ddd 0%, #3c82a4 100%);
        border-radius: 8px;
        outline: none;
        cursor: pointer;
    }

        .dataset-filter-controls input[type="range"][b-bhe2530xbv]::-webkit-slider-thumb {
            -webkit-appearance: none;
            appearance: none;
            width: 16px;
            height: 16px;
            background: #3c82a4;
            border: 2px solid white;
            border-radius: 50%;
            cursor: pointer;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        }

        .dataset-filter-controls input[type="range"][b-bhe2530xbv]::-moz-range-thumb {
            width: 16px;
            height: 16px;
            background: #3c82a4;
            border: 2px solid white;
            border-radius: 50%;
            cursor: pointer;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
        }

        .dataset-filter-controls input[type="range"]:hover[b-bhe2530xbv]::-webkit-slider-thumb {
            background: #2d6280;
        }

        .dataset-filter-controls input[type="range"]:hover[b-bhe2530xbv]::-moz-range-thumb {
            background: #2d6280;
        }

.documents-count-info[b-bhe2530xbv] {
    font-size: 12px;
    color: #666;
    font-weight: 500;
    white-space: nowrap;
    /* Reserve a stable width so the count text doesn't resize the slider
       track (and shift the thumb) as the document count changes. */
    min-width: 130px;
    text-align: right;
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetCard.razor.rz.scp.css */
.dataset-card[b-mczbggt331] {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 1rem;
    cursor: pointer;
    transition: all 0.2s ease;
    background-color: #fff;
}

.dataset-card.dataset-card-details-hidden[b-mczbggt331],
.dataset-card.dataset-card-details-hidden:hover[b-mczbggt331],
.dataset-card.dataset-card-details-hidden.selected[b-mczbggt331] {
    border: none;
    padding: 0;
    background-color: transparent;
    box-shadow: none;
    cursor: default;
}

.dataset-card.dataset-card-compact[b-mczbggt331] {
    padding-top: 0;
    padding-bottom: 0;
}

.dataset-card.selected.dataset-card-compact-collapsed[b-mczbggt331] {
    padding: 0;
}

.dataset-card.selected.dataset-card-compact-expanded[b-mczbggt331] {
    margin-bottom: 0.5rem;
}

.dataset-page-link[b-mczbggt331] {
    color: var(--color-dataset);
    font-size: 0.9rem;
    line-height: 1;
    flex-shrink: 0;
    opacity: 0.7;
    text-decoration: none;
}

    .dataset-page-link:hover[b-mczbggt331] {
        opacity: 1;
        color: var(--color-dataset);
    }

    .dataset-card:hover[b-mczbggt331] {
        border-color: var(--color-dataset);
        box-shadow: 0 2px 4px color-mix(in srgb, var(--color-dataset) 10%, transparent);
    }

    .dataset-card.selected[b-mczbggt331] {
        border: 1px solid transparent;
        background-color: rgba(60, 130, 164, 0.08);
        box-shadow: 0 2px 8px rgba(60, 130, 164, 0.15);
    }

.dataset-card-header[b-mczbggt331] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
    gap: 0.5rem;
}

.dataset-card-title[b-mczbggt331] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
}

.dataset-card-toggle[b-mczbggt331] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 1.5rem;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--color-dataset);
    cursor: pointer;
}

.dataset-card-toggle:hover[b-mczbggt331] {
    color: var(--color-dataset);
    background: rgba(60, 130, 164, 0.1);
    border-radius: 4px;
}

    .dataset-card-title strong[b-mczbggt331] {
        color: var(--color-dataset);
        font-family: 'Monaco', 'Menlo', 'Cascadia Code', monospace;
        text-transform: uppercase;
        font-size: 0.75rem;
        font-weight: bold;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.dataset-permanent-badge[b-mczbggt331] {
    color: #6c757d;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 0;
}

.dataset-node-count-badge[b-mczbggt331] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    height: 1.5rem;
    padding: 0 0.35rem;
    border-radius: 50%;
    color: #fff;
    font-family: 'Monaco', 'Menlo', 'Cascadia Code', monospace;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
    position: relative;
    top: -2px;
}

.dataset-document-count-badge[b-mczbggt331] {
    background-color: #39804f;
}

.dataset-knowledge-graph-count-badge[b-mczbggt331] {
    background-color: #b47726;
}

.dataset-neo4j-link[b-mczbggt331] {
    color: var(--color-dataset);
    font-size: 1rem;
    line-height: 1;
    flex-shrink: 0;
    opacity: 0.7;
    text-decoration: none;
}

    .dataset-neo4j-link:hover[b-mczbggt331] {
        opacity: 1;
        color: var(--color-dataset);
    }

.dataset-card-description[b-mczbggt331] {
    color: #666;
    font-size: 0.8rem;
    margin-bottom: 0.5rem;
    line-height: 1.3;
}

/* Actions area (badge + delete button) */
.dataset-card-actions[b-mczbggt331] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-shrink: 0;
}

/* Red delete button */
.dataset-delete-btn[b-mczbggt331] {
    background: none;
    border: none;
    cursor: pointer;
    color: #c0392b;
    font-size: 1rem;
    line-height: 1;
    padding: 2px 4px;
    border-radius: 4px;
    opacity: 0.6;
    transition: opacity 0.15s, background 0.15s;
}

    .dataset-delete-btn:hover[b-mczbggt331] {
        opacity: 1;
        background-color: rgba(192, 57, 43, 0.1);
    }

/* Confirmation dialog overlay */
.dataset-delete-overlay[b-mczbggt331] {
    position: fixed;
    inset: 0;
    background-color: rgba(28, 28, 28, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9000;
}

.dataset-delete-dialog[b-mczbggt331] {
    background: #fff;
    border-radius: 8px;
    padding: 1.5rem 2rem;
    max-width: 400px;
    width: 90%;
    box-shadow: 0 8px 32px rgba(0,0,0,0.2);
}

    .dataset-delete-dialog h5[b-mczbggt331] {
        margin: 0 0 0.75rem 0;
        font-size: 1.1rem;
        color: #c0392b;
    }

    .dataset-delete-dialog p[b-mczbggt331] {
        margin: 0 0 1.25rem 0;
        color: #333;
        font-size: 0.95rem;
    }

.dataset-delete-dialog-actions[b-mczbggt331] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

    .dataset-delete-dialog-actions .btn-cancel[b-mczbggt331] {
        background: #f0f0f0;
        border: 1px solid #ccc;
        border-radius: 5px;
        padding: 0.4rem 1rem;
        cursor: pointer;
        font-size: 0.9rem;
        color: #333;
    }

        .dataset-delete-dialog-actions .btn-cancel:hover[b-mczbggt331] {
            background: #e0e0e0;
        }

    .dataset-delete-dialog-actions .btn-delete[b-mczbggt331] {
        background: #c0392b;
        border: none;
        border-radius: 5px;
        padding: 0.4rem 1rem;
        cursor: pointer;
        font-size: 0.9rem;
        color: #fff;
        display: flex;
        align-items: center;
        gap: 0.4rem;
    }

        .dataset-delete-dialog-actions .btn-delete:hover:not(:disabled)[b-mczbggt331] {
            background: #a93226;
        }

        .dataset-delete-dialog-actions .btn-delete:disabled[b-mczbggt331] {
            opacity: 0.6;
            cursor: default;
        }


.dataset-card-domain[b-mczbggt331] {
    color: #888;
    font-size: 0.85rem;
    font-style: italic;
}

.domain-label[b-mczbggt331] {
    font-weight: 600;
    color: #666;
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetContentsList.razor.rz.scp.css */
.dataset-contents-curtain[b-m0zfp8adnj] {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease;
}

.dataset-contents-curtain-expanded[b-m0zfp8adnj] {
    grid-template-rows: 1fr;
}

.dataset-contents-curtain-inner[b-m0zfp8adnj] {
    min-height: 0;
    overflow: hidden;
}

.dataset-content-item[b-m0zfp8adnj] {
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
    min-width: 0;
    color: #4f4f4f;
    font-size: 0.75rem;
    line-height: 1.2;
}

.dataset-content-group[b-m0zfp8adnj] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.15rem 0;
}

.dataset-content-group-header[b-m0zfp8adnj] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    min-width: 0;
    font-size: 0.75rem;
    line-height: 1.2;
    font-weight: 600;
    padding-left: 0.5rem;
}

.dataset-content-group-header .dataset-content-path[b-m0zfp8adnj] {
    color: var(--color-accent-0);
    text-decoration: underline;
}

.dataset-content-group-item[b-m0zfp8adnj] {
    padding-left: 0.5rem;
}

.dataset-content-item:not(.dataset-content-group-item)[b-m0zfp8adnj] {
    padding-left: 0.5rem;
}

.dataset-content-separator[b-m0zfp8adnj] {
    height: 1px;
    margin: 0.15rem 0.25rem;
    background: color-mix(in srgb, var(--color-dataset) 14%, transparent);
}

.dataset-content-fragment-separator[b-m0zfp8adnj] {
    color: var(--tbs-text-muted, #777);
    font-size: 0.8rem;
    line-height: 1;
    margin: 0.2rem 0 0.2rem 0.5rem;
}

.dataset-content-kg-entity-card[b-m0zfp8adnj] {
    margin: 0.25rem 16px 0.25rem 22px;
}

.dataset-content-path[b-m0zfp8adnj] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dataset-content-fragment-text[b-m0zfp8adnj] {
    display: block;
    overflow-y: hidden;
    overflow-x: hidden;
    white-space: normal !important;
    line-height: 1.2;
}

[b-m0zfp8adnj] .dataset-content-fragment-text .source-item {
    display: flex;
    width: 100%;
    align-items: flex-start;
    white-space: normal !important;
}

[b-m0zfp8adnj] .dataset-content-fragment-text .source-item-text {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    white-space: normal !important;
    display: block;
    overflow-wrap: anywhere;
    font-style: italic;
    color: #2c2c2c;
    line-height: 1.2;
    text-overflow: ellipsis;
}

[b-m0zfp8adnj] .dataset-content-fragment-text .source-item--knowledge-graph,
[b-m0zfp8adnj] .dataset-content-fragment-text .source-item--knowledge-graph .source-item-text {
    font-style: normal;
}

[b-m0zfp8adnj] .source-container--panel-sources .source-item--knowledge-graph {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

[b-m0zfp8adnj] .source-container--panel-sources .dataset-content-group-header .source-item--document {
    color: var(--color-document);
}

.dataset-content-fragment-text[b-m0zfp8adnj]  p,
.dataset-content-fragment-text[b-m0zfp8adnj]  div {
    display: -webkit-box;
    margin: 0;
    max-height: 3.6rem;
    overflow: hidden;
    line-height: 1.2;
    white-space: normal;
    overflow-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.dataset-contents-status[b-m0zfp8adnj] {
    padding: 0.5rem 0.75rem 0.25rem;
    color: #666;
    font-size: 0.75rem;
}

.dataset-content-skill-cards[b-m0zfp8adnj] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0.25rem 0 0.25rem 0.5rem;
    max-height: none;
    overflow: visible;
}

.dataset-content-fragment-text[b-m0zfp8adnj]  .dataset-content-skill-cards {
    max-height: none;
    overflow: visible;
}

.dataset-content-skill-card[b-m0zfp8adnj] {
    flex: 1 1 260px;
    min-width: 200px;
    max-width: 100%;
    border: 1px solid color-mix(in srgb, var(--color-dataset) 20%, transparent);
    border-radius: 6px;
    background: #fafafa;
    padding: 0.35rem 0.5rem;
    max-height: none;
    overflow: visible;
}

.dataset-content-fragment-text[b-m0zfp8adnj]  .dataset-content-skill-card {
    max-height: none;
    overflow: visible;
}

.dataset-content-skill-card-title[b-m0zfp8adnj] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--tbs-text-muted, #666);
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-bottom: 0.2rem;
}

.dataset-content-skill-json[b-m0zfp8adnj] {
    margin: 0;
    font-family: var(--bs-font-monospace, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace);
    font-size: 0.7rem;
    line-height: 1.3;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    color: #2c2c2c;
}

.dataset-contents-error[b-m0zfp8adnj] {
    color: #a33;
}

@media (prefers-reduced-motion: reduce) {
    .dataset-contents-curtain[b-m0zfp8adnj] {
        transition: none;
    }
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetGraphView.razor.rz.scp.css */
/* DatasetGraphView - graph and node details panel */

.dataset-graph-toolbar[b-b7nmdoe2f1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 0.35rem 0.75rem;
    border-bottom: 1px solid var(--tbs-border-color);
    background: var(--tbs-panel-bg);
}

[b-b7nmdoe2f1] .kg-panels {
    height: calc(85vh - 210px);
}

[b-b7nmdoe2f1] .kg-explorer {
    width: 100%;
}

[b-b7nmdoe2f1] .kg-explorer-graph-column {
    max-width: 100%;
    width: 100%;
}

.dataset-graph-layout-actions[b-b7nmdoe2f1] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.dataset-graph-layout-confirmation[b-b7nmdoe2f1] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
}

@media (max-width: 640px) {
    .dataset-graph-toolbar[b-b7nmdoe2f1] {
        align-items: flex-start;
        flex-direction: column;
    }
}

.gv-status[b-b7nmdoe2f1] {
    padding: 8px 20px;
    background: var(--color-primary-1, #ECECEC);
    border-bottom: 1px solid var(--color-primary-2, #A0A0A0);
    font-size: 0.9em;
}

.status-loading[b-b7nmdoe2f1] {
    color: var(--color-primary-3, #4A4A4A);
}

.status-error[b-b7nmdoe2f1] {
    color: #d32f2f;
    font-weight: 500;
}

.status-success[b-b7nmdoe2f1] {
    color: #388e3c;
    font-weight: 500;
}

.gv-body[b-b7nmdoe2f1] {
    flex: 1;
    display: flex;
    overflow: hidden;
    background: var(--color-primary-0, #FAFAF8);
}

.gv-container[b-b7nmdoe2f1] {
    flex: 1;
    position: relative;
    overflow: hidden;
    background: var(--color-primary-0, #FAFAF8);
    border-right: 1px solid var(--color-primary-2, #A0A0A0);
}


.graph-empty-state[b-b7nmdoe2f1] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: var(--color-primary-3, #4A4A4A);
    font-size: 1.1em;
}

/* Node details panel */
.graph-node-details[b-b7nmdoe2f1] {
    width: 0;
    overflow: hidden;
    background: var(--color-primary-0, #FAFAF8);
    border-left: 1px solid var(--color-primary-2, #A0A0A0);
    transition: width 0.3s ease;
    display: flex;
    flex-direction: column;
}

.graph-node-details.visible[b-b7nmdoe2f1] {
    width: 350px;
}

.node-details-header[b-b7nmdoe2f1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    background: var(--color-primary-1, #ECECEC);
    border-bottom: 1px solid var(--color-primary-2, #A0A0A0);
}

.node-details-header h4[b-b7nmdoe2f1] {
    margin: 0;
    font-size: 1em;
    font-weight: 600;
    color: var(--color-primary-4, #1C1C1C);
}

.node-details-content[b-b7nmdoe2f1] {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
}

.node-details-placeholder[b-b7nmdoe2f1] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--color-primary-3, #4A4A4A);
    text-align: center;
    padding: 20px;
}

.node-label-badge[b-b7nmdoe2f1] {
    display: inline-block;
    background: var(--color-accent-0, #3C82A4);
    color: white;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 0.85em;
    font-weight: 600;
    margin-bottom: 12px;
}

.node-properties-table[b-b7nmdoe2f1] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9em;
}

.node-properties-table thead[b-b7nmdoe2f1] {
    background: var(--color-primary-1, #ECECEC);
}

.node-properties-table th[b-b7nmdoe2f1] {
    text-align: left;
    padding: 8px 10px;
    font-weight: 600;
    color: var(--color-primary-4, #1C1C1C);
    border-bottom: 2px solid var(--color-primary-2, #A0A0A0);
}

.node-properties-table td[b-b7nmdoe2f1] {
    padding: 8px 10px;
    border-bottom: 1px solid var(--color-primary-2, #A0A0A0);
    vertical-align: top;
}

.node-properties-table tr:last-child td[b-b7nmdoe2f1] {
    border-bottom: none;
}

.prop-key[b-b7nmdoe2f1] {
    font-weight: 600;
    color: var(--color-primary-3, #4A4A4A);
    width: 30%;
    word-break: break-word;
}

.prop-value[b-b7nmdoe2f1] {
    color: var(--color-primary-4, #1C1C1C);
    word-break: break-word;
}

.prop-value-long .collapsed[b-b7nmdoe2f1] {
    max-height: 60px;
    overflow: hidden;
    position: relative;
}

.prop-value-long .collapsed[b-b7nmdoe2f1]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 30px;
    background: linear-gradient(to bottom, transparent, var(--color-primary-0, #FAFAF8));
}

.prop-value-long .expanded[b-b7nmdoe2f1] {
    max-height: none;
}

.show-all-btn[b-b7nmdoe2f1] {
    background: none;
    border: none;
    color: var(--color-accent-0, #3C82A4);
    cursor: pointer;
    font-size: 0.85em;
    padding: 4px 0;
    margin-top: 4px;
    text-decoration: underline;
}

.show-all-btn:hover[b-b7nmdoe2f1] {
    color: var(--color-accent-2, #29576f);
}

/* Scrollbar styling for details panel */
.node-details-content[b-b7nmdoe2f1]::-webkit-scrollbar {
    width: 8px;
}

.node-details-content[b-b7nmdoe2f1]::-webkit-scrollbar-track {
    background: var(--color-primary-1, #ECECEC);
}

.node-details-content[b-b7nmdoe2f1]::-webkit-scrollbar-thumb {
    background: var(--color-primary-2, #A0A0A0);
    border-radius: 4px;
}

.node-details-content[b-b7nmdoe2f1]::-webkit-scrollbar-thumb:hover {
    background: var(--color-primary-3, #4A4A4A);
}

/* Buttons (graph-btn-small used in node details) */
.graph-btn-small[b-b7nmdoe2f1] {
    background: transparent;
    border: none;
    color: var(--color-primary-3, #4A4A4A);
    padding: 4px 8px;
    cursor: pointer;
    font-size: 1.1em;
    transition: all 0.2s ease;
}

.graph-btn-small:hover[b-b7nmdoe2f1] {
    color: var(--color-primary-4, #1C1C1C);
    transform: scale(1.1);
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .gv-container[b-b7nmdoe2f1],
    .graph-node-details[b-b7nmdoe2f1],
    .node-details-content[b-b7nmdoe2f1] {
        background: #252525;
    }

    .node-details-header[b-b7nmdoe2f1] {
        background: #2d2d2d;
        border-color: #404040;
    }

    .node-details-header h4[b-b7nmdoe2f1] {
        color: #e0e0e0;
    }

    .node-properties-table thead[b-b7nmdoe2f1] {
        background: #2d2d2d;
    }

    .node-properties-table th[b-b7nmdoe2f1] {
        color: #e0e0e0;
    }

    .node-properties-table td[b-b7nmdoe2f1] {
        border-color: #404040;
    }

    .prop-key[b-b7nmdoe2f1] {
        color: #b0b0b0;
    }

    .prop-value[b-b7nmdoe2f1] {
        color: #e0e0e0;
    }

    .prop-value-long .collapsed[b-b7nmdoe2f1]::after {
        background: linear-gradient(to bottom, transparent, #252525);
    }
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetGraphVisualizer.razor.rz.scp.css */
/* DatasetGraphVisualizer – overlay, popup, header, tabs, footer */

/* Overlay */
.graph-visualizer-overlay[b-yw0174zj72] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(28, 28, 28, 0.6);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 99999;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
}

.graph-visualizer-overlay.visible[b-yw0174zj72] {
    display: flex;
    pointer-events: auto;
}

/* Popup container */
.graph-visualizer-popup[b-yw0174zj72] {
    background: var(--color-primary-0, #FAFAF8);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    width: 90vw;
    max-width: 1400px;
    height: 85vh;
    max-height: 900px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--color-primary-2, #A0A0A0);
    position: relative;
    z-index: 100000;
    pointer-events: auto;
}

/* Header */
.graph-visualizer-header[b-yw0174zj72] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: var(--color-logo-background, #3C82A4);
    color: #1C1C1C;
    border-bottom: 2px solid var(--color-accent-2, #29576f);
}

.graph-visualizer-header h3[b-yw0174zj72] {
    margin: 0;
    font-size: 1.2em;
    font-weight: 600;
    color: #1C1C1C;
}

.graph-neo4j-link[b-yw0174zj72] {
    color: var(--color-dataset);
    text-decoration: underline;
    text-decoration-style: dotted;
    opacity: 0.9;
    font-family: 'Monaco', 'Menlo', 'Cascadia Code', monospace;
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: bold;
}

.graph-neo4j-link:hover[b-yw0174zj72] {
    opacity: 1;
    text-decoration-style: solid;
}

.graph-visualizer-actions[b-yw0174zj72] {
    display: flex;
    gap: 8px;
}

/* Buttons */
.graph-btn[b-yw0174zj72] {
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    padding: 6px 12px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1em;
    transition: all 0.2s ease;
}

.graph-btn:hover:not(:disabled)[b-yw0174zj72] {
    background: rgba(255, 255, 255, 0.35);
    transform: scale(1.05);
}

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

.graph-btn.close-btn[b-yw0174zj72] {
    background: rgba(255, 100, 100, 0.3);
    border-color: rgba(255, 100, 100, 0.5);
}

.graph-btn.close-btn:hover[b-yw0174zj72] {
    background: rgba(255, 100, 100, 0.5);
}

/* Tab bar */
.graph-tab-bar[b-yw0174zj72] {
    display: flex;
    background: var(--color-primary-1, #ECECEC);
    border-bottom: 2px solid var(--color-primary-2, #A0A0A0);
    padding: 0 12px;
    gap: 2px;
}

.graph-tab[b-yw0174zj72] {
    background: transparent;
    border: none;
    border-bottom: 3px solid transparent;
    color: var(--color-primary-3, #4A4A4A);
    padding: 10px 18px;
    font-size: 0.92em;
    font-weight: 500;
    cursor: pointer;
    transition: color 0.15s ease, border-color 0.15s ease;
    margin-bottom: -2px;
}

.graph-tab:hover[b-yw0174zj72] {
    color: var(--color-accent-0, #3C82A4);
}

.graph-tab.active[b-yw0174zj72] {
    color: var(--color-accent-0, #3C82A4);
    border-bottom-color: var(--color-accent-0, #3C82A4);
    font-weight: 600;
}

/* Tab content */
.graph-tab-content[b-yw0174zj72] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
}

.graph-tab-panel[b-yw0174zj72] {
    display: none;
    flex: 1;
    flex-direction: column;
    overflow: hidden;
}

.graph-tab-panel.active[b-yw0174zj72] {
    display: flex;
}

/* Footer */
.graph-visualizer-footer[b-yw0174zj72] {
    padding: 12px 20px;
    background: var(--color-primary-1, #ECECEC);
    border-top: 1px solid var(--color-primary-2, #A0A0A0);
}

.graph-limit-warning[b-yw0174zj72] {
    padding: 4px 0 8px;
    color: #856404;
    font-size: 0.875rem;
}

.graph-query-info[b-yw0174zj72] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.graph-query-info code[b-yw0174zj72] {
    flex: 1;
    background: white;
    padding: 8px 12px;
    border-radius: 4px;
    border: 1px solid var(--color-primary-2, #A0A0A0);
    font-size: 0.85em;
    color: var(--color-primary-4, #1C1C1C);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.graph-query-info .copy-btn[b-yw0174zj72] {
    background: var(--color-accent-0, #3C82A4);
    border-color: var(--color-accent-2, #29576f);
    color: white;
    padding: 8px 12px;
}

.graph-query-info .copy-btn:hover[b-yw0174zj72] {
    background: var(--color-accent-2, #29576f);
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .graph-visualizer-popup[b-yw0174zj72] {
        background: #1e1e1e;
        color: #e0e0e0;
        border-color: #555;
    }

    .graph-tab-bar[b-yw0174zj72],
    .graph-visualizer-footer[b-yw0174zj72] {
        background: #2d2d2d;
        border-color: #404040;
    }

    .graph-tab[b-yw0174zj72] {
        color: #b0b0b0;
    }

    .graph-tab:hover[b-yw0174zj72],
    .graph-tab.active[b-yw0174zj72] {
        color: #5ba8cc;
    }

    .graph-tab.active[b-yw0174zj72] {
        border-bottom-color: #5ba8cc;
    }

    .graph-query-info code[b-yw0174zj72] {
        background: #333;
        border-color: #555;
        color: #e0e0e0;
    }
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetList.razor.rz.scp.css */
.dataset-list-container[b-ugv5h71a7q] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.dataset-list-header[b-ugv5h71a7q] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.dataset-filter-row[b-ugv5h71a7q] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.dataset-refresh-btn[b-ugv5h71a7q] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.3rem 0.4rem;
    background: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    color: #555;
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
}

    .dataset-refresh-btn:hover[b-ugv5h71a7q] {
        background-color: #f0f0f0;
        border-color: #aaa;
        color: #333;
    }

    .dataset-list-header h4[b-ugv5h71a7q] {
        margin: 0;
        color: #555;
    }

.dataset-filter-select[b-ugv5h71a7q] {
    width: 100%;
    padding: 0.35rem 0.5rem;
    font-size: 0.875rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    color: #333;
    cursor: pointer;
}

    .dataset-filter-select:focus[b-ugv5h71a7q] {
        outline: none;
        border-color: #007bff;
        box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.15);
    }

.dataset-items[b-ugv5h71a7q] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.dataset-items-compact[b-ugv5h71a7q] {
    gap: 0;
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetSummary.razor.rz.scp.css */
.dataset-read-only-value-active[b-tjrqcz0xq5] {
    color: #8B0000;
    font-weight: 700;
}

.dataset-details-header[b-tjrqcz0xq5] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.dataset-details-header h4[b-tjrqcz0xq5] {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
}

.dataset-details-actions[b-tjrqcz0xq5] {
    flex: 0 0 auto;
    flex-wrap: nowrap;
    white-space: nowrap;
}
/* _content/ThalabusWeb/RazorComponents/Datasets/DatasetTableView.razor.rz.scp.css */
/* DatasetTableView styles */

.tv-status[b-wym61jkor8] {
    padding: 8px 20px;
    background: var(--color-primary-1, #ECECEC);
    border-bottom: 1px solid var(--color-primary-2, #A0A0A0);
    font-size: 0.9em;
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.tv-expand-all-label[b-wym61jkor8] {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-left: auto;
    cursor: pointer;
    color: var(--color-primary-3, #4A4A4A);
    user-select: none;
}

.tv-expand-all-label input[type="checkbox"][b-wym61jkor8] {
    cursor: pointer;
}

/* Cell truncation toggle button */
.tv-cell-toggle-btn[b-wym61jkor8] {
    display: inline;
    margin-left: 3px;
    padding: 0 2px;
    background: none;
    border: none;
    font-size: 0.85em;
    color: var(--color-accent-0, #3C82A4);
    cursor: pointer;
    vertical-align: middle;
    text-decoration: underline;
}

    .tv-cell-toggle-btn:hover[b-wym61jkor8] {
        color: var(--color-accent-2, #29576f);
    }

.tv-cell-toggle-collapse[b-wym61jkor8] {
    font-size: 0.8em;
}

.status-loading[b-wym61jkor8] {
    color: var(--color-primary-3, #4A4A4A);
}

.status-error[b-wym61jkor8] {
    color: #d32f2f;
    font-weight: 500;
}

.status-success[b-wym61jkor8] {
    color: #388e3c;
    font-weight: 500;
}

.tv-limit-warning[b-wym61jkor8] {
    color: #856404;
    font-size: 0.9em;
}

.tv-table-wrapper[b-wym61jkor8] {
    flex: 1;
    overflow: auto;
    padding: 0;
}

.tv-table[b-wym61jkor8] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88em;
    table-layout: auto;
}

.tv-table thead[b-wym61jkor8] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--color-primary-1, #ECECEC);
}

.tv-table th[b-wym61jkor8] {
    text-align: left;
    padding: 9px 12px;
    font-weight: 600;
    color: var(--color-primary-4, #1C1C1C);
    border-bottom: 2px solid var(--color-primary-2, #A0A0A0);
    white-space: nowrap;
}

.tv-table td[b-wym61jkor8] {
    padding: 7px 12px;
    border-bottom: 1px solid var(--color-primary-2, #A0A0A0);
    vertical-align: top;
    word-break: break-word;
    max-width: 300px;
}

.tv-subnodes-cell[b-wym61jkor8] {
    max-width: none;
    width: auto;
}

.tv-row-main td[b-wym61jkor8] {
    background: var(--color-primary-0, #FAFAF8);
    font-weight: 500;
}

.tv-row-main:hover td[b-wym61jkor8] {
    background: var(--color-primary-1, #ECECEC);
}

/* Sub-nodes spanning row */
.tv-row-subnodes td.tv-subnodes-cell[b-wym61jkor8] {
    padding: 0 0 6px 24px;
    background: var(--color-primary-1, #ECECEC);
    border-bottom: 2px solid var(--color-primary-2, #A0A0A0);
}

/* Nested sub-tables */
.tv-subtable[b-wym61jkor8] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85em;
    margin: 6px 0;
    background: var(--color-primary-0, #FAFAF8);
    border: 1px solid var(--color-primary-2, #A0A0A0);
    border-radius: 4px;
    overflow: hidden;
}

.tv-subtable thead[b-wym61jkor8] {
    background: var(--color-primary-2, #A0A0A0);
}

.tv-subtable th[b-wym61jkor8] {
    padding: 5px 10px;
    font-weight: 600;
    text-align: left;
    color: var(--color-primary-4, #1C1C1C);
    white-space: nowrap;
    border-bottom: 1px solid var(--color-primary-3, #4A4A4A);
}

.tv-subtable td[b-wym61jkor8] {
    padding: 4px 10px;
    border-bottom: 1px solid var(--color-primary-1, #ECECEC);
    vertical-align: top;
    word-break: break-word;
    max-width: 280px;
}

.tv-subtable tbody tr:last-child td[b-wym61jkor8] {
    border-bottom: none;
}

.tv-subtable tbody tr:hover td[b-wym61jkor8] {
    background: var(--color-primary-1, #ECECEC);
}

/* Scrollbar styling */
.tv-table-wrapper[b-wym61jkor8]::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.tv-table-wrapper[b-wym61jkor8]::-webkit-scrollbar-track {
    background: var(--color-primary-1, #ECECEC);
}

.tv-table-wrapper[b-wym61jkor8]::-webkit-scrollbar-thumb {
    background: var(--color-primary-2, #A0A0A0);
    border-radius: 4px;
}

.tv-table-wrapper[b-wym61jkor8]::-webkit-scrollbar-thumb:hover {
    background: var(--color-primary-3, #4A4A4A);
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .tv-table thead[b-wym61jkor8],
    .tv-status[b-wym61jkor8] {
        background: #2d2d2d;
        border-color: #404040;
    }

    .tv-table th[b-wym61jkor8] {
        color: #e0e0e0;
    }

    .tv-table td[b-wym61jkor8] {
        border-color: #404040;
    }

    .tv-row-main td[b-wym61jkor8] {
        background: #252525;
    }

    .tv-row-main:hover td[b-wym61jkor8] {
        background: #2d2d2d;
    }

    .tv-row-subnodes td.tv-subnodes-cell[b-wym61jkor8] {
        background: #1e1e1e;
    }

    .tv-subtable[b-wym61jkor8] {
        background: #252525;
        border-color: #404040;
    }

    .tv-subtable thead[b-wym61jkor8] {
        background: #333;
    }

    .tv-subtable th[b-wym61jkor8] {
        color: #e0e0e0;
        border-color: #555;
    }

    .tv-subtable td[b-wym61jkor8] {
        border-color: #333;
    }

    .tv-subtable tbody tr:hover td[b-wym61jkor8] {
        background: #2d2d2d;
    }
}
/* _content/ThalabusWeb/RazorComponents/DeepReasoningComponents/EditLoadedReasoningDocument.razor.rz.scp.css */
body[b-nfeb1o6fn4] {
}

.reasoning-document-editor[b-nfeb1o6fn4] {
    font-size: 0.85rem;
}

.reasoning-document-editor h3[b-nfeb1o6fn4] {
    font-size: 1.2rem;
    margin-bottom: 0;
}

.reasoning-document-editor h4[b-nfeb1o6fn4] {
    font-size: 1.05rem;
    margin-bottom: 0;
}

.reasoning-document-editor h5[b-nfeb1o6fn4] {
    font-size: 0.95rem;
    margin-bottom: 0;
}

.reasoning-document-editor h6[b-nfeb1o6fn4] {
    font-size: 0.9rem;
    margin-bottom: 0;
}

.reasoning-document-editor .form-label[b-nfeb1o6fn4] {
    font-size: 0.8rem;
    margin-bottom: 0.25rem;
}

.reasoning-document-editor .form-check[b-nfeb1o6fn4] {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    transform: translateY(-2px);
}

.reasoning-document-editor .form-check-input[b-nfeb1o6fn4] {
    margin-top: 0;
    margin-right: 0.5rem;
}

.reasoning-document-editor .form-check-label[b-nfeb1o6fn4] {
    font-size: 0.8rem;
    margin-bottom: 0;
}

.reasoning-document-editor .form-control[b-nfeb1o6fn4],
.reasoning-document-editor .form-select[b-nfeb1o6fn4] {
    font-size: 0.8rem;
    padding: 0.375rem 0.75rem;
}

.reasoning-document-editor textarea.form-control[b-nfeb1o6fn4] {
    font-family: monospace;
}

.reasoning-document-editor textarea.xml-textarea[b-nfeb1o6fn4] {
    font-family: monospace;
    font-size: 0.9em;
}

.reasoning-document-editor .btn[b-nfeb1o6fn4] {
    font-size: 0.8rem;
    padding: 0.375rem 0.75rem;
}

.reasoning-document-editor .btn-sm[b-nfeb1o6fn4] {
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
}

/* Card styling - clean borders instead of uniform backgrounds */
.reasoning-document-editor .card[b-nfeb1o6fn4] {
    margin-bottom: 0.75rem;
    border: 1px solid #d9d9d9;
    background-color: var(--color-primary-0);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.reasoning-document-editor .card-header[b-nfeb1o6fn4] {
    padding: 0.5rem 0.75rem;
    margin-bottom: 0;
    background-color: var(--color-primary-1);
    border-bottom: 1px solid #d9d9d9;
}

.reasoning-document-editor .card-body[b-nfeb1o6fn4] {
    padding: 0.75rem;
    background-color: var(--color-primary-0);
}

/* Alternating background for nested cards (divisions) */
.reasoning-document-editor .card.border-secondary[b-nfeb1o6fn4] {
    border-color: #e0e0e0 !important;
    background-color: var(--color-primary-0);
}

.reasoning-document-editor .card.border-secondary .card-header[b-nfeb1o6fn4] {
    background-color: #f5f5f5;
    border-color: #e0e0e0;
}

/* Instruction cards inside divisions */
.reasoning-document-editor .card.border-secondary .card-body .card[b-nfeb1o6fn4] {
    border-color: #e8e8e8;
    background-color: var(--color-primary-0);
}

.reasoning-document-editor .card.border-secondary .card-body .card-header[b-nfeb1o6fn4] {
    background-color: #fafafa;
    border-color: #e8e8e8;
}

.reasoning-document-editor .mb-3[b-nfeb1o6fn4] {
    margin-bottom: 0.75rem !important;
}

.reasoning-document-editor .mb-2[b-nfeb1o6fn4] {
    margin-bottom: 0.5rem !important;
}

.reasoning-document-editor .row[b-nfeb1o6fn4] {
    --bs-gutter-x: 0.75rem;
}
/* _content/ThalabusWeb/RazorComponents/DeepReasoningComponents/LoadedReasoningDocument.razor.rz.scp.css */
.document-container[b-vnfpvuqtyi] {
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    font-size: 0.7rem;
}

/* Presentation (print) mode adjustments */
.presentation-mode[b-vnfpvuqtyi] {
    background: #fff !important; /* pure white background for print */
    border-radius: 0 !important;
    padding: 0 !important;
}

    .presentation-mode .containerblock[b-vnfpvuqtyi] {
        border-radius: 0 !important;
    }

    .presentation-mode .header[b-vnfpvuqtyi],
    .presentation-mode .division[b-vnfpvuqtyi],
    .presentation-mode .division-html-content[b-vnfpvuqtyi],
    .presentation-mode .loaded-document-content[b-vnfpvuqtyi],
    .presentation-mode .presentation-header[b-vnfpvuqtyi],
    .presentation-mode .table-of-contents-block[b-vnfpvuqtyi] {
        background: transparent !important;
        border: none;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    .presentation-mode pre[b-vnfpvuqtyi] {
        background: transparent !important;
        border: none;
        box-shadow: none !important;
    }

    /* Division indentation borders in presentation mode only */
    .presentation-mode .division-indent-0[b-vnfpvuqtyi] {
        border-top: 3px solid var(--color-accent-0);
        padding-top: 1em;
    }

    .presentation-mode .division-indent-1[b-vnfpvuqtyi] {
        border-top: 1px solid var(--color-accent-0);
        padding-top: 0.5em;
    }

/* Table of contents styling for print: simple text list */
.presentation-mode .table-of-contents-block[b-vnfpvuqtyi] {
    padding: 0 !important;
    margin: 0 0 1.5em 2em !important;
}

    .presentation-mode .table-of-contents-block h2[b-vnfpvuqtyi] {
        margin: 0 0 0.5em 0;
    }

    .presentation-mode .table-of-contents-block ul[b-vnfpvuqtyi] {
        padding-left: 1.25em !important;
    }

.presentation-mode .presentation-header[b-vnfpvuqtyi] {
    padding-left: 0.75rem;
}

    .presentation-mode .presentation-header h1[b-vnfpvuqtyi] {
        font-size: 3em;
        padding-top: 0.5em;
        margin-bottom: 0.25em;
        text-align: left;
        font-weight: bold;
    }


.translation-in-progress[b-vnfpvuqtyi] {
    margin: 1em;
    margin-bottom: 1em;
    padding: 1em;
    border-radius: 6px;
    background-color: #fff3cd;
    border: 1px solid #ffc107;
    color: #856404;
    text-align: center;
    font-size: 1.5em;
    font-weight: bold;
    line-height: 1.3;
}

.containerblock[b-vnfpvuqtyi] {
    border-radius: 6px;
}

.header[b-vnfpvuqtyi] {
    background-color: antiquewhite;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    min-height: 3.5em;
    padding: 0 1em;
}

.control-buttons-section[b-vnfpvuqtyi] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: relative;
    margin-bottom: 0;
    z-index: 2;
    flex-shrink: 0;
}

.control-buttons[b-vnfpvuqtyi] {
    display: flex;
    align-items: center;
    gap: 0.25em;
    font-size: 0.85em;
}

    .control-buttons input[type="checkbox"][b-vnfpvuqtyi],
    .control-buttons label[b-vnfpvuqtyi] {
        font-size: 0.85em;
        padding: 0;
        line-height: 1;
    }

    .control-buttons input[type="checkbox"][b-vnfpvuqtyi] {
        vertical-align: middle;
        margin-top: 0;
        margin-bottom: 0;
    }

    .control-buttons label[b-vnfpvuqtyi] {
        vertical-align: middle;
        line-height: 1;
    }



.title[b-vnfpvuqtyi] {
    position: relative;
    flex: 1;
    text-align: center;
    z-index: 1;
    font-weight: bold;
    margin: 0 1em;
}

.loaded-document-content[b-vnfpvuqtyi] {
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    margin-top: 0;
    overflow: auto;
}

.division-block[b-vnfpvuqtyi] {
    text-align: left;
    background: var(--color-primary-0);
}

.division[b-vnfpvuqtyi] {
    display: block;
    vertical-align: top;
    text-align: left;
    padding: 1em;
    border-radius: 6px;
    background: var(--color-primary-1);
    margin-bottom: 1em;
    margin-left: 1em;
    margin-right: 1em;
    margin-top: 1em;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

/* Division indentation levels */
.division-indent-0[b-vnfpvuqtyi] {
    margin-left: 1em;
}

.division-indent-1[b-vnfpvuqtyi] {
    margin-left: 2.5em;
}

.division-indent-2[b-vnfpvuqtyi] {
    margin-left: 4em;
}

.division-indent-3[b-vnfpvuqtyi] {
    margin-left: 5.5em;
}

.division-indent-4[b-vnfpvuqtyi] {
    margin-left: 7em;
}

.division-indent-5[b-vnfpvuqtyi] {
    margin-left: 8.5em;
}

/* For indentation levels beyond 5, use a generic calculation */
.division-indent-6[b-vnfpvuqtyi] {
    margin-left: 10em;
}

.division-indent-7[b-vnfpvuqtyi] {
    margin-left: 11.5em;
}

.division-indent-8[b-vnfpvuqtyi] {
    margin-left: 13em;
}

.division-indent-9[b-vnfpvuqtyi] {
    margin-left: 14.5em;
}

.division-indent-10[b-vnfpvuqtyi] {
    margin-left: 16em;
}

.division-html-content[b-vnfpvuqtyi] {
    padding: 1em;
    border-radius: 6px;
    background: var(--color-primary-0);
    margin-bottom: 1em;
    margin-left: 1em;
    margin-right: 1em;
    margin-top: 1em;
    box-shadow: 0 4px 3px rgba(0,0,0,0.06);
}

    .division-html-content[b-vnfpvuqtyi]  .info-source {
        cursor: pointer;
    }

    .division-html-content .prompt[b-vnfpvuqtyi] {
        background-color: lightcoral;
    }

    .division-html-content .focus-content[b-vnfpvuqtyi] {
        background-color: #e8f4fd;
        border-left: 4px solid #2196f3;
    }

    .division-html-content .summary[b-vnfpvuqtyi] {
        background-color: antiquewhite;
        font-family: Georgia, 'Times New Roman', Times, serif;
    }

.summary-block[b-vnfpvuqtyi] {
    display: flex;
    align-items: center;
    gap: 0.5em;
    margin-bottom: 0.5em;
}

.issues-block[b-vnfpvuqtyi] {
    margin-top: 1em;
}

    .issues-block ul li[b-vnfpvuqtyi] {
        padding: 0.5em 1em;
        border-radius: 6px;
        margin-bottom: 0.5em;
    }

        .issues-block ul li p[b-vnfpvuqtyi] {
            margin: 0 0 0 0;
        }

.issues-label-outstanding[b-vnfpvuqtyi] {
    color: darkred;
}

.issues-label-closed[b-vnfpvuqtyi] {
    color: darkgreen;
}

.issue-block.severity-low[b-vnfpvuqtyi] {
    background: #ffe5e5;
}

.issue-block.severity-medium[b-vnfpvuqtyi] {
    background: #ffb3b3;
}

.issue-block.severity-high[b-vnfpvuqtyi] {
    background: #ff6666;
}

.issue-block.resolved[b-vnfpvuqtyi] {
    background: #b4eaa9;
}

.recommendations-block[b-vnfpvuqtyi] {
    margin-top: 1em;
    background: #e5f3ff;
}

pre[b-vnfpvuqtyi] {
    font-family: 'Fira Mono', 'Consolas', 'Menlo', 'Monaco', 'Liberation Mono', monospace;
    font-size: 0.8em;
    white-space: pre-wrap;
    word-break: break-word;
    background: #f8f8f8;
    color: #222;
    padding: 0.75em 1em;
    border-radius: 6px;
    border: 1px solid #e0e0e0;
    margin: 0.5em 0;
    line-height: 1.4;
}

.json-result[b-vnfpvuqtyi] {
    background: #f5f5f5;
    border-left: 4px solid #2196f3;
    max-height: 600px;
    overflow-y: auto;
}

.division ul li[b-vnfpvuqtyi] {
    margin-top: 0.5em;
}

    .division ul li h1[b-vnfpvuqtyi],
    .division ul li h2[b-vnfpvuqtyi],
    .division ul li h3[b-vnfpvuqtyi],
    .division ul li h4[b-vnfpvuqtyi],
    .division ul li h5[b-vnfpvuqtyi],
    .division ul li h6[b-vnfpvuqtyi] {
        font-size: 0.9em;
        margin-top: 0.5em;
        margin-bottom: 0.5em;
    }

[b-vnfpvuqtyi] .division ul li h1,
[b-vnfpvuqtyi] .division ul li h2,
[b-vnfpvuqtyi] .division ul li h3,
[b-vnfpvuqtyi] .division ul li h4,
[b-vnfpvuqtyi] .division ul li h5,
[b-vnfpvuqtyi] .division ul li h6 {
    font-size: 1em;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

[b-vnfpvuqtyi] .division ul li pre h1,
[b-vnfpvuqtyi] .division ul li pre h2,
[b-vnfpvuqtyi] .division ul li pre h3,
[b-vnfpvuqtyi] .division ul li pre h4,
[b-vnfpvuqtyi] .division ul li pre h5,
[b-vnfpvuqtyi] .division ul li pre h6 {
    font-size: 0.95em;
    margin-top: 0.4em;
    margin-bottom: 0.4em;
}

[b-vnfpvuqtyi] .websearch-results h1,
[b-vnfpvuqtyi] .websearch-results h2,
[b-vnfpvuqtyi] .websearch-results h3,
[b-vnfpvuqtyi] .websearch-results h4,
[b-vnfpvuqtyi] .websearch-results h5,
[b-vnfpvuqtyi] .websearch-results h6 {
    font-size: 0.95em;
    margin-top: 0.4em;
    margin-bottom: 0.4em;
}

[b-vnfpvuqtyi] .division-html-content.summary h1,
[b-vnfpvuqtyi] .division-html-content.summary h2,
[b-vnfpvuqtyi] .division-html-content.summary h3,
[b-vnfpvuqtyi] .division-html-content.summary h4,
[b-vnfpvuqtyi] .division-html-content.summary h5,
[b-vnfpvuqtyi] .division-html-content.summary h6 {
    font-weight: 600;
    margin-top: 0.8em;
    margin-bottom: 0.5em;
    line-height: 1.3;
    color: #333;
}

[b-vnfpvuqtyi] .division-html-content.summary h1 {
    font-size: 1.3em;
    border-bottom: 2px solid #ddd;
    padding-bottom: 0.3em;
}

[b-vnfpvuqtyi] .division-html-content.summary h2 {
    font-size: 1.2em;
    border-bottom: 1px solid #e0e0e0;
    padding-bottom: 0.2em;
}

[b-vnfpvuqtyi] .division-html-content.summary h3 {
    font-size: 1.1em;
}

[b-vnfpvuqtyi] .division-html-content.summary h4 {
    font-size: 1.05em;
}

[b-vnfpvuqtyi] .division-html-content.summary h5 {
    font-size: 1em;
}

[b-vnfpvuqtyi] .division-html-content.summary h6 {
    font-size: 0.95em;
}

[b-vnfpvuqtyi] .websearch-results table {
    border-collapse: collapse;
    border: 1px solid #555;
    width: 100%;
    margin: 0.5em 0;
}

    [b-vnfpvuqtyi] .websearch-results table th,
    [b-vnfpvuqtyi] .websearch-results table td {
        border: 1px solid #555;
        padding: 0.5em;
    }

[b-vnfpvuqtyi] .not-found-indicator {
    display: inline-block;
    padding: 0.25em 0.5em;
    border-radius: 8px;
    background-color: #e8f0f7;
    border: 1px solid #b0d0e8;
    color: #4a7ba7;
    font-size: 0.8em;
    font-weight: 500;
    white-space: nowrap;
    vertical-align: middle;
}

[b-vnfpvuqtyi] .division ul li > div > div > p {
    margin: 0;
    display: inline;
}

.translation-language-button[b-vnfpvuqtyi] {
    padding: 0.35em 0.6em;
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    background-color: #f5f5f5;
    color: #333;
    font-size: 0.8em;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    user-select: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2em;
    height: 1.5em;
}

    .translation-language-button:hover[b-vnfpvuqtyi] {
        background-color: #e8e8e8;
        border-color: #999;
    }

    .translation-language-button.translation-active[b-vnfpvuqtyi] {
        background-color: #007bff;
        color: white;
        border-color: #0056b3;
        font-weight: 600;
    }

        .translation-language-button.translation-active:hover[b-vnfpvuqtyi] {
            background-color: #0056b3;
            border-color: #003d82;
        }

.undecorated-hyperlink[b-vnfpvuqtyi] {
    text-decoration: none;
    color: inherit;
}

/* Info-source link styling - for referenced laws and regulations */
[b-vnfpvuqtyi] .info-source {
    cursor: pointer;
    color: var(--color-accent-0);
    font-weight: bold;
    white-space: nowrap;
    hyphens: none;
    text-decoration: underline;
}

    [b-vnfpvuqtyi] .info-source:hover {
        text-decoration: underline;
    }

/* Modal backdrop and dialog styles */
.modal-backdrop[b-vnfpvuqtyi] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1040;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-dialog[b-vnfpvuqtyi] {
    background-color: white;
    padding: 1.5em;
    border-radius: 0.5em;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    max-width: 500px;
    z-index: 1050;
}

/* Reuse InfoSourceModal styling from ChatRazorComponents to ensure modal overlay exists */
.info-source-overlay[b-vnfpvuqtyi] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100000;
    background: rgba(0, 0, 0, 0.5);
}

.info-source-modal-wrapper[b-vnfpvuqtyi] {
    position: relative;
    max-width: 90%;
    max-height: 80vh;
}

.info-source-modal[b-vnfpvuqtyi] {
    background: var(--color-primary-0);
    padding: 20px;
    border-radius: 6px;
    max-height: 80vh;
    overflow: hidden;
    box-shadow: 4px 12px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
}

.info-source-close[b-vnfpvuqtyi] {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(255, 255, 255, 0.1);
    border: none;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    color: var(--color-primary-4);
    z-index: 10001;
}

.info-source-content[b-vnfpvuqtyi] {
    flex: 1 1 auto;
    overflow: auto;
    min-height: 0;
    padding-right: 8px;
}


.modal-header[b-vnfpvuqtyi] {
    margin-bottom: 1em;
}

.modal-title[b-vnfpvuqtyi] {
    margin: 0;
    padding: 0;
    font-size: 1.25rem;
    font-weight: 600;
}

.modal-body[b-vnfpvuqtyi] {
    margin-bottom: 1em;
}

    .modal-body p[b-vnfpvuqtyi] {
        margin: 0 0 1em 0;
    }

        .modal-body p:last-child[b-vnfpvuqtyi] {
            margin-bottom: 0;
        }

.modal-warning[b-vnfpvuqtyi] {
    color: #856404;
    background-color: #fff3cd;
    padding: 0.5em;
    border-radius: 0.25em;
    margin-top: 0.5em;
}

    .modal-warning strong[b-vnfpvuqtyi] {
        font-weight: 600;
    }

.modal-footer[b-vnfpvuqtyi] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5em;
}

.btn-danger[b-vnfpvuqtyi] {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

    .btn-danger:hover[b-vnfpvuqtyi] {
        background-color: #c82333;
        border-color: #bd2130;
    }
/* Back-to-TOC link styling (moved from inline) */
.back-to-toc-link[b-vnfpvuqtyi] {
    text-decoration: none;
    cursor: pointer;
    font-size: 1.3em;
    vertical-align: middle;
    padding: 0;
    line-height: 1;
    display: inline-flex;
    align-items: flex-start; /* place arrow at top of the line */
    justify-content: center;
    color: inherit;
    opacity: 0.7;
    transition: opacity 0.2s ease;
    margin-left: 0.3em;
    margin-bottom: 16px;
}

    .back-to-toc-link:hover[b-vnfpvuqtyi] {
        opacity: 1;
    }

/* Modal visibility and display classes */
.d-block[b-vnfpvuqtyi] {
    display: block !important;
}

.d-none[b-vnfpvuqtyi] {
    display: none !important;
}

.modal-background[b-vnfpvuqtyi] {
    background-color: rgba(0, 0, 0, 0.5);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.modal[b-vnfpvuqtyi] {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.5);
    align-items: center;
    justify-content: center;
}

    .modal.d-block[b-vnfpvuqtyi] {
        display: flex;
    }

.modal-content[b-vnfpvuqtyi] {
    background-color: white;
    border-radius: 0.5em;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.btn-close[b-vnfpvuqtyi] {
    background: transparent;
    border: none;
    font-size: 1.5rem;
    font-weight: 700;
    color: #000;
    cursor: pointer;
    padding: 0;
    opacity: 0.5;
}

    .btn-close:hover[b-vnfpvuqtyi] {
        opacity: 0.75;
    }

[b-vnfpvuqtyi] .division-html-content.summary table,
.division-html-content.summary table[b-vnfpvuqtyi] {
    border-collapse: collapse;
    border: 1px solid #555;
    width: 100%;
    max-width: 100%;
    margin: 0.5em 0;
    display: table;
}

    [b-vnfpvuqtyi] .division-html-content.summary table th,
    [b-vnfpvuqtyi] .division-html-content.summary table td,
    .division-html-content.summary table th[b-vnfpvuqtyi],
    .division-html-content.summary table td[b-vnfpvuqtyi] {
        border: 1px solid #555;
        padding: 0.5em;
        word-break: break-word;
        word-wrap: break-word;
        overflow-wrap: break-word;
        hyphens: auto;
        white-space: normal;
        vertical-align: top;
    }

    [b-vnfpvuqtyi] .division-html-content.summary table th,
    .division-html-content.summary table th[b-vnfpvuqtyi] {
        background-color: #f5f5f5;
        font-weight: bold;
        font-size: 0.9em;
    }

    /* Ensure paragraphs and lists within table cells don't break layout */
    [b-vnfpvuqtyi] .division-html-content.summary table td p,
    [b-vnfpvuqtyi] .division-html-content.summary table td ul,
    [b-vnfpvuqtyi] .division-html-content.summary table td ol,
    .division-html-content.summary table td p[b-vnfpvuqtyi],
    .division-html-content.summary table td ul[b-vnfpvuqtyi],
    .division-html-content.summary table td ol[b-vnfpvuqtyi] {
        margin: 0.25em 0;
        padding: 0;
    }

    [b-vnfpvuqtyi] .division-html-content.summary table td li,
    .division-html-content.summary table td li[b-vnfpvuqtyi] {
        margin-left: 1.2em;
    }

    /* Table cell loading - show original English text in light gray */
    [b-vnfpvuqtyi] .division-html-content.summary table td.cell-loading,
    [b-vnfpvuqtyi] .division-html-content.summary table th.cell-loading,
    .division-html-content.summary table td.cell-loading[b-vnfpvuqtyi],
    .division-html-content.summary table th.cell-loading[b-vnfpvuqtyi],
    [b-vnfpvuqtyi] .cell-loading,
    .cell-loading[b-vnfpvuqtyi],
    td.cell-loading[b-vnfpvuqtyi],
    th.cell-loading[b-vnfpvuqtyi] {
        color: #bbb !important; /* Light gray for untranslated original text */
        font-size: 0.7rem !important;
        text-align: left !important;
        vertical-align: top !important;
    }

    /* Table cell loaded - translated text in normal color */
    [b-vnfpvuqtyi] .division-html-content.summary table td.cell-loaded,
    [b-vnfpvuqtyi] .division-html-content.summary table th.cell-loaded,
    .division-html-content.summary table td.cell-loaded[b-vnfpvuqtyi],
    .division-html-content.summary table th.cell-loaded[b-vnfpvuqtyi],
    [b-vnfpvuqtyi] .cell-loaded,
    .cell-loaded[b-vnfpvuqtyi],
    td.cell-loaded[b-vnfpvuqtyi],
    th.cell-loaded[b-vnfpvuqtyi] {
        color: rgb(33, 37, 41) !important; /* Normal dark text color */
        font-size: 0.7rem !important;
        text-align: left !important;
        vertical-align: top !important;
    }

/* Back to table of contents link styling */
.back-to-toc-link[b-vnfpvuqtyi] {
    color: inherit;
    opacity: 0.7;
    transition: opacity 0.2s ease;
    display: inline-block;
    margin-left: 0.3em;
}

    .back-to-toc-link:hover[b-vnfpvuqtyi] {
        opacity: 1;
        cursor: pointer;
    }

@media print {
    .back-to-toc-link[b-vnfpvuqtyi] {
        display: none;
    }

    .page-break-before[b-vnfpvuqtyi] {
        page-break-before: always;
    }

    .division h3[b-vnfpvuqtyi] {
        page-break-after: avoid;
    }
}
/* _content/ThalabusWeb/RazorComponents/DeepReasoningComponents/LoadedReasoningDocumentSmall.razor.rz.scp.css */
.reasoning-small-container[b-n5m0lk8o5u] {
    display: flex;
    flex-direction: row;
    align-items: center;
    text-align: center;
    padding: 6px;
    border-radius: 16px;
    justify-content: center;
    backdrop-filter: brightness(102%) blur(5px);
    border: 2px solid rgba(255, 255, 255, 0.3);
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
}

.reasoning-documents[b-n5m0lk8o5u] {
    display: flex;
    z-index: 1;
    flex-direction: column;
    align-items: stretch;
    text-align: center;
    padding: 6px;
    padding-right: 0;
    border-radius: 16px;
    justify-content: flex-start;
    backdrop-filter: brightness(102%) blur(5px);
    border: 2px solid rgba(255, 255, 255, 0.3);
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

    .reasoning-documents.maxed-height[b-n5m0lk8o5u] {
        max-height: 240px;
    }

.divisions-container[b-n5m0lk8o5u] {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    box-sizing: border-box;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 6px;
    padding-right: 14px;
    align-content: flex-start;
}

/* Custom scrollbar styling */
.divisions-container[b-n5m0lk8o5u]::-webkit-scrollbar {
    width: 8px;
}

.divisions-container[b-n5m0lk8o5u]::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

.divisions-container[b-n5m0lk8o5u]::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.4);
    border-radius: 4px;
    transition: background 0.2s;
}

.divisions-container[b-n5m0lk8o5u]::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.6);
}

/* Firefox scrollbar */
.divisions-container[b-n5m0lk8o5u] {
    scrollbar-color: rgba(255, 255, 255, 0.4) rgba(255, 255, 255, 0.1);
    scrollbar-width: thin;
}

.division-item[b-n5m0lk8o5u] {
    width: 120px;
    min-width: 80px;
    margin: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    overflow: hidden;
    flex-shrink: 0;
}

.division-scope-public[b-n5m0lk8o5u] {
    border: 2px dashed var(--color-accent-0);
    box-sizing: border-box;
    border-radius: 12px;
}

.modal-open[b-n5m0lk8o5u] {
    border: 3px solid var(--color-accent-0);
    border-radius: 12px;
}

.division-icon-container[b-n5m0lk8o5u] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    gap: 4px;
    padding: 6px;
    border-radius: 8px;
    transition: background-color 0.2s, transform 0.2s;
    width: 100%;
    max-width: 100px;
    box-sizing: border-box;
    overflow: hidden;
}

.division-icon-container:hover[b-n5m0lk8o5u] {
    background-color: rgba(255, 255, 255, 0.1);
}

.large-icon[b-n5m0lk8o5u] {
    transform: scale(140%);
    transition: transform 0.2s, color 0.2s;
    margin-bottom: 2px;
    flex-shrink: 0;
}

.division-icon-container:hover .large-icon[b-n5m0lk8o5u] {
    transform: scale(145%);
}

.icon-selected[b-n5m0lk8o5u] {
    color: #fff;
}

.division-name[b-n5m0lk8o5u] {
    font-size: 0.7rem;
    line-height: 1.1;
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    color: rgba(0, 0, 0, 0.8);
    font-weight: 500;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8);
    width: 100%;
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    box-sizing: border-box;
    margin-bottom: 2px;
}

.division-status[b-n5m0lk8o5u] {
    font-size: 0.6rem;
    line-height: 1;
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
    width: 100%;
    max-width: 100px;
    overflow: visible;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    box-sizing: border-box;
    font-weight: 600;
    margin-top: 1px;
}

.division-icon-container:hover .division-name[b-n5m0lk8o5u] {
    color: rgba(0, 0, 0, 0.9);
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.division-icon-container:hover .division-status[b-n5m0lk8o5u] {
    white-space: nowrap;
    overflow: visible;
    text-overflow: unset;
}

.outstanding-issues-status[b-n5m0lk8o5u] {
    color: #b71c1c;
    font-weight: bold;
}

.expanded-division-modal[b-n5m0lk8o5u] {
    position: absolute;
    top: 94px;
    transform: translateX(-50%);
    min-width: 60vw;
    max-width: 90vw;
    max-height: 80vh;
    background: rgba(255,255,255,0.98);
    box-shadow: 0 8px 32px rgba(0,0,0,0.25);
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    padding: 8px 24px;
    overflow: auto;
    pointer-events: auto;
    border: 2px solid rgba(0,0,0,0.1);
}

    .expanded-division-modal.positioned[b-n5m0lk8o5u] {
        transform: none;
    }


/* Ensure cycle dots are always visible */
.cycle-dots[b-n5m0lk8o5u] {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    opacity: 1 !important;
    visibility: visible !important;
}

.cycle-dot[b-n5m0lk8o5u] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: inline-block;
    margin-left: 2px;
    border: 1px solid #888;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Remove any hover-based hiding for cycle dots */
.division-icon-container:hover .cycle-dots[b-n5m0lk8o5u],
.division-icon-container:hover .cycle-dot[b-n5m0lk8o5u] {
    opacity: 1 !important;
    visibility: visible !important;
}


/* Media queries for responsive behavior */
@media (max-width: 600px) {
    .divisions-container[b-n5m0lk8o5u] {
        justify-content: center;
    }
    
    .division-item[b-n5m0lk8o5u] {
        width: 90px;
        min-width: 70px;
    }
    
    .division-icon-container[b-n5m0lk8o5u] {
        max-width: 90px;
        padding: 4px;
    }
    
    .division-name[b-n5m0lk8o5u] {
        font-size: 0.65rem;
        max-width: 90px;
    }
    
    .expanded-division-modal[b-n5m0lk8o5u] {
        width: 95vw;
        max-width: none;
        padding: 4px 12px;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .divisions-container[b-n5m0lk8o5u] {
        justify-content: flex-start;
    }
    
    .expanded-division-modal[b-n5m0lk8o5u] {
        width: 85vw;
        max-width: 700px;
    }
}

@media (min-width: 901px) {
    .divisions-container[b-n5m0lk8o5u] {
        justify-content: flex-start;
    }
    
    .expanded-division-modal[b-n5m0lk8o5u] {
        width: 80vw;
        max-width: 800px;
    }
}
/* _content/ThalabusWeb/RazorComponents/Design/TbsMultiSelectTagInput.razor.rz.scp.css */
.tbs-multi-select-wrapper[b-dqlp4pd1c7] {
    position: relative;
    font-size: var(--tbs-text-sm);
}

.tbs-multi-select-input-container[b-dqlp4pd1c7] {
    border: 1px solid var(--tbs-border-color);
    border-radius: var(--tbs-border-radius);
    background: white;
    min-height: calc(1.5em + 0.5rem + 2px);
    display: flex;
    align-items: center;
    padding: 0.15rem 0.4rem;
    cursor: text;
    transition: border-color 0.2s;
}

.tbs-multi-select-input-container:focus-within[b-dqlp4pd1c7] {
    border-color: var(--tbs-chip-on-bg);
    box-shadow: 0 0 0 3px rgba(26, 111, 168, 0.1);
}

.tbs-multi-select-input[b-dqlp4pd1c7] {
    flex: 1;
    min-width: 150px;
    border: none;
    outline: none;
    padding: 0.1rem 0.2rem;
    font-family: inherit;
    font-size: var(--tbs-text-sm);
}

.tbs-multi-select-dropdown[b-dqlp4pd1c7] {
    position: absolute;
    top: 100%;
    left: auto;
    right: 0;
    width: max-content;
    min-width: 100%;
    max-width: min(36rem, calc(100vw - 2rem));
    background: white;
    border: 1px solid var(--tbs-border-color);
    border-radius: var(--tbs-border-radius);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    margin-top: 0.25rem;
    max-height: 300px;
    overflow-y: auto;
}

.tbs-multi-select-tags[b-dqlp4pd1c7] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.2rem;
    padding: 0 0;
    width: 100%;
}

.tbs-multi-select-tag[b-dqlp4pd1c7] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    background: var(--tbs-badge-bg);
    color: var(--tbs-badge-color);
    border: 1px solid var(--tbs-badge-border);
    border-radius: var(--tbs-border-radius-sm);
    padding: 0.1rem 0.3rem;
    font-size: var(--tbs-text-sm);
    -webkit-user-select: none;
    user-select: none;
    transition: background-color 0.15s;
}

.tbs-multi-select-tag:hover[b-dqlp4pd1c7],
.tbs-multi-select-tag:focus[b-dqlp4pd1c7] {
    background-color: rgba(26, 111, 168, 0.15);
    outline: none;
}

.tbs-multi-select-tag-icon[b-dqlp4pd1c7],
.tbs-multi-select-option-icon[b-dqlp4pd1c7] {
    font-size: 0.85rem;
}

.tbs-multi-select-option-icon[b-dqlp4pd1c7] {
    opacity: 0.7;
    margin-right: 0.3rem;
}

.tbs-multi-select-tag-remove[b-dqlp4pd1c7] {
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    padding: 0;
    margin-left: 0.2rem;
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.tbs-multi-select-tag-remove:hover[b-dqlp4pd1c7] {
    transform: scale(1.1);
}

.tbs-multi-select-tag-remove-icon[b-dqlp4pd1c7] {
    font-size: 0.9rem;
}

.tbs-multi-select-option[b-dqlp4pd1c7] {
    padding: 0.5rem 0.75rem !important;
    font-size: var(--tbs-text-xs);
    line-height: 1.25;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    overflow-wrap: anywhere;
    transition: background-color 0.1s;
}

.tbs-multi-select-option:hover[b-dqlp4pd1c7],
.tbs-multi-select-option[role="option"][aria-selected="true"][b-dqlp4pd1c7],
.tbs-multi-select-option--highlighted[b-dqlp4pd1c7] {
    background-color: var(--tbs-selection-bg);
}

.tbs-multi-select-option--disabled[b-dqlp4pd1c7] {
    opacity: 0.5;
    cursor: not-allowed;
    color: var(--tbs-text-muted);
}

.tbs-multi-select-loading[b-dqlp4pd1c7],
.tbs-multi-select-empty[b-dqlp4pd1c7] {
    padding: 1rem;
    text-align: center;
    color: var(--tbs-text-muted);
}

.tbs-multi-select-spinner[b-dqlp4pd1c7] {
    font-size: 1.2rem;
    animation: spin-b-dqlp4pd1c7 1s linear infinite;
}

.tbs-multi-select-loading-message[b-dqlp4pd1c7] {
    margin-top: 0.5rem;
    font-size: var(--tbs-text-sm);
}

.tbs-multi-select-empty[b-dqlp4pd1c7] {
    font-style: italic;
    font-size: var(--tbs-text-sm);
}

.tbs-multi-select-create-tag[b-dqlp4pd1c7] {
    padding: 0.75rem 1rem;
    cursor: pointer;
    color: var(--tbs-chip-on-bg);
    font-weight: 600;
    border-top: 1px solid var(--tbs-border-color);
}

.tbs-multi-select-create-tag:hover[b-dqlp4pd1c7] {
    background-color: var(--tbs-selection-bg);
}

.tbs-multi-select-create-icon[b-dqlp4pd1c7] {
    margin-right: 0.4rem;
}

.tbs-multi-select-errors[b-dqlp4pd1c7] {
    margin-top: 0.5rem;
}

.tbs-multi-select-error[b-dqlp4pd1c7] {
    color: var(--tbs-danger-text);
    font-size: var(--tbs-text-xs);
    margin-top: 0.25rem;
}

.tbs-multi-select-error-icon[b-dqlp4pd1c7] {
    margin-right: 0.2rem;
}

@keyframes spin-b-dqlp4pd1c7 {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}
/* _content/ThalabusWeb/RazorComponents/DocumentComponents/DocumentCard.razor.rz.scp.css */
/* Document card layout */
.doc-card[b-v051odrqft] {
    background: var(--document-card-color);
    border: 1px solid var(--color-primary-1);
    padding: 10px 12px;
    border-radius: 8px;
    min-width: 180px;
    max-width: 320px;
    box-shadow: 0 1px 2px rgba(16,24,40,0.03);
    transition: transform 0.12s ease, box-shadow 0.12s ease, min-width 0.2s ease;
}

/* Collapsed keywords shown below title when card is collapsed */
.doc-card-collapsed-keywords[b-v051odrqft] {
    margin-top: 6px;
    padding-left: 2px;
    color: var(--color-primary-2);
    font-size: 0.9rem;
    max-width: calc(100% - 20px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-card-collapsed-keywords .error[b-v051odrqft] {
    color: var(--color-destructive-0);
}

/* Category badges container */
.doc-card-collapsed-categories[b-v051odrqft] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem; /* reduced gap to make badges more compact */
    width: 100%;
    max-width: calc(100% - 20px);
}

/* Individual category badge moved to global site.css */

    .doc-card:hover[b-v051odrqft] {
        transform: translateY(-4px);
        box-shadow: 0 6px 18px rgba(16,24,40,0.08);
    }

/* Collapsed state: increased min-width for better layout */
.doc-card.collapsed[b-v051odrqft] {
    min-width: 280px;
}

/* Expanded state: full width */
.doc-card:not(.collapsed)[b-v051odrqft] {
    min-width: 60%;
    max-width: 80%;
}

/* Title row: flex container for title and ID */
.doc-card-title-row[b-v051odrqft] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    flex-wrap: nowrap;
    gap: 0.5rem;
}


.doc-card-title[b-v051odrqft] {
    font-weight: 600;
    color: var(--color-accent-0);
    text-decoration: none;
    margin-bottom: 0;
    font-size: 1.1rem;
    line-height: 1.2;
    min-width: 0;
    max-width: 60%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
    flex-shrink: 1;
    padding-right: 0.2em; /* prevent italic text from being clipped on the right */
}

/* Collapsed card title: reduce max-width to leave room for ID and button */
.doc-card.collapsed .doc-card-title[b-v051odrqft] {
    max-width: 50%;
}

.doc-card-title:hover[b-v051odrqft] {
    text-decoration: underline;
}

.doc-card-title.doc-card-title-missing[b-v051odrqft] {
    font-style: italic;
    opacity: 0.55;
}

.doc-card-session[b-v051odrqft] {
    /* add 12px space before each session block */
    margin-top: 12px;
}

   .doc-card-session:not(:first-child)[b-v051odrqft] { margin-top: 12px; }

.doc-card-meta[b-v051odrqft] {
    font-size: 0.85rem;
    color: var(--color-primary-2);
}

/* ID and buttons container: pushed to the right */
.doc-card-right-section[b-v051odrqft] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

/* ID: right aligned, not bold */
.doc-card-id[b-v051odrqft] {
    font-weight: normal;
    color: #555;
    font-size: 0.66em;
    line-height: 1.2;
    display: flex;
    font-family: 'Fira Mono', 'Consolas', 'Menlo', 'Monaco', 'Courier New', monospace;
    white-space: nowrap;
    align-items: center;
}

.doc-card-meta a[b-v051odrqft] {
    color: var(--color-primary-3);
    text-decoration: none;
}

    .doc-card-meta a:hover[b-v051odrqft] {
        text-decoration: underline;
    }

@media (max-width: 640px) {
    .doc-card[b-v051odrqft] {
        min-width: 60%;
        max-width: 80%;
        flex: 1 1 100%;
    }
    
    .doc-card.collapsed[b-v051odrqft] {
        min-width: 80%;
    }
    
    .doc-card-title[b-v051odrqft] {
        max-width: 80%;
        min-width: 0;
    }
}

/* Collapse/expand button styles for DocumentCard, based on SearchTable */
.doc-card-buttons-top-right[b-v051odrqft] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.doc-card-button-expand[b-v051odrqft],
.doc-card-button-contract[b-v051odrqft] {
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    background-color: var(--color-primary-0);
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease, transform 0.1s ease;
}

.doc-card-button-expand:hover[b-v051odrqft],
.doc-card-button-contract:hover[b-v051odrqft] {
    background-color: var(--color-primary-1);
    transform: scale(1.05);
}

/* Keywords container with monospaced font */
.doc-card-keywords[b-v051odrqft] {
    font-family: 'Fira Mono', 'Consolas', 'Menlo', 'Monaco', 'Courier New', monospace;
    /* details background from palette */
    background: var(--document-card-details-color);
    backdrop-filter: blur(6px);
    padding: 0.5rem;
    border-radius: 12px;
    border: 1px solid rgba(0,0,0,0.04);
    color: var(--color-primary-3);
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    align-items: center;
    box-shadow: 0 6px 18px rgba(16,24,40,0.04);
    transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Inline toggle next to ellipsis */
.doc-card-keywords-toggle[b-v051odrqft] {
    display: inline-flex;
    align-items: center;
    margin-left: 0.25rem;
}

/* Keywords ellipsis indicator */
.doc-card-keywords-ellipsis[b-v051odrqft] {
    color: var(--color-primary-2);
    font-weight: bold;
    margin: 0 0.25rem;
}

/* Container for keywords expand/collapse button */
.doc-card-keyword-expand-container[b-v051odrqft] {
    display: flex;
    margin-top: 0.5rem;
    justify-content: flex-start;
}

/* Chapters list styling */
.doc-card-chapters-list[b-v051odrqft] {
    list-style: none;
    padding: 0;
    margin-top: 0.5rem;
}

.doc-card-chapter-item[b-v051odrqft] {
    margin-bottom: 0.75rem;
    border-left: 3px solid var(--color-primary-1);
    padding-left: 0.75rem;
}

/* Space between chapter title row and expanded chapter content */
.doc-card-chapter-content[b-v051odrqft] {
    margin-top: 0.45rem;
}

/* Chapter content base styling: padding and visual match to detail panels */
.doc-card-chapter-content[b-v051odrqft] {
    padding: 0.6rem; /* comfortable padding on all sides */
    background: var(--document-card-details-color);
    border-radius: 12px;
    border: 1px solid rgba(0,0,0,0.04);
    box-shadow: 0 6px 12px rgba(16,24,40,0.035);
    color: var(--color-primary-3);
    line-height: 1.45;
    box-sizing: border-box;
}

.doc-card-chapter-number[b-v051odrqft] {
    display: inline-block;
    width: 28px;
    text-align: right;
    margin-right: 0.5rem;
    font-weight: 600;
    color: var(--color-primary-2);
}

/* Chapter title row with expand/collapse button */
.doc-card-chapter-title-row[b-v051odrqft] {
    display: flex;
    align-items: center;
    justify-content: flex-start; /* keep title and button inline, button will follow immediately */
    gap: 0.25rem;
}

.doc-card-chapter-title[b-v051odrqft] {
    display: inline-block;
    font-weight: 500;
    color: var(--color-primary-3);
    /* plain title: no box, no background */
    background: transparent;
    backdrop-filter: none;
    padding: 0; /* keep inline spacing minimal */
    border-radius: 0;
    border: none;
    /* reserve space for number and button */
    max-width: calc(100% - 80px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-shadow: none;
    transition: none;
}

/* Chapter button container */
.doc-card-chapter-button-container[b-v051odrqft] {
    flex-shrink: 0;
    display: inline-flex;
    margin-left: 0.25rem; /* small gap from title */
    align-items: center;
}

/* Hover: slightly darken chapter title and content for emphasis */
.doc-card-chapter-item .doc-card-chapter-title[b-v051odrqft],
.doc-card-chapter-item .doc-card-chapter-content[b-v051odrqft] {
    transition: background 0.15s ease, box-shadow 0.15s ease, transform 0.12s ease;
}

.doc-card-chapter-item:hover .doc-card-chapter-title[b-v051odrqft] {
    /* use same details background color as summary/keywords for visual consistency */
    background: var(--document-card-details-color);
    border-radius: 12px;
    box-shadow: 0 4px 10px rgba(16,24,40,0.05);
}

.doc-card-chapter-item:hover .doc-card-chapter-content[b-v051odrqft] {
    background: var(--document-card-details-color);
    box-shadow: 0 8px 22px rgba(16,24,40,0.06);
}

.doc-card-summary[b-v051odrqft] {
    /* details background for summary */
    background: var(--document-card-details-color);
    backdrop-filter: blur(6px);
    padding: 0.5rem;
    border-radius: 12px;
    border: 1px solid rgba(0,0,0,0.04);
    box-shadow: 0 6px 18px rgba(16,24,40,0.04);
    transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Keyword language selector */
.doc-card-keyword-language[b-v051odrqft] {
    margin-left: 0.5rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.85rem;
    border: 1px solid var(--color-primary-1);
    border-radius: 4px;
    background-color: var(--color-primary-0);
    color: var(--color-primary-3);
}

/* Summary and keywords language button bar */
.doc-card-summary-header[b-v051odrqft] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.5rem;
}

.doc-card-summary-languages[b-v051odrqft],
.doc-card-keywords-languages[b-v051odrqft] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.doc-card-language-button[b-v051odrqft] {
    font-size: 0.85rem;
    color: var(--color-primary-3);
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 3px;
    text-decoration-thickness: 1.5px;
    cursor: pointer;
    transition: text-decoration-color 0.16s ease, color 0.16s ease;
    user-select: none;
    font-weight: 500;
}

.doc-card-language-button:hover[b-v051odrqft] {
    color: var(--color-accent-0);
    text-decoration-color: var(--color-accent-0);
}

.doc-card-language-button-active[b-v051odrqft] {
    color: var(--color-accent-0);
    text-decoration-color: var(--color-accent-0);
    font-weight: 600;
}

/* Chapter language button bar */
.doc-card-chapter-languages[b-v051odrqft] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.doc-card-meta-block[b-v051odrqft] {
    /* keep a neutral style but visually minimal */
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
    overflow-x: auto;
}

/* Translation progress indicators - now in ProgressiveTranslationDisplay.razor.css */
.doc-card-summary-text[b-v051odrqft] {
    position: relative;
    white-space: pre-line; /* Preserve line breaks from HTML */
    line-height: 1.6; /* Better readability with more spacing */
}

.doc-card-chapter-text[b-v051odrqft] {
    position: relative;
    white-space: pre-line; /* Preserve line breaks from HTML */
    line-height: 1.6; /* Better readability with more spacing */
}
/* _content/ThalabusWeb/RazorComponents/DocumentComponents/DocumentConfiguration.razor.rz.scp.css */
.loaded-document[b-qez513ks6l] {
    width: 100%;
    height: 100%;
    padding: 6px;
    pointer-events: auto;
    text-align: left;
    font-size: 0.8rem;
    line-height: 24px;
    font-weight: 400;
    font-variation-settings: unset;
    overflow-x: auto;
    background-color: var(--color-primary-0);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    position: relative;
}

.control-buttons[b-qez513ks6l] {
    margin-right: 10px;
}

.control-buttons-row[b-qez513ks6l] {
    display: flex;
    justify-content: right;
}

.control-buttons-centered[b-qez513ks6l] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    height: 40px;
}

.align-left-checkbox[b-qez513ks6l] {
    margin-left: 0;
    margin-right: auto;
}

.loaded-document-title[b-qez513ks6l] {
    font-weight: bold;
    font-size: 1rem;
}

.loaded-document-code[b-qez513ks6l] {
    color: black;
    white-space: pre-wrap;
    word-wrap: break-word;
}

.loaded-document-content[b-qez513ks6l] {
    word-wrap: break-word;
    white-space: normal;
    transition: opacity 0.25s ease-in-out, transform 0.25s ease-in-out;
    opacity: 1;
    transform: translateX(0);
}

    .loaded-document-content.fade-out[b-qez513ks6l] {
        opacity: 0;
        transform: translateX(-40px);
    }

.page-images[b-qez513ks6l] {
    display: inline-block;
    width: 100%;
    max-height: 50%;
    overflow-y: scroll;
    margin: 0 auto;
    text-align: center;
}

.page-image[b-qez513ks6l] {
    border-radius: 12px;
    width: auto;
    height: auto;
}

@media (max-width: 1500px) {
    .page-image[b-qez513ks6l] {
        max-width: 1000px;
    }
}

@media (max-width: 1200px) {
    .page-image[b-qez513ks6l] {
        max-width: 800px;
    }
}

@media (max-width: 992px) {
    .page-image[b-qez513ks6l] {
        max-width: 600px;
    }
}

@media (max-width: 576px) {
    .page-image[b-qez513ks6l] {
        max-width: 100%;
    }
}

.page-category[b-qez513ks6l] {
    margin-left: 8px;
}
    .page-category > input[b-qez513ks6l] {
        background-color: lightgray;
        width: 64px;
    }

.div-title[b-qez513ks6l] {
    display: flex;
    justify-content: center;
    align-items: center;
}

    .div-title span[b-qez513ks6l] {
        font-weight: bold;
        font-size: 1.5rem;
    }

.div-content[b-qez513ks6l] {
    margin-top: 24px;
    display: flex;
    gap: 20px;
    justify-content: center;
}

    .div-content > div[b-qez513ks6l] {
        background-color: var(--color-primary-1);
        border: 2px solid rgba(255, 255, 255, 0.3);
        border-radius: 12px;
        box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
        padding: 24px;
    }

.div-content-box[b-qez513ks6l] {
    display: flex;
    flex-direction: column;
    width: 50%;
}

.form-content[b-qez513ks6l] {
    width: 100%;
    padding: 6px;
    pointer-events: auto;
    text-align: left;
    font-size: 0.8rem;
    line-height: 0.8rem;
    font-weight: 400;
    font-variation-settings: unset;
    overflow-x: auto;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    position: relative;
}

    .form-content.form-metadata[b-qez513ks6l] {
        background-color: var(--color-primary-2);
    }

    .form-content.form-data[b-qez513ks6l] {
        background-color: var(--color-accent-0);
    }

    .form-content ul[b-qez513ks6l],
    .form-content ol[b-qez513ks6l],
    .form-content li[b-qez513ks6l] {
        margin-left: 4px;
    }

.form-group[b-qez513ks6l] {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}

    .form-group label[b-qez513ks6l] {
        margin-right: 8px;
        min-width: 120px;
    }

    .form-group select[b-qez513ks6l],
    .form-group input[b-qez513ks6l] {
        flex: 1;
    }

.classifier-area[b-qez513ks6l] {
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    overflow-x: auto;
    display: flex;
    gap: 12px;
}

.classifier-data[b-qez513ks6l] {
    display: flex;
    flex-direction: column;
}

.link-button[b-qez513ks6l] {
    background: none;
    border: none;
    color: var(--color-primary-4);
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
    font: inherit;
}
/* _content/ThalabusWeb/RazorComponents/DocumentComponents/LoadedDocument.razor.rz.scp.css */
.control-buttons[b-ct0r8wjuon] {
    margin-right: 10px;
}

.document-change-buttons[b-ct0r8wjuon] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-left: auto;
}

.doc-action-icon-btn[b-ct0r8wjuon] {
    background: none;
    border: none;
    padding: 2px 4px;
    cursor: pointer;
    font-size: 1.2rem;
    color: var(--color-primary-text, #333);
    line-height: 1;
    border-radius: 4px;
    transition: color 0.15s, opacity 0.15s;
}

.doc-action-icon-btn:hover:not(.doc-action-icon-btn--disabled)[b-ct0r8wjuon] {
    color: var(--color-accent, #0d6efd);
}

.doc-action-icon-btn--danger:hover:not(.doc-action-icon-btn--disabled)[b-ct0r8wjuon] {
    color: var(--color-danger, #dc3545);
}

.doc-action-icon-btn--disabled[b-ct0r8wjuon],
.doc-action-icon-btn:disabled[b-ct0r8wjuon] {
    opacity: 0.35;
    cursor: not-allowed;
    color: var(--color-muted, #6c757d);
}

.doc-action-icon-btn--busy[b-ct0r8wjuon] {
    opacity: 0.6;
    cursor: wait;
}

.doc-action-icon-btn--spin[b-ct0r8wjuon] {
    display: inline-block;
    animation: doc-spin-b-ct0r8wjuon 0.8s linear infinite;
}

@keyframes doc-spin-b-ct0r8wjuon {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.versions-dropdown-wrapper[b-ct0r8wjuon] {
    position: relative;
}

.versions-dropdown[b-ct0r8wjuon] {
    position: relative;
    display: inline-block;
}

.versions-dropdown-toggle[b-ct0r8wjuon] {
    display: flex;
    align-items: center;
    gap: 4px;
    background: var(--color-primary-1, #e9ecef);
    border: 1px solid var(--color-primary-3, #ced4da);
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 0.78rem;
    cursor: pointer;
    white-space: nowrap;
    min-width: 3.5rem;
}

.versions-dropdown-arrow[b-ct0r8wjuon] {
    font-size: 0.6rem;
    opacity: 0.6;
}

.versions-dropdown-menu[b-ct0r8wjuon] {
    position: absolute;
    right: 0;
    top: calc(100% + 4px);
    background: var(--color-primary-0, #fff);
    border: 1px solid var(--color-primary-3, #ced4da);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    min-width: 200px;
    overflow: hidden;
}

.versions-dropdown-item[b-ct0r8wjuon] {
    background: none;
    border: none;
    text-align: left;
    padding: 5px 12px;
    font-size: 0.78rem;
    cursor: pointer;
    white-space: nowrap;
}

    .versions-dropdown-item:hover[b-ct0r8wjuon] {
        background: var(--color-primary-1, #e9ecef);
    }

    .versions-dropdown-item--active[b-ct0r8wjuon] {
        color: var(--color-accent-0, #0d6efd);
        font-weight: 600;
    }

.control-buttons-row[b-ct0r8wjuon] {
    display: flex;
    justify-content: right;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    margin: 0;
}

.control-buttons-centered[b-ct0r8wjuon] {
    display: flex;
    justify-content: center;
    align-items: center;
}

.loaded-document[b-ct0r8wjuon] {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0;
    pointer-events: auto;
    text-align: left;
    font-size: 0.8rem;
    line-height: 24px;
    font-weight: 400;
    font-variation-settings: unset;
    background-color: var(--color-primary-0);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 0;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.loaded-document-title[b-ct0r8wjuon] {
    font-weight: bold;
    font-size: 1rem;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
}

.loaded-document-content[b-ct0r8wjuon] {
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
    white-space: normal;
    transition: opacity 0.25s ease-in-out, transform 0.25s ease-in-out;
    opacity: 1;
    transform: translateX(0);
    flex: 1;
    overflow-x: hidden;
    overflow-y: auto;
    min-height: 0;
    max-width: 100%;
    padding: 4px;
    box-sizing: border-box;
    margin: 0;
}

.loaded-document-code[b-ct0r8wjuon] {
    color: black;
    white-space: pre-wrap;
    word-wrap: break-word;
    background-color: transparent;
}

.loaded-document-source-editor[b-ct0r8wjuon] {
    width: 100%;
    height: 70vh;
    padding: 1rem;
    border: 1px solid var(--color-primary-2);
    border-radius: 6px;
    background-color: var(--color-primary-0);
    color: var(--color-primary-4);
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.875rem;
    line-height: 1.4;
    resize: vertical;
    outline: none;
    box-sizing: border-box;
    white-space: pre;
    overflow-wrap: normal;
    overflow-x: auto;
    overflow-y: auto;
}

.loaded-document-source-editor:focus[b-ct0r8wjuon] {
    border-color: var(--color-accent-0);
    box-shadow: 0 0 0 2px rgba(var(--color-accent-0-rgb), 0.2);
}

.btn[b-ct0r8wjuon] {
    padding: 0.375rem 0.75rem;
    margin: 0.125rem;
    border: 1px solid transparent;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    line-height: 1.5;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    user-select: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.btn-primary[b-ct0r8wjuon] {
    color: #fff;
    background-color: var(--color-accent-0);
    border-color: var(--color-accent-0);
}

.btn-primary:hover[b-ct0r8wjuon] {
    background-color: var(--color-accent-1);
    border-color: var(--color-accent-1);
}

.btn-secondary[b-ct0r8wjuon] {
    color: var(--color-primary-4);
    background-color: var(--color-primary-1);
    border-color: var(--color-primary-2);
}

.btn-secondary:hover[b-ct0r8wjuon] {
    color: var(--color-primary-4);
    background-color: var(--color-primary-2);
    border-color: var(--color-primary-3);
}

.btn-sm[b-ct0r8wjuon] {
    padding: 0.25rem 0.5rem;
    font-size: 0.8125rem;
}

.loaded-document-content.fade-out[b-ct0r8wjuon] {
    opacity: 0;
    transform: translateX(-40px);
}

/* Enhanced text content styles - targets HTML elements within EnhancedTextOnScreen */
.loaded-document-content[b-ct0r8wjuon]  h1,
.loaded-document-content[b-ct0r8wjuon]  h2,
.loaded-document-content[b-ct0r8wjuon]  h3,
.loaded-document-content[b-ct0r8wjuon]  h4,
.loaded-document-content[b-ct0r8wjuon]  h5,
.loaded-document-content[b-ct0r8wjuon]  h6 {
    color: var(--color-primary-4);
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.loaded-document-content[b-ct0r8wjuon]  h1 {
    font-size: 1.5rem;
    border-bottom: 2px solid var(--color-accent-0);
    padding-bottom: 0.5rem;
}

.loaded-document-content[b-ct0r8wjuon]  h2 {
    font-size: 1.25rem;
    border-bottom: 1px solid var(--color-accent-1);
    padding-bottom: 0.25rem;
}

.loaded-document-content[b-ct0r8wjuon]  h3 {
    font-size: 0.95rem;
}

.loaded-document-content[b-ct0r8wjuon]  p {
    margin-bottom: 1rem;
    line-height: 1.4;
    color: var(--color-primary-3);
}

.loaded-document-content[b-ct0r8wjuon]  ul,
.loaded-document-content[b-ct0r8wjuon]  ol {
    margin-bottom: 1rem;
    padding-left: 1.5rem;
}

.loaded-document-content[b-ct0r8wjuon]  li {
    margin-bottom: 0.5rem;
    line-height: 1.4;
    color: var(--color-primary-3);
}

.loaded-document-content[b-ct0r8wjuon]  blockquote {
    border-left: 4px solid var(--color-accent-0);
    margin: 1rem 0;
    padding: 0.5rem 1rem;
    background-color: var(--color-primary-1);
    font-style: italic;
}

.loaded-document-content[b-ct0r8wjuon]  table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
    background-color: var(--color-primary-0);
}

.loaded-document-content[b-ct0r8wjuon]  th,
.loaded-document-content[b-ct0r8wjuon]  td {
    border: 1px solid var(--color-primary-2);
    padding: 0.5rem;
    text-align: left;
}

.loaded-document-content[b-ct0r8wjuon]  th {
    background-color: var(--color-primary-1);
    font-weight: 600;
    color: var(--color-primary-4);
}

.loaded-document-content[b-ct0r8wjuon]  a {
    color: var(--color-accent-0);
    text-decoration: none;
}

    .loaded-document-content[b-ct0r8wjuon]  a:hover {
        color: var(--color-accent-2);
        text-decoration: underline;
    }

.loaded-document-content[b-ct0r8wjuon]  img {
    max-width: 100%;
    height: auto;
    margin: 1rem 0;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.loaded-document-content[b-ct0r8wjuon]  pre {
    background-color: var(--color-primary-1);
    border: 1px solid var(--color-primary-2);
    border-radius: 4px;
    padding: 1rem;
    overflow-x: auto;
    margin: 1rem 0;
}

.loaded-document-content[b-ct0r8wjuon]  code {
    background-color: var(--color-primary-1);
    padding: 0.2rem 0.4rem;
    border-radius: 3px;
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.875rem;
}

.loaded-document-content[b-ct0r8wjuon]  pre code {
    background-color: transparent;
    padding: 0;
    border-radius: 0;
}

/* Custom Document Elements Styling */

/* Title container styling */
.loaded-document-content div[id="title"][b-ct0r8wjuon] {
    margin: 2rem 0 1.5rem 0;
    padding: 1rem;
    background-color: var(--color-primary-1);
    border-left: 4px solid var(--color-accent-0);
    border-radius: 4px;
}

/* Main document title */
.loaded-document-content div[id="title"] title[b-ct0r8wjuon] {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--color-primary-4);
    margin: 0;
    line-height: 1.3;
}

/* Chapter container styling */
.loaded-document-content div[id^="chapter-"][b-ct0r8wjuon] {
    margin: 2rem 0;
    padding: 1.5rem;
    background-color: var(--color-primary-0);
    border: 1px solid var(--color-primary-2);
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

/* Chapter status styling */
.loaded-document-content div[id^="chapter-"] status[b-ct0r8wjuon] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1rem;
    background-color: var(--color-primary-2);
    color: var(--color-primary-4);
}

/* Status color variations */
.loaded-document-content div[id^="chapter-"] status:contains("open")[b-ct0r8wjuon] {
    background-color: #e3f2fd;
    color: #1976d2;
}

.loaded-document-content div[id^="chapter-"] status:contains("in progress")[b-ct0r8wjuon] {
    background-color: #fff3e0;
    color: #f57c00;
}

.loaded-document-content div[id^="chapter-"] status:contains("to be completed")[b-ct0r8wjuon] {
    background-color: #fce4ec;
    color: #c2185b;
}

.loaded-document-content div[id^="chapter-"] status:contains("in review")[b-ct0r8wjuon] {
    background-color: #f3e5f5;
    color: #7b1fa2;
}

.loaded-document-content div[id^="chapter-"] status:contains("complete")[b-ct0r8wjuon] {
    background-color: #e8f5e8;
    color: #388e3c;
}

/* Chapter title styling */
.loaded-document-content div[id^="chapter-"] title[b-ct0r8wjuon] {
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--color-primary-4);
    margin: 1rem 0 0.75rem 0;
    line-height: 1.4;
    border-bottom: 2px solid var(--color-accent-1);
    padding-bottom: 0.5rem;
}

/* Summary styling */
.loaded-document-content div[id^="chapter-"] summary[b-ct0r8wjuon] {
    display: block;
    margin: 1rem 0;
    padding: 1rem;
    background-color: var(--color-primary-1);
    border-radius: 6px;
    font-style: italic;
    line-height: 1.6;
    color: var(--color-primary-3);
    border-left: 3px solid var(--color-accent-1);
    position: relative;
}

/* Summary before pseudo-element for visual indicator */
.loaded-document-content div[id^="chapter-"] summary[b-ct0r8wjuon]::before {
    content: "📝 Summary";
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--color-accent-0);
    margin-bottom: 0.5rem;
    font-style: normal;
}

/* Language indicator styling */
.loaded-document-content title[lang][b-ct0r8wjuon]::after,
.loaded-document-content summary[lang][b-ct0r8wjuon]::after {
    content: attr(lang);
    display: inline-block;
    margin-left: 0.5rem;
    padding: 0.1rem 0.4rem;
    background-color: var(--color-accent-1);
    color: white;
    font-size: 0.6rem;
    border-radius: 3px;
    text-transform: uppercase;
    font-weight: 500;
    vertical-align: super;
}

/* Ensure custom elements are displayed as block elements */
.loaded-document-content title[b-ct0r8wjuon],
.loaded-document-content status[b-ct0r8wjuon],
.loaded-document-content summary[b-ct0r8wjuon] {
    display: block;
}

/* Custom elements hover effects */
.loaded-document-content div[id^="chapter-"]:hover[b-ct0r8wjuon] {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Responsive text sizing */
@media (max-width: 768px) {
    .loaded-document-content[b-ct0r8wjuon] {
        font-size: 0.875rem;
        line-height: 1.5;
    }
    
    .loaded-document-content h1[b-ct0r8wjuon] {
        font-size: 1.25rem;
    }
    
    .loaded-document-content h2[b-ct0r8wjuon] {
        font-size: 1.125rem;
    }
    
    .loaded-document-source-editor[b-ct0r8wjuon] {
        height: 60vh;
        font-size: 0.8rem;
    }
    
    .control-buttons-row[b-ct0r8wjuon] {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
    
    .loaded-document[b-ct0r8wjuon] {
        max-height: calc(100vh - 280px);
        height: auto;
    }
    
    /* Responsive custom elements */
    .loaded-document-content div[id="title"] title[b-ct0r8wjuon] {
        font-size: 1.5rem;
    }
    
    .loaded-document-content div[id^="chapter-"] title[b-ct0r8wjuon] {
        font-size: 1.2rem;
    }
    
    .loaded-document-content div[id^="chapter-"][b-ct0r8wjuon] {
        padding: 1rem;
        margin: 1.5rem 0;
    }
}

/* _content/ThalabusWeb/RazorComponents/DocumentComponents/LoadedDocumentOriginalOrExtracted.razor.rz.scp.css */
.control-buttons[b-66bnwb81o2] {
    margin-right: 10px;
}

.control-buttons-row[b-66bnwb81o2] {
    display: flex;
    justify-content: right;
    align-items: center;
    gap: 10px;
}

.control-buttons-centered[b-66bnwb81o2] {
    display: flex;
    justify-content: center;
    align-items: center;
}

.loaded-document[b-66bnwb81o2] {
    width: 100%;
    padding: 6px;
    pointer-events: auto;
    text-align: left;
    font-size: 0.8rem;
    line-height: 24px;
    font-weight: 400;
    font-variation-settings: unset;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 320px);
    background-color: var(--color-primary-0);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    position: relative;
}

.loaded-document-title[b-66bnwb81o2] {
    font-weight: bold;
    font-size: 1rem;
}

.loaded-document-content[b-66bnwb81o2] {
    word-wrap: break-word;
    white-space: normal;
    transition: opacity 0.25s ease-in-out, transform 0.25s ease-in-out;
    opacity: 1;
    transform: translateX(0);
    overflow-y: auto;
    overflow-x: hidden;
    flex: 1;
    min-height: 0;
    padding: 0.5rem;
    box-sizing: border-box;
}

.loaded-document-code[b-66bnwb81o2] {
    color: black;
    white-space: pre-wrap;
    word-wrap: break-word;
    background-color: transparent;
}

.loaded-document-source-editor[b-66bnwb81o2] {
    width: 100%;
    height: 70vh;
    padding: 1rem;
    border: 1px solid var(--color-primary-2);
    border-radius: 6px;
    background-color: var(--color-primary-0);
    color: var(--color-primary-4);
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.875rem;
    line-height: 1.4;
    resize: vertical;
    outline: none;
    box-sizing: border-box;
    white-space: pre;
    overflow-wrap: normal;
    overflow-x: auto;
    overflow-y: auto;
}

.loaded-document-source-editor:focus[b-66bnwb81o2] {
    border-color: var(--color-accent-0);
    box-shadow: 0 0 0 2px rgba(var(--color-accent-0-rgb), 0.2);
}

.edit-extracted-data[b-66bnwb81o2] {
    background-color: var(--chat-line-background-gui-component);
}

/* Translation buttons styling */
.translation-buttons[b-66bnwb81o2] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    margin: 0;
}

.translation-buttons-spacer[b-66bnwb81o2] {
    display: flex;
    align-items: center;
    gap: 0.0rem;
    margin-left: auto;
    padding: 0;
    margin: 0;
}

.translation-buttons label[b-66bnwb81o2] {
    margin: 0;
    white-space: nowrap;
    font-weight: 600;
    font-size: 0.875rem;
}

.translation-language-button[b-66bnwb81o2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.15rem 0.2rem;
    color: var(--color-accent-0);
    background: none;
    border: none;
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    user-select: none;
    text-decoration: none;
}

.translation-language-button:hover[b-66bnwb81o2] {
    color: var(--color-accent-1);
    text-decoration: underline;
}

.translation-language-button.translation-active[b-66bnwb81o2] {
    color: var(--color-accent-0);
    font-weight: 700;
    text-decoration: underline;
}

.translation-language-button.translation-active:hover[b-66bnwb81o2] {
    color: var(--color-accent-1);
}

/* Enhanced text content styles - targets HTML elements within EnhancedTextOnScreen */
.loaded-document-content h1[b-66bnwb81o2],
.loaded-document-content h2[b-66bnwb81o2],
.loaded-document-content h3[b-66bnwb81o2],
.loaded-document-content h4[b-66bnwb81o2],
.loaded-document-content h5[b-66bnwb81o2],
.loaded-document-content h6[b-66bnwb81o2] {
    color: var(--color-primary-4);
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.loaded-document-content h1[b-66bnwb81o2] {
    font-size: 1.5rem;
    border-bottom: 2px solid var(--color-accent-0);
    padding-bottom: 0.5rem;
}

.loaded-document-content h2[b-66bnwb81o2] {
    font-size: 1.25rem;
    border-bottom: 1px solid var(--color-accent-1);
    padding-bottom: 0.25rem;
}

.loaded-document-content h3[b-66bnwb81o2] {
    font-size: 1.1rem;
}

.loaded-document-content p[b-66bnwb81o2] {
    margin-bottom: 1rem;
    line-height: 1.6;
    color: var(--color-primary-3);
}

.loaded-document-content ul[b-66bnwb81o2],
.loaded-document-content ol[b-66bnwb81o2] {
    margin-bottom: 1rem;
    padding-left: 1.5rem;
}

.loaded-document-content li[b-66bnwb81o2] {
    margin-bottom: 0.5rem;
    color: var(--color-primary-3);
}

.loaded-document-content blockquote[b-66bnwb81o2] {
    border-left: 4px solid var(--color-accent-0);
    margin: 1rem 0;
    padding: 0.5rem 1rem;
    background-color: var(--color-primary-1);
    font-style: italic;
}

.loaded-document-content table[b-66bnwb81o2] {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
    background-color: var(--color-primary-0);
}

.loaded-document-content th[b-66bnwb81o2],
.loaded-document-content td[b-66bnwb81o2] {
    border: 1px solid var(--color-primary-2);
    padding: 0.5rem;
    text-align: left;
}

.loaded-document-content th[b-66bnwb81o2] {
    background-color: var(--color-primary-1);
    font-weight: 600;
    color: var(--color-primary-4);
}

.loaded-document-content a[b-66bnwb81o2] {
    color: var(--color-accent-0);
    text-decoration: none;
}

.loaded-document-content a:hover[b-66bnwb81o2] {
    color: var(--color-accent-2);
    text-decoration: underline;
}

.loaded-document-content img[b-66bnwb81o2] {
    max-width: 100%;
    height: auto;
    margin: 1rem 0;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.loaded-document-content pre[b-66bnwb81o2] {
    background-color: var(--color-primary-1);
    border: 1px solid var(--color-primary-2);
    border-radius: 4px;
    padding: 1rem;
    overflow-x: auto;
    margin: 1rem 0;
}

.loaded-document-content code[b-66bnwb81o2] {
    background-color: var(--color-primary-1);
    padding: 0.2rem 0.4rem;
    border-radius: 3px;
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.875rem;
}

.loaded-document-content pre code[b-66bnwb81o2] {
    background-color: transparent;
    padding: 0;
    border-radius: 0;
}

/* Custom Document Elements Styling */

/* Title container styling */
.loaded-document-content div[id="title"][b-66bnwb81o2] {
    margin: 2rem 0 1.5rem 0;
    padding: 1rem;
    background-color: var(--color-primary-1);
    border-left: 4px solid var(--color-accent-0);
    border-radius: 4px;
}

/* Main document title */
.loaded-document-content div[id="title"] title[b-66bnwb81o2] {
    display: block;
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--color-primary-4);
    margin: 0;
    line-height: 1.3;
}

/* Chapter container styling */
.loaded-document-content div[id^="chapter-"][b-66bnwb81o2] {
    margin: 2rem 0;
    padding: 1.5rem;
    background-color: var(--color-primary-0);
    border: 1px solid var(--color-primary-2);
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

/* Chapter status styling */
.loaded-document-content div[id^="chapter-"] status[b-66bnwb81o2] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 1rem;
    background-color: var(--color-primary-2);
    color: var(--color-primary-4);
}

/* Status color variations */
.loaded-document-content div[id^="chapter-"] status:contains("open")[b-66bnwb81o2] {
    background-color: #e3f2fd;
    color: #1976d2;
}

.loaded-document-content div[id^="chapter-"] status:contains("in progress")[b-66bnwb81o2] {
    background-color: #fff3e0;
    color: #f57c00;
}

.loaded-document-content div[id^="chapter-"] status:contains("to be completed")[b-66bnwb81o2] {
    background-color: #fce4ec;
    color: #c2185b;
}

.loaded-document-content div[id^="chapter-"] status:contains("in review")[b-66bnwb81o2] {
    background-color: #f3e5f5;
    color: #7b1fa2;
}

.loaded-document-content div[id^="chapter-"] status:contains("complete")[b-66bnwb81o2] {
    background-color: #e8f5e8;
    color: #388e3c;
}

/* Chapter title styling */
.loaded-document-content div[id^="chapter-"] title[b-66bnwb81o2] {
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    color: var(--color-primary-4);
    margin: 1rem 0 0.75rem 0;
    line-height: 1.4;
    border-bottom: 2px solid var(--color-accent-1);
    padding-bottom: 0.5rem;
}

/* Summary styling */
.loaded-document-content div[id^="chapter-"] summary[b-66bnwb81o2] {
    display: block;
    margin: 1rem 0;
    padding: 1rem;
    background-color: var(--color-primary-1);
    border-radius: 6px;
    font-style: italic;
    line-height: 1.6;
    color: var(--color-primary-3);
    border-left: 3px solid var(--color-accent-1);
    position: relative;
}

/* Summary before pseudo-element for visual indicator */
.loaded-document-content div[id^="chapter-"] summary[b-66bnwb81o2]::before {
    content: "📝 Summary";
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--color-accent-0);
    margin-bottom: 0.5rem;
    font-style: normal;
}

/* Language indicator styling */
.loaded-document-content title[lang][b-66bnwb81o2]::after,
.loaded-document-content summary[lang][b-66bnwb81o2]::after {
    content: attr(lang);
    display: inline-block;
    margin-left: 0.5rem;
    padding: 0.1rem 0.4rem;
    background-color: var(--color-accent-1);
    color: white;
    font-size: 0.6rem;
    border-radius: 3px;
    text-transform: uppercase;
    font-weight: 500;
    vertical-align: super;
}

/* Ensure custom elements are displayed as block elements */
.loaded-document-content title[b-66bnwb81o2],
.loaded-document-content status[b-66bnwb81o2],
.loaded-document-content summary[b-66bnwb81o2] {
    display: block;
}

/* Custom elements hover effects */
.loaded-document-content div[id^="chapter-"]:hover[b-66bnwb81o2] {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Responsive text sizing */
@media (max-width: 768px) {
    .loaded-document-content[b-66bnwb81o2] {
        font-size: 0.875rem;
        line-height: 1.5;
    }
    
    .loaded-document-content h1[b-66bnwb81o2] {
        font-size: 1.25rem;
    }
    
    .loaded-document-content h2[b-66bnwb81o2] {
        font-size: 1.125rem;
    }
    
    .loaded-document-source-editor[b-66bnwb81o2] {
        height: 60vh;
        font-size: 0.8rem;
    }
    
    .control-buttons-row[b-66bnwb81o2] {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
    
    /* Responsive custom elements */
    .loaded-document-content div[id="title"] title[b-66bnwb81o2] {
        font-size: 1.5rem;
    }
    
    .loaded-document-content div[id^="chapter-"] title[b-66bnwb81o2] {
        font-size: 1.2rem;
    }
    
    .loaded-document-content div[id^="chapter-"][b-66bnwb81o2] {
        padding: 1rem;
        margin: 1.5rem 0;
    }
}

/* Translation progress indicators - now in ProgressiveTranslationDisplay.razor.css */

/* _content/ThalabusWeb/RazorComponents/DocumentComponents/LoadedDocuments.razor.rz.scp.css */
.header[b-w2c4poijkq] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    margin-right: 12px;
}

.header-icons[b-w2c4poijkq] {
    display: flex;
    gap: 10px;
    cursor: pointer;
}

    .header-icons a[b-w2c4poijkq] {
        text-decoration: none;
    }

.loaded-documents[b-w2c4poijkq] {
    display: flex;
    z-index: 1;
    flex-direction: row;
    align-items: center;
    text-align: center;
    padding: 6px;
    border-radius: 16px;
    justify-content: center;
    backdrop-filter: brightness(102%) blur(5px);
    border: 2px solid rgba(255, 255, 255, 0.3);
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    width: auto;
    box-sizing: border-box;
    max-width: 100%;
}

.loaded-documents-fullscreen[b-w2c4poijkq] {
    height: 91%;
}

.documents-container[b-w2c4poijkq] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 10px;
    justify-items: center;
    align-items: end;
    width: auto;
    box-sizing: border-box;
    max-width: 100%;
}

.document-item[b-w2c4poijkq] {
    width: 80px;
    min-width: 60px;
    margin: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    overflow: visible;
    position: relative;
}

.document-icon-container[b-w2c4poijkq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    gap: 4px;
    padding: 6px;
    border-radius: 8px;
    transition: background-color 0.2s, transform 0.2s;
    width: 100%;
    max-width: 80px;
    box-sizing: border-box;
    overflow: hidden;
}

.document-icon-container:hover[b-w2c4poijkq] {
    background-color: rgba(255, 255, 255, 0.1);
    transform: translateY(-2px);
}

.large-icon[b-w2c4poijkq] {
    transform: scale(140%);
    transition: transform 0.2s, color 0.2s;
    margin-bottom: 2px;
    flex-shrink: 0;
}

.document-icon-container:hover .large-icon[b-w2c4poijkq] {
    transform: scale(160%);
}

.icon-selected[b-w2c4poijkq] {
    color: #fff;
}

.document-filename[b-w2c4poijkq] {
    font-size: 0.7rem;
    line-height: 1.1;
    text-align: center;
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    color: rgba(0, 0, 0, 0.8);
    font-weight: 500;
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.8);
    width: 100%;
    max-width: 80px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    box-sizing: border-box;
}

.document-icon-container:hover .document-filename[b-w2c4poijkq] {
    color: rgba(0, 0, 0, 0.9);
    font-weight: 600;
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
}

.document-unload-button[b-w2c4poijkq] {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background-color: rgba(255, 59, 48, 0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.2s, transform 0.2s;
    font-size: 16px;
    color: white;
    opacity: 1;
    z-index: 10;
}

.document-item:hover .document-unload-button[b-w2c4poijkq] {
    opacity: 1;
}

.document-unload-button:hover[b-w2c4poijkq] {
    background-color: rgba(255, 59, 48, 1);
    transform: scale(1.1);
}

.expanded-document-modal[b-w2c4poijkq] {
    position: absolute;
    top: 94px;
    transform: translateX(-50%);
    min-width: 60vw;
    max-width: 90vw;
    max-height: 80vh;
    background: rgba(255,255,255,0.98);
    box-shadow: 0 8px 32px rgba(0,0,0,0.25);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    padding: 8px 24px;
    overflow: auto;
    pointer-events: auto;
    border: 2px solid rgba(0,0,0,0.1);
}

    .expanded-document-modal.positioned[b-w2c4poijkq] {
        transform: none;
    }


/* Media queries for responsive behavior */
@media (max-width: 600px) {
    .documents-container[b-w2c4poijkq] {
        grid-template-columns: repeat(auto-fit, minmax(70px, 1fr));
        gap: 8px;
    }
    
    .document-item[b-w2c4poijkq] {
        width: 70px;
        min-width: 50px;
    }
    
    .document-icon-container[b-w2c4poijkq] {
        max-width: 70px;
        padding: 4px;
    }
    
    .document-filename[b-w2c4poijkq] {
        font-size: 0.65rem;
        max-width: 70px;
    }
    
    .expanded-document-modal[b-w2c4poijkq] {
        width: 95vw;
        max-width: none;
        padding: 4px 12px;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .documents-container[b-w2c4poijkq] {
        justify-content: flex-start;
        width: auto;
        max-width: 100%;
    }
    
    .expanded-document-modal[b-w2c4poijkq] {
        width: 85vw;
        max-width: 700px;
    }
}

@media (min-width: 901px) {
    .documents-container[b-w2c4poijkq] {
        justify-content: flex-start;
        width: auto;
        max-width: 100%;
    }
    
    .expanded-document-modal[b-w2c4poijkq] {
        width: 80vw;
        max-width: 800px;
    }
}
/* _content/ThalabusWeb/RazorComponents/DocumentComponents/LoadedPDF.razor.rz.scp.css */
.loaded-document[b-318o1uobob] {
    width: 100%;
    height: 100%;
    padding: 6px;
    pointer-events: auto;
    text-align: left;
    font-size: 0.8rem;
    line-height: 24px;
    font-weight: 400;
    font-variation-settings: unset;
    overflow-x: auto;
    background-color: var(--color-primary-0);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    position: relative;
}

.control-buttons[b-318o1uobob] {
    margin-right: 10px;
}

.control-buttons-row[b-318o1uobob] {
    display: flex;
    justify-content: right;
}

.control-buttons-centered[b-318o1uobob] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    height: 40px;
}

.align-left-checkbox[b-318o1uobob] {
    margin-left: 0;
    margin-right: auto;
}

.loaded-document-title[b-318o1uobob] {
    font-weight: bold;
    font-size: 1rem;
}

.loaded-document-code[b-318o1uobob] {
    color: black;
    white-space: pre-wrap;
    word-wrap: break-word;
}

.loaded-document-content[b-318o1uobob] {
    word-wrap: break-word;
    white-space: normal;
    transition: opacity 0.25s ease-in-out, transform 0.25s ease-in-out;
    opacity: 1;
    transform: translateX(0);
}

    .loaded-document-content.fade-out[b-318o1uobob] {
        opacity: 0;
        transform: translateX(-40px);
    }

.page-images[b-318o1uobob] {
    display: inline-block;
    width: 100%;
    max-height: 50%;
    overflow-y: scroll;
    margin: 0 auto;
    text-align: center;
}

.page-image[b-318o1uobob] {
    border-radius: 12px;
    width: auto;
    height: auto;
}

@media (max-width: 1500px) {
    .page-image[b-318o1uobob] {
        max-width: 1000px;
    }
}

@media (max-width: 1200px) {
    .page-image[b-318o1uobob] {
        max-width: 800px;
    }
}

@media (max-width: 992px) {
    .page-image[b-318o1uobob] {
        max-width: 600px;
    }
}

@media (max-width: 576px) {
    .page-image[b-318o1uobob] {
        max-width: 100%;
    }
}

.page-category[b-318o1uobob] {
    margin-left: 8px;
}
    .page-category > input[b-318o1uobob] {
        background-color: lightgray;
        width: 64px;
    }

.div-title[b-318o1uobob] {
    display: flex;
    justify-content: center;
    align-items: center;
}

    .div-title span[b-318o1uobob] {
        font-weight: bold;
        font-size: 1.5rem;
    }

.div-content[b-318o1uobob] {
    margin-top: 24px;
    display: flex;
    gap: 20px;
    justify-content: center;
}

    .div-content > div[b-318o1uobob] {
        background-color: var(--color-primary-1);
        border: 2px solid rgba(255, 255, 255, 0.3);
        border-radius: 12px;
        box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
        padding: 24px;
    }

.div-content-box[b-318o1uobob] {
    display: flex;
    flex-direction: column;
    width: 50%;
}

.form-content[b-318o1uobob] {
    width: 100%;
    padding: 6px;
    pointer-events: auto;
    text-align: left;
    font-size: 0.8rem;
    line-height: 0.8rem;
    font-weight: 400;
    font-variation-settings: unset;
    overflow-x: auto;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    position: relative;
}

    .form-content.form-metadata[b-318o1uobob] {
        background-color: var(--color-primary-2);
    }

    .form-content.form-data[b-318o1uobob] {
        background-color: var(--color-accent-0);
    }

    .form-content ul[b-318o1uobob],
    .form-content ol[b-318o1uobob],
    .form-content li[b-318o1uobob] {
        margin-left: 4px;
    }

.form-group[b-318o1uobob] {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}

    .form-group label[b-318o1uobob] {
        margin-right: 8px;
        min-width: 120px;
    }

    .form-group select[b-318o1uobob],
    .form-group input[b-318o1uobob] {
        flex: 1;
    }

.classifier-area[b-318o1uobob] {
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    overflow-x: auto;
    display: flex;
    gap: 12px;
}

.classifier-data[b-318o1uobob] {
    display: flex;
    flex-direction: column;
}

.link-button[b-318o1uobob] {
    background: none;
    border: none;
    color: var(--color-primary-4);
    text-decoration: underline;
    cursor: pointer;
    padding: 0;
    font: inherit;
}

.quality-check[b-318o1uobob] {
    margin-top: 10px;
}

.validation-box[b-318o1uobob] {
    padding: 5px 10px;
    border-radius: 5px;
    color: white;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 5px;
}

    .validation-box.unknown[b-318o1uobob] {
        background-color: gray;
    }

    .validation-box.valid[b-318o1uobob] {
        background-color: green;
    }

    .validation-box.invalid[b-318o1uobob] {
        background-color: darkred;
    }
/* _content/ThalabusWeb/RazorComponents/DocumentComponents/PDFViewerComponent.razor.rz.scp.css */
.pdf-viewer[b-x0k70skzd2] {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 600px;
    background-color: var(--color-primary-0);
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
    overflow: hidden;
}

.pdf-viewer-loading[b-x0k70skzd2] {
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    color: var(--color-text-muted, #888);
}

.pdf-viewer-header[b-x0k70skzd2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 6px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    flex-shrink: 0;
    min-height: 40px;
}

.pdf-viewer-title[b-x0k70skzd2] {
    font-weight: bold;
    font-size: 0.85rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
}

.pdf-viewer-actions[b-x0k70skzd2] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.pdf-viewer-page-info[b-x0k70skzd2] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.8rem;
}

.pdf-nav-button[b-x0k70skzd2] {
    background: none;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 4px;
    padding: 2px 6px;
    cursor: pointer;
    font-size: 0.85rem;
    line-height: 1;
    transition: background-color 0.15s;
}

.pdf-nav-button:hover:not(:disabled)[b-x0k70skzd2] {
    background-color: rgba(255, 255, 255, 0.1);
}

.pdf-nav-button:disabled[b-x0k70skzd2] {
    opacity: 0.4;
    cursor: default;
}

.pdf-page-input[b-x0k70skzd2] {
    width: 52px;
    text-align: center;
    font-size: 0.8rem;
    padding: 2px 4px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 4px;
    background: transparent;
}

.pdf-page-total[b-x0k70skzd2] {
    font-size: 0.8rem;
    opacity: 0.7;
}

.pdf-open-link[b-x0k70skzd2] {
    font-size: 1rem;
    opacity: 0.75;
    line-height: 1;
}

.pdf-open-link:hover[b-x0k70skzd2] {
    opacity: 1;
}

.pdf-frame[b-x0k70skzd2] {
    flex: 1;
    width: 100%;
    border: none;
    display: block;
}
/* _content/ThalabusWeb/RazorComponents/DossierComponents/DossierComponent.razor.rz.scp.css */
.dossier[b-yso54c3ioq] {
    position: fixed;
    /*    top: 86px;*/
    left: 50%;
    width: 80%;
    max-height: 0;
    z-index: 1;
    padding: 6px;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateX(-50%);
    transition: max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1), padding 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

    .dossier.dossier-visible[b-yso54c3ioq] {
        background-color: var(--dossier-container-color);
        border-radius: 16px;
        backdrop-filter: brightness(102%) blur(5px);
        border: 2px solid rgba(255, 255, 255, 0.3);
        box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
        max-height: 500px;
        opacity: 1;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .dossier.reasoning-visible[b-yso54c3ioq] {
        max-height: 500px;
        opacity: 1;
        padding-top: 6px;
        padding-bottom: 6px;
    }

    /* Non-floating (static) dossier styles */
    .dossier.dossier-static[b-yso54c3ioq] {
        position: relative;
        left: auto;
        width: 100%;
        max-height: none;
        opacity: 1;
        overflow: visible;
        transform: none;
        transition: none;
        padding: 1rem 0;
        margin-bottom: 2rem;
    }

        .dossier.dossier-static.dossier-visible[b-yso54c3ioq] {
            background-color: transparent;
            border: none;
            box-shadow: none;
            backdrop-filter: none;
            max-height: none;
            padding: 1rem 0;
        }

        .dossier.dossier-static.reasoning-visible[b-yso54c3ioq] {
            max-height: none;
            padding: 1rem 0;
        }

.dossier-details[b-yso54c3ioq] {
    background-color: var(--dossier-color);
    align-self: center;
    margin-bottom: 0;
    padding: 10px 16px;
    border-radius: 12px;
    min-width: 0;
}

.dossier-close-icon[b-yso54c3ioq] {
    display: flex;
    justify-content: end;
    height: 16px;
}

.dossier-button-group[b-yso54c3ioq] {
    display: flex;
    gap: 8px;
    align-items: center;
}

    .dossier-button-group > div:hover[b-yso54c3ioq] {
        color: var(--color-accent-1);
        cursor: pointer;
    }

.dossier-container[b-yso54c3ioq] {
    display: flex;
    flex-direction: row;
    height: 100%;
    width: auto;
    gap: 24px;
    min-width: 0;
}

.dossier-details-container[b-yso54c3ioq] {
    min-width: 20%;
    max-width: 50%;
    text-align: center;
}

.loaded-documents-container[b-yso54c3ioq] {
    min-width: 30%;
    max-width: 50%;
    align-self: flex-start;
    width: auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    height: 100%;
}

.reasoning-document-container[b-yso54c3ioq] {
    min-width: 40%;
    max-width: 50%;
    align-self: center;
    width: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    max-height: 100%;
    overflow: hidden;
}

.reasoning-floating-start-button[b-yso54c3ioq] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    color: inherit;
    font-size: 1.5rem;
    border: none;
    transition: color 0.3s ease, transform 0.2s ease;
    padding: 0;
}

    .reasoning-floating-start-button:hover[b-yso54c3ioq] {
        color: var(--color-accent-0);
        transform: scale(1.1);
    }

    .reasoning-floating-start-button:active[b-yso54c3ioq] {
        transform: scale(0.95);
    }

.dossier-info-centered[b-yso54c3ioq] {
    text-align: center;
    margin-top: 8px;
}

.dossier-name[b-yso54c3ioq] {
    font-weight: bold;
    font-size: 1.25rem;
    margin-bottom: 4px;
}

.dossier-description[b-yso54c3ioq] {
    font-size: 1rem;
    margin-left: 4px;
}

/* Modal styles for modals rendered outside dossier container */
.expanded-document-modal[b-yso54c3ioq],
.expanded-division-modal[b-yso54c3ioq] {
    position: fixed;
    top: 94px;
    left: calc(50% - 12px);
    transform: translateX(-50%);
    min-width: 60vw;
    max-width: 90vw;
    max-height: 70vh;
    background: rgba(255,255,255,0.98);
    box-shadow: 0 8px 32px rgba(0,0,0,0.25);
    z-index: 50; /* Higher than dossier z-index to ensure it's above */
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    padding: 8px 8px;
    overflow: auto;
    pointer-events: auto;
    border: 2px solid rgba(0,0,0,0.1);
}

    .expanded-document-modal.positioned[b-yso54c3ioq],
    .expanded-division-modal.positioned[b-yso54c3ioq] {
        transform: none;
    }

.expanded-division-modal[b-yso54c3ioq] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
}

.modal-close-button[b-yso54c3ioq] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 51;
    color: inherit;
    font-size: 1rem;
    border: none;
    background-color: transparent;
    border-radius: 50%;
    transform: translateX(-12px);
    transition: color 0.3s ease;
    padding: 0;
}

    .modal-close-button:hover[b-yso54c3ioq] {
        color: var(--color-accent-0);
    }

    .modal-close-button:active[b-yso54c3ioq] {
        color: var(--color-accent-0);
    }

.division-modal-content[b-yso54c3ioq] {
    flex: 1 1 auto;
    overflow-y: auto;
    max-height: 60vh;
    width: 100%;
    text-align: left;
    box-sizing: border-box;
    padding: 0.5em 0.5em;
}

    .division-modal-content h3[b-yso54c3ioq] {
        margin-top: 0;
        color: #333;
        border-bottom: 2px solid #eee;
        padding-bottom: 10px;
    }

    .division-modal-content p[b-yso54c3ioq] {
        margin: 10px 0;
        line-height: 1.6;
    }

    .division-modal-content strong[b-yso54c3ioq] {
        font-weight: 600;
    }

.dossier-files-bottom[b-yso54c3ioq] {
    margin-top: 12px;
    width: 100%;
    text-align: center;
}

/* Media queries for responsive behavior */
@media (max-width: 600px) {
    .expanded-document-modal[b-yso54c3ioq],
    .expanded-division-modal[b-yso54c3ioq] {
        width: 95vw;
        max-width: none;
        padding: 4px 12px;
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .expanded-document-modal[b-yso54c3ioq],
    .expanded-division-modal[b-yso54c3ioq] {
        width: 85vw;
        max-width: 700px;
    }
}

@media (min-width: 901px) {
    .expanded-document-modal[b-yso54c3ioq],
    .expanded-division-modal[b-yso54c3ioq] {
        width: 80vw;
        max-width: 800px;
    }
}

/* Minimized dossier styles */
.dossier.dossier-minimized[b-yso54c3ioq] {
    max-height: 60px;
}

    .dossier.dossier-minimized.dossier-visible[b-yso54c3ioq] {
        background-color: var(--dossier-container-color);
        border-radius: 16px;
        backdrop-filter: brightness(102%) blur(5px);
        border: 2px solid rgba(255, 255, 255, 0.3);
        box-shadow: inset 0 4px 4px rgba(128, 128, 128, 0.1);
        max-height: 60px;
        opacity: 1;
        padding-top: 6px;
        padding-bottom: 6px;
        padding-left: 12px;
        padding-right: 12px;
    }

    .dossier.dossier-minimized.reasoning-visible[b-yso54c3ioq] {
        max-height: 60px;
        opacity: 1;
        padding-top: 6px;
        padding-bottom: 6px;
    }

.dossier-container-minimized[b-yso54c3ioq] {
    display: flex;
    align-items: center;
    height: 100%;
    width: 100%;
    gap: 16px;
    min-width: 0;
}

.dossier-details-minimized[b-yso54c3ioq] {
    background-color: var(--dossier-color);
    align-self: center;
    margin-bottom: 0;
    padding: 0 12px;
    border-radius: 12px;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 12px;
    white-space: nowrap;
}

    .dossier-details-minimized .dossier-name[b-yso54c3ioq] {
        font-weight: bold;
        font-size: 1rem;
        margin-bottom: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .dossier-details-minimized .dossier-description[b-yso54c3ioq] {
        font-size: 0.9rem;
        margin-left: 0;
        margin-bottom: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

/* Confirmation dialog styles */
.confirmation-dialog-overlay[b-yso54c3ioq] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
}

.confirmation-dialog[b-yso54c3ioq] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
    min-width: 300px;
    max-width: 500px;
    overflow: hidden;
}

.confirmation-dialog-header[b-yso54c3ioq] {
    padding: 16px 24px;
    font-weight: bold;
    font-size: 1.1rem;
    border-bottom: 1px solid #e0e0e0;
    background: #f5f5f5;
}

.confirmation-dialog-body[b-yso54c3ioq] {
    padding: 24px;
    font-size: 1rem;
    color: #333;
}

.confirmation-dialog-footer[b-yso54c3ioq] {
    padding: 16px 24px;
    border-top: 1px solid #e0e0e0;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    background: #f9f9f9;
}

.btn[b-yso54c3ioq] {
    padding: 8px 16px;
    border: none;
    border-radius: 6px;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-secondary[b-yso54c3ioq] {
    background: #e0e0e0;
    color: #333;
}

    .btn-secondary:hover[b-yso54c3ioq] {
        background: #d0d0d0;
    }

.btn-danger[b-yso54c3ioq] {
    background: #dc3545;
    color: white;
    font-weight: bold;
}

    .btn-danger:hover[b-yso54c3ioq] {
        background: #c82333;
    }
/* _content/ThalabusWeb/RazorComponents/KnowledgeGraph/KnowledgeGraphCanvas.razor.rz.scp.css */
.kb-container[b-zyw7lo8glx] {
    height: 100%;
    box-sizing: border-box;
    background-color: #fff;
}

.knowledge-graph-canvas[b-zyw7lo8glx] {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

.graph-loading-state[b-zyw7lo8glx],
.graph-empty-state[b-zyw7lo8glx] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 400px;
}

.graph-loading-state[b-zyw7lo8glx] {
    gap: 0.8rem;
    background-color: inherit;
}

#knowledge-graph[b-zyw7lo8glx] {
    position: relative;
    height: 100%;
    box-sizing: border-box;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu {
    position: absolute;
    z-index: 10;
    min-width: 140px;
    padding: 4px 0;
    border: 1px solid var(--color-primary-3);
    border-radius: 4px;
    background: var(--color-primary-1);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
    font-size: 75%;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-item {
    color: var(--color-primary-6);
    white-space: nowrap;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-table {
    border-collapse: collapse;
    border: 0;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-current-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
    padding: 8px 12px;
    border-bottom: 1px solid var(--color-primary-3);
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-item > td {
    padding: 8px 12px;
    border: 0;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-item + .knowledge-graph-context-menu-item {
    border-top: 1px solid var(--color-primary-3);
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-actions {
    display: grid;
    grid-template-columns: repeat(2, max-content);
    gap: 2px 8px;
    white-space: nowrap;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-action {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--color-accent-0);
    cursor: pointer;
    font: inherit;
    text-decoration: underline;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-label {
    color: #000000;
    font-weight: bold;
}

[b-zyw7lo8glx] .knowledge-graph-context-menu-target {
    display: block;
    max-width: 280px;
    overflow-wrap: anywhere;
    white-space: normal;
    color: #c0580a;
}

[b-zyw7lo8glx] .vis-network {
    background-color: inherit;
}
/* _content/ThalabusWeb/RazorComponents/KnowledgeGraph/KnowledgeGraphExplorer.razor.rz.scp.css */
.kg-explorer[b-rzwuqrumjm] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    flex: 1 1 0;
    height: auto;
    min-height: 0;
    overflow: hidden;
}

.kg-explorer-graph-column[b-rzwuqrumjm] {
    display: flex;
    flex-direction: column;
    max-width: 50%;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
}

    .kg-explorer-graph-column.full[b-rzwuqrumjm] {
        max-width: 100%;
        width: 100%;
    }

.kg-panels[b-rzwuqrumjm] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    overflow: hidden;
}

.kg-graph-panel[b-rzwuqrumjm] {
    position: relative;
    flex: 0 0 var(--kg-graph-height, 50%);
    min-height: 200px;
    overflow: hidden;
}

.kg-element-counters[b-rzwuqrumjm] {
    position: absolute;
    right: 0.75rem;
    bottom: 0.75rem;
    z-index: 2;
    width: auto;
    max-width: calc(100% - 1.5rem);
    border-collapse: separate;
    border-spacing: 0.25rem 0;
}

.kg-element-counter-label[b-rzwuqrumjm],
.kg-element-counter-value[b-rzwuqrumjm] {
    padding: 0 0.25rem;
    border: 1px solid var(--tbs-border-color);
    background: rgba(255, 255, 255, 0.92);
    color: var(--tbs-text-muted);
    font-size: var(--tbs-text-xs);
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.kg-element-counter-label[b-rzwuqrumjm] {
    font-weight: 600;
    text-align: left;
}

.kg-element-counter-value[b-rzwuqrumjm] {
    border-radius: var(--tbs-border-radius-sm);
    padding: 0.25rem 0.5rem;
    text-align: right;
    white-space: nowrap;
}

.kg-element-counters th[b-rzwuqrumjm],
.kg-element-counters td[b-rzwuqrumjm] {
    vertical-align: middle;
}

.kg-panels:has(.kg-details-panel.collapsed) .kg-graph-panel[b-rzwuqrumjm] {
    flex: 1 1 auto;
}

.kg-inner-splitter[b-rzwuqrumjm] {
    flex: 0 0 6px;
    margin: 0;
    background: transparent;
    cursor: ns-resize;
    touch-action: none;
    transition: background 0.2s;
}

.kg-inner-splitter:hover[b-rzwuqrumjm],
.kg-inner-splitter:focus-visible[b-rzwuqrumjm] {
    background: rgba(13, 110, 253, 0.25);
    outline: none;
}

.kg-inner-splitter.collapsed[b-rzwuqrumjm] {
    display: none;
}

.kg-details-panel[b-rzwuqrumjm] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    transform: translateY(0);
    transition: transform 0.25s ease-out, visibility 0s linear 0s;
}

.kg-details-panel.preparing[b-rzwuqrumjm] {
    visibility: hidden;
    transform: translateY(100%);
    transition: none;
}

.kg-details-panel.revealed[b-rzwuqrumjm] {
    visibility: visible;
}

.kg-details-panel.collapsed[b-rzwuqrumjm] {
    flex: 0 0 0;
    min-height: 0;
    overflow: hidden;
}

.kg-outer-splitter[b-rzwuqrumjm] {
    flex: 0 0 6px;
    margin: 0;
    background: transparent;
    cursor: ew-resize;
    touch-action: none;
    transition: background 0.2s;
    display: none;
}

.kg-outer-splitter:hover[b-rzwuqrumjm],
.kg-outer-splitter:focus-visible[b-rzwuqrumjm] {
    background: rgba(13, 110, 253, 0.25);
    outline: none;
}

.kg-outer-splitter.show[b-rzwuqrumjm] {
    display: block;
}

.kg-explorer:has(.kg-outer-splitter:not(.show)) .kg-explorer-graph-column[b-rzwuqrumjm] {
    max-width: 100%;
}

.kg-explorer:has(.kg-outer-splitter.show) .kg-explorer-graph-column[b-rzwuqrumjm] {
    max-width: 80%;
}

@media (max-width: 768px) {
    .kg-explorer[b-rzwuqrumjm] {
        flex-direction: column;
        flex-wrap: nowrap;
        height: auto;
    }

    .kg-explorer-graph-column[b-rzwuqrumjm] {
        max-width: 100%;
    }

    .kg-panels[b-rzwuqrumjm] {
        flex-direction: column;
        height: auto;
        min-height: 0;
        overflow: visible;
    }

    .kg-graph-panel[b-rzwuqrumjm] {
        flex-basis: 400px;
        min-width: 0;
    }

    .kg-element-counters[b-rzwuqrumjm] {
        right: 0.5rem;
        bottom: 0.5rem;
        max-width: calc(100% - 1rem);
    }

    .kg-inner-splitter[b-rzwuqrumjm],
    .kg-outer-splitter[b-rzwuqrumjm] {
        display: none;
    }

    .kg-details-panel[b-rzwuqrumjm] {
        flex: 1 1 auto;
        min-width: 0;
        min-height: 240px;
        overflow: visible;
    }
}
/* _content/ThalabusWeb/RazorComponents/KnowledgeGraph/KnowledgeGraphJsonValue.razor.rz.scp.css */
.kg-json-table tbody tr:hover > *[b-uc8k94hdsw],
.kg-json-table tbody tr:hover > *[b-uc8k94hdsw]::before,
.kg-json-table tbody tr:hover > *[b-uc8k94hdsw]::after {
    --bs-table-hover-bg: transparent;
    background-color: transparent;
}
/* _content/ThalabusWeb/RazorComponents/KnowledgeGraph/KnowledgeGraphNodeDetails.razor.rz.scp.css */
.kg-node-details[b-xgh2ot44m5] {
    background-color: var(--color-primary-0);
    border-radius: 8px;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.35s ease, opacity 0.3s ease;
}

    .kg-node-details.expanded[b-xgh2ot44m5] {
        max-height: 2000px;
        opacity: 1;
    }

.details-container[b-xgh2ot44m5] {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    background: rgba(255, 255, 255, 0.07);
}

.kg-node-details-close[b-xgh2ot44m5] {
    position: absolute;
    top: 8px;
    right: 8px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 12px;
    height: 12px;
    padding: 0;
    color: var(--color-primary-700);
    background: transparent;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
    transform: translate(4px, -4px);
}

.kg-node-details-close:hover[b-xgh2ot44m5],
.kg-node-details-close:focus-visible[b-xgh2ot44m5] {
    background: rgba(0, 0, 0, 0.08);
}

    .details-container > .card[b-xgh2ot44m5] {
        flex: 1 1 calc(25% - 16px);
        box-sizing: border-box;
    }

@media (max-width: 768px) {
    .details-container > .card[b-xgh2ot44m5] {
        flex: 1 1 calc(50% - 16px);
    }
}

@media (max-width: 480px) {
    .details-container > .card[b-xgh2ot44m5] {
        flex: 1 1 100%;
    }
}
/* _content/ThalabusWeb/RazorComponents/KnowledgeGraph/KnowledgeGraphSkillDetails.razor.rz.scp.css */
.kg-skill-details[b-dqmby3kjn1] {
    display: flex;
    gap: 0.75rem;
    width: 100%;
    min-height: 300px;
}

.kg-skill-details-dump[b-dqmby3kjn1] {
    flex: 1 1 45%;
    min-width: 0;
    overflow-y: auto;
}

.kg-skill-details-html[b-dqmby3kjn1] {
    flex: 1 1 55%;
    min-width: 0;
    display: flex;
    min-height: 300px;
}

.kg-skill-details-iframe[b-dqmby3kjn1] {
    width: 100%;
    height: 100%;
    min-height: 300px;
    border: 1px solid #ddd;
    border-radius: 6px;
}
/* _content/ThalabusWeb/RazorComponents/KnowledgeGraph/KnowledgeGraphSourceDetails.razor.rz.scp.css */
.kg-source-details[b-xg7yig1eja] {
    --kg-panel-background: var(--dossier-color, #f8f9fa);
    --kg-panel-border: rgba(255, 255, 255, 0.3);
    width: 0;
    margin-left: 0;
    flex: 0 0 0;
    transition: width 0.5s ease, opacity 0.5s ease, visibility 0.5s ease;
    opacity: 0;
    visibility: hidden;
    height: 100%;
    overflow: hidden;
    background: var(--kg-panel-background);
    display: flex;
    flex-direction: column;
}

    .kg-source-details.show[b-xg7yig1eja] {
        width: var(--kg-source-details-width, 50%);
        flex: 0 0 var(--kg-source-details-width, 50%);
        opacity: 1;
        visibility: visible;
        border-left: 3px solid var(--kg-panel-border);
        border-top-left-radius: 16px;
        -webkit-backdrop-filter: brightness(102%) blur(5px);
        backdrop-filter: brightness(102%) blur(5px);
    }

.kg-source-details-content[b-xg7yig1eja] {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.kg-source-details-header[b-xg7yig1eja] {
    display: flex;
    align-items: center;
    min-height: 47px;
    padding: 6px 10px 0 4px;
    border-bottom: 1px solid var(--color-primary-2, #dee2e6);
    flex-shrink: 0;
    min-width: 0;
}

.kg-source-details-title[b-xg7yig1eja] {
    padding: 8px 14px;
    color: var(--color-accent-0, #0d6efd);
    font-size: 0.85rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kg-source-details-close[b-xg7yig1eja] {
    margin-left: auto;
    flex: 0 0 auto;
    align-self: center;
    border: none;
    background: transparent;
    color: var(--color-primary-5, #6c757d);
    cursor: pointer;
    font-size: 1.15rem;
    line-height: 1;
    padding: 4px 0 8px 10px;
}

.kg-source-details-close:hover[b-xg7yig1eja] {
    color: var(--color-accent-0, #0d6efd);
}

.kg-source-details-body[b-xg7yig1eja] {
    flex: 1;
    background-color: var(--kg-panel-background);
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
}

@media (max-width: 768px) {
    .kg-source-details.show[b-xg7yig1eja] {
        width: 100%;
        flex-basis: auto;
    }
}
/* _content/ThalabusWeb/RazorComponents/Ontology/EntityComponent.razor.rz.scp.css */
.kg-entity-attributes-table.kg-entity-with-sources .kg-entity-attribute-column[b-8epz84117j] {
    width: 30%;
}

.kg-entity-attributes-table.kg-entity-with-sources .kg-entity-value-column[b-8epz84117j] {
    width: 50%;
}

.kg-entity-attributes-table.kg-entity-with-sources .kg-entity-sources-column[b-8epz84117j] {
    width: 20%;
}

.kg-entity-attributes-table.kg-entity-without-sources .kg-entity-attribute-column[b-8epz84117j] {
    width: 30%;
}

.kg-entity-attributes-table.kg-entity-without-sources .kg-entity-value-column[b-8epz84117j] {
    width: 70%;
}

.entity-container table.kg-entity-attributes-table[b-8epz84117j],
.entity-container table.kg-entity-attributes-table thead[b-8epz84117j],
.entity-container table.kg-entity-attributes-table tbody[b-8epz84117j],
.entity-container table.kg-entity-attributes-table tr[b-8epz84117j],
.entity-container table.kg-entity-attributes-table th[b-8epz84117j],
.entity-container table.kg-entity-attributes-table td[b-8epz84117j] {
    background-color: transparent !important;
    --bs-table-bg: transparent;
}

.kg-props-value-cell[b-8epz84117j]  .kg-json-table,
.kg-props-value-cell[b-8epz84117j]  .kg-json-table th,
.kg-props-value-cell[b-8epz84117j]  .kg-json-table td {
    background-color: rgba(255, 255, 255, 0.08);
}

.entity-title[b-8epz84117j] {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    color: var(--color-primary-4);
    margin: 0px 0 12px 0;
    letter-spacing: 0.5px;
    padding: 4px 0;
}

.ontology-title[b-8epz84117j] {
    margin-left: 12px;
    color: #555;
}

    .ontology-title a[b-8epz84117j] {
        color: #555;
    }

.source-references[b-8epz84117j] {
    font-size: 0.95em;
    margin-left: 12px;
    overflow-wrap: anywhere;
}

.doc-reference[b-8epz84117j] {
    font-size: 0.85rem;
    color: #333;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.kg-attribute-highlight[b-8epz84117j] {
    outline: 2px solid var(--color-accent-0, #0d6efd);
    outline-offset: -2px;
}

.kg-attribute-highlight > td:first-child[b-8epz84117j],
.kg-attribute-highlight > th:first-child[b-8epz84117j] {
    color: var(--color-accent-0, #0d6efd);
}

.kb-reference[b-8epz84117j] {
    color: darkorange;
    font-weight: bold;
}

.no-underline[b-8epz84117j] {
    text-decoration: none;
    font-size: 16px;
}

.entity-section-header-wrapper[b-8epz84117j]  .tbs-section-header > span:not(.connector-tag) {
    min-width: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: #212529;
    overflow-wrap: anywhere;
}

.entity-section-header-wrapper[b-8epz84117j]  .tbs-section-header {
    min-width: 0;
}

.entity-section-header-wrapper[b-8epz84117j]  .tbs-section-header-actions,
.entity-section-header-wrapper[b-8epz84117j]  .tbs-action-row {
    flex: 0 0 auto;
    min-width: 0;
}

.kg-entity-open-link[b-8epz84117j] {
    flex: 0 0 auto;
    margin-left: 0.25rem;
}

.entity-section-header-wrapper[b-8epz84117j]  .connector-tag {
    display: inline-block;
    margin-right: 0.5rem;
    padding: 0.15rem 0.4rem;
    border: 1px solid #ffc107;
    border-radius: 0.25rem;
    background-color: #fff3cd;
    color: #856404;
    font-size: 0.75rem;
    font-weight: 600;
    vertical-align: middle;
}

.kg-entity-attributes-table > tbody > tr:has(.kg-json-table)[b-8epz84117j],
.kg-entity-attributes-table > tbody > tr:has(.kg-json-list)[b-8epz84117j] {
    --bs-table-hover-bg: transparent;
}

.kg-entity-attributes-table > tbody > tr:has(.kg-json-table):hover > *[b-8epz84117j],
.kg-entity-attributes-table > tbody > tr:has(.kg-json-list):hover > *[b-8epz84117j] {
    background-color: transparent !important;
}

.kg-entity-attributes-table > tbody > tr:has(.kg-json-table)[b-8epz84117j]  .kg-json-table tbody tr:hover > *,
.kg-entity-attributes-table > tbody > tr:has(.kg-json-list)[b-8epz84117j]  .kg-json-table tbody tr:hover > * {
    background-color: transparent !important;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/KeywordCategories.razor.rz.scp.css */
.keywords-category-container[b-30dhk9ifkt] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 10px 8px;
    background: var(--chat-line-background-user);
    backdrop-filter: blur(12px);
    border: thin solid;
    border-color: #C0C0C0;
    border-radius: 16px;
    box-shadow: 0px 0px 12px rgb(60, 130, 164, 0.2);
    position: fixed;
    top: 200px;
    left: 12px;
    z-index: 10;
    /* limit vertical size to viewport (75%) but keep a reasonable absolute cap */
    max-height: min(1200px, 75vh);
    overflow-y: auto;
    /* quicker width transition */
    transition: width 0.12s cubic-bezier(.4,0,.2,1), background 0.3s ease, box-shadow 0.3s ease;
    will-change: width;
    --kc-default-width: 170px; /* default width variable; overridden in media queries */
    width: var(--kc-default-width);
    box-sizing: border-box;
}

    /* When ontology selector is shown, expand the container by default */
    .keywords-category-container.showing-ontology-selector[b-30dhk9ifkt] {
        width: calc(var(--kc-default-width) * 1.75);
    }

    /* Provide a subtle scrollbar style for the outer container */
    .keywords-category-container[b-30dhk9ifkt]::-webkit-scrollbar {
        width: 8px;
    }

    .keywords-category-container[b-30dhk9ifkt]::-webkit-scrollbar-track {
        background: rgba(0,0,0,0.04);
        border-radius: 4px;
    }

    .keywords-category-container[b-30dhk9ifkt]::-webkit-scrollbar-thumb {
        background: rgba(0,0,0,0.18);
        border-radius: 4px;
    }

        .keywords-category-container[b-30dhk9ifkt]::-webkit-scrollbar-thumb:hover {
            background: rgba(0,0,0,0.28);
        }

/* Inner element is no longer scaled; it only provides structure */
.keywords-category-inner[b-30dhk9ifkt] {
    display: inline-flex;
    flex-direction: column;
    width: 100%;
}

.keywords-category-container.panel-collapsed[b-30dhk9ifkt] {
    max-height: none;
}

.keywords-category-list[b-30dhk9ifkt] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem; /* was 0.5rem, made more compact */
    /* allow the outer container to handle vertical scrolling to avoid nested scrollbars */
    overflow-y: visible;
    overflow-x: hidden;
    padding-right: 4px;
    width: 100%;
    max-width: none; /* allow list to use the full container width */
    box-sizing: border-box;
}

    .keywords-category-list[b-30dhk9ifkt]::-webkit-scrollbar {
        width: 6px;
    }

    .keywords-category-list[b-30dhk9ifkt]::-webkit-scrollbar-track {
        background: rgba(0, 0, 0, 0.05);
        border-radius: 3px;
    }

    .keywords-category-list[b-30dhk9ifkt]::-webkit-scrollbar-thumb {
        background: rgba(0, 0, 0, 0.2);
        border-radius: 3px;
    }

        .keywords-category-list[b-30dhk9ifkt]::-webkit-scrollbar-thumb:hover {
            background: rgba(0, 0, 0, 0.3);
        }

.keywords-category-empty[b-30dhk9ifkt] {
    color: var(--color-primary-2);
    font-size: 0.85rem;
    font-style: italic;
}

.fade-in-out[b-30dhk9ifkt] {
    opacity: 0;
    /* start off-screen to the left, slightly scaled down for a subtle pop-in */
    transform: translateX(-120%) translateY(0) scale(0.98);
    pointer-events: none;
    transition: opacity 0.35s cubic-bezier(.4,0,.2,1), transform 0.35s cubic-bezier(.4,0,.2,1);
}

    .fade-in-out.shown[b-30dhk9ifkt] {
        opacity: 1;
        /* move to its final on-screen position */
        transform: translateX(0) translateY(0) scale(1);
        pointer-events: auto;
    }

    .fade-in-out.hidden[b-30dhk9ifkt] {
        opacity: 0;
        transform: translateX(-120%) translateY(0) scale(0.98);
        pointer-events: none;
    }

/* Styles specific to ontology header and info */
.ontology-header[b-30dhk9ifkt] {
    display: flex;
    align-items: center; /* vertical center */
    gap: 4px;
}

    .ontology-header button[b-30dhk9ifkt] {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 24px;
        width: 24px;
    }

    .ontology-header .ontology-name[b-30dhk9ifkt] {
        display: inline-block;
        vertical-align: middle;
        margin-right: 4px;
        max-width: calc(100% - 24px);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    /* Style for ontology name link */
    .ontology-header a.ontology-name[b-30dhk9ifkt] {
        color: inherit;
        text-decoration: none;
        cursor: pointer;
        transition: opacity 0.2s ease;
    }

        .ontology-header a.ontology-name:hover[b-30dhk9ifkt] {
            opacity: 0.7;
            text-decoration: underline;
        }

    .ontology-header .ontology-info[b-30dhk9ifkt] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: help;
        color: var(--color-primary-3);
        width: 24px;
        height: 24px;
    }

        /* Ensure the web-component sizes correctly */
        .ontology-header .ontology-info phosphor-icon[b-30dhk9ifkt],
        .ontology-header .ontology-info svg[b-30dhk9ifkt] {
            width: 16px;
            height: 16px;
            display: block;
        }

/* Expand/collapse button styles */
.doc-card-buttons-top-left[b-30dhk9ifkt] {
    display: inline-flex;
    gap: 8px;
    margin-right: 8px;
    opacity: 1;
    transition: opacity 0.3s ease;
}

    .doc-card-buttons-top-left.hidden[b-30dhk9ifkt] {
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
    }

.doc-card-button-expand[b-30dhk9ifkt],
.doc-card-button-contract[b-30dhk9ifkt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    width: 20px;
    height: 20px;
    border: none;
    background: none;
    padding: 0;
    color: var(--color-primary-3);
    transition: color 0.2s ease;
}

    .doc-card-button-expand:hover[b-30dhk9ifkt],
    .doc-card-button-contract:hover[b-30dhk9ifkt] {
        color: var(--color-primary-1);
    }

/* LoV container which expands/collapses vertically */
.category-lov-container[b-30dhk9ifkt] {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.28s ease, opacity 0.22s ease, padding 0.22s ease, margin 0.22s ease;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    margin-top: 0;
}

    .category-lov-container.expanded[b-30dhk9ifkt] {
        /* allow enough height for a few entries; it will grow to content up to this max */
        max-height: 600px;
        opacity: 1;
        padding-top: 2px;
        margin-top: 0.125rem;
    }

/* background for the expanded section - use neutral variable defined in site.css */
.category-lov-background[b-30dhk9ifkt] {
    background: var(--color-neutral-1, #f5f5f5);
    padding: 2px;
    border-radius: 8px;
    width: 100%;
    box-sizing: border-box;
}

/* Ensure the category item container does not shrink awkwardly and is compact */
.category-item[b-30dhk9ifkt] {
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* LoV entries reuse the same badge style but slightly smaller */
.doc-card-category-badge.lov-entry[b-30dhk9ifkt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 8px;
    border-radius: 6px; /* less rounded than category badges */
    font-family: inherit; /* use same font as category text */
    font-size: 0.75em;    /* 10% smaller than the surrounding/category text */
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
}

/* Truncate long category titles and LoV entries to fit available width with ellipsis */
.keywords-category-list .doc-card-category-badge[b-30dhk9ifkt],
.keywords-category-list .doc-card-category-badge.lov-entry[b-30dhk9ifkt] {
    display: block; /* occupy full available width */
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    justify-content: flex-start; /* align text to start for readable truncation */
    padding-left: 8px; /* keep a small left padding when left-aligned */
    text-align: left;
    padding-top: 4px; /* reduced vertical padding to be more compact */
    padding-bottom: 4px;
    line-height: 1.2;
}

/* Make LoV entries 4px less tall in total by reducing top/bottom padding to 2px each */
.keywords-category-list .doc-card-category-badge.lov-entry[b-30dhk9ifkt] {
    padding-top: 2px;
    padding-bottom: 2px;
}

/* Input and submit button tweaks for categories without LoV */
.category-lov-background .category-input[b-30dhk9ifkt] {
    flex: 1;
    min-width: 0; /* allow flex children to shrink properly */
    width: 100%;
    padding: 2px 8px;
    font-size: 0.85rem; /* match category / LoV entry text size */
    border: none; /* remove default input border */
    background: transparent;
    color: inherit;
    box-sizing: border-box;
}

    .category-lov-background .category-input:focus[b-30dhk9ifkt] {
        outline: none;
    }

/* Remove border from the submit control and make it visually compact */
.category-lov-background .control.submit[b-30dhk9ifkt] {
    border: none;
    background: transparent;
    padding: 6px;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: inherit;
}

    .category-lov-background .control.submit:hover[b-30dhk9ifkt] {
        filter: brightness(0.98);
    }

    /* Ensure the icon inside the button is sized consistently with text */
    .category-lov-background .control.submit .ph[b-30dhk9ifkt],
    .category-lov-background .control.submit svg[b-30dhk9ifkt] {
        font-size: 0.95rem;
        width: 1em;
        height: 1em;
        display: block;
    }

.category-button[b-30dhk9ifkt] {
    color: #666;
    transform: scale(0.8);
}

/* Responsive behavior: when viewport is narrower than 1250px the panel collapses to a narrow color strip. */
@media (max-width: 1249px) {
    .keywords-category-container[b-30dhk9ifkt] {
        left: 8px;
        top: 200px;
        max-width: none;
        --kc-default-width: 44px; /* narrow color-strip tab */
        width: var(--kc-default-width);
        overflow-x: hidden; /* clip content to the narrow strip */
    }

    /* Smooth color transition on all text/icon elements inside the panel */
    .keywords-category-container .doc-card-category-badge[b-30dhk9ifkt],
    .keywords-category-container .ontology-name[b-30dhk9ifkt],
    .keywords-category-container .ph[b-30dhk9ifkt],
    .keywords-category-container button[b-30dhk9ifkt] {
        transition: color 0.18s ease;
    }

    /* Collapsed: fade all text/icons to transparent — background colors remain visible */
    .keywords-category-container:not(:hover):not(.showing-ontology-selector) .doc-card-category-badge[b-30dhk9ifkt],
    .keywords-category-container:not(:hover):not(.showing-ontology-selector) .ontology-name[b-30dhk9ifkt] {
        color: transparent !important;
    }

    /* Hide ontology name and collapse button in minimized state */
    .keywords-category-container:not(:hover):not(.showing-ontology-selector) .ontology-name[b-30dhk9ifkt],
    .keywords-category-container:not(:hover):not(.showing-ontology-selector) .ontology-header button[b-30dhk9ifkt] {
        display: none;
    }

    /* Show info icon in minimized state */
    .keywords-category-container:not(:hover):not(.showing-ontology-selector) .ontology-info[b-30dhk9ifkt] {
        display: none;
    }

    /* Center buttons in the ontology header when minimized */
    .keywords-category-container:not(:hover):not(.showing-ontology-selector) .ontology-header[b-30dhk9ifkt] {
        justify-content: center;
    }

    /* Hover: expand to full width (like large screens at ~170px * 1.75) */
    .keywords-category-container:not(.showing-ontology-selector):hover[b-30dhk9ifkt] {
        width: 280px;
        overflow-x: visible;
        box-shadow: 0 8px 20px rgba(60, 130, 164, 0.28);
    }

    /* When ontology selector is shown on small screens, expand it (no hover override needed) */
    .keywords-category-container.showing-ontology-selector[b-30dhk9ifkt] {
        width: calc(var(--kc-default-width) * 8);
    }

    /* Show state should remain interactive */
    .fade-in-out.shown[b-30dhk9ifkt] {
        opacity: 1;
        transform: translateX(0px) translateY(0) scale(1);
        pointer-events: auto;
    }

    /* When hovered, bring fully forward with shadow */
    .keywords-category-container.fade-in-out.shown:hover[b-30dhk9ifkt] {
        transform: translateX(0) translateY(0) scale(1);
        box-shadow: 0 8px 20px rgba(60, 130, 164, 0.28);
        pointer-events: auto;
    }

    /* Hidden should be fully off-screen */
    .fade-in-out.hidden[b-30dhk9ifkt] {
        opacity: 0;
        transform: translateX(-120%) translateY(0) scale(0.98);
        pointer-events: none;
    }
}

@media (min-width: 1250px) {
    .keywords-category-container[b-30dhk9ifkt] {
        left: 12px;
        top: 200px;
        max-width: none; /* use explicit width variable instead */
        --kc-default-width: 170px;
        width: var(--kc-default-width);
        /* ensure a smooth width transition on hover for large screens (quicker) */
        transition: width 0.12s cubic-bezier(.4,0,.2,1), background 0.3s ease, box-shadow 0.3s ease;
        -webkit-transition: width 0.12s cubic-bezier(.4,0,.2,1), background 0.3s ease, box-shadow 0.3s ease;
        will-change: width;
    }

    .fade-in-out.shown[b-30dhk9ifkt] {
        opacity: 1;
        transform: translateX(0) translateY(0) scale(1);
        pointer-events: auto;
    }

    /* enable hover enlargement only on large screens */
    .keywords-category-container:hover[b-30dhk9ifkt] {
        width: calc(var(--kc-default-width) * 1.75);
    }
}
/* _content/ThalabusWeb/RazorComponents/Ontology/KgEntityLink.razor.rz.scp.css */
.innovator-entity-link[b-s9ye0mt6bu] {
    color: darkorange;
    font-weight: 400;
    font-style: normal;
    text-decoration: none;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/Ontology.razor.rz.scp.css */
.form-group-inline[b-f86fzprnpd] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.form-group-column[b-f86fzprnpd] {
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 10px;
}

    .form-group-column > div[b-f86fzprnpd] {
        display: flex;
        flex-direction: column;
    }

    .form-group-column label[b-f86fzprnpd] {
        margin-top: 1rem;
    }

    .form-group-column input[b-f86fzprnpd] {
        width: 100%;
        font-size: 0.875em;
    }

    .form-group-column textarea[b-f86fzprnpd] {
        width: 100%;
        font-size: 0.875em;
    }

.form-control[b-f86fzprnpd] {
    width: 420px;
}

.ontology-description.form-control[b-f86fzprnpd] {
    width: 100%;
}

.read-only[b-f86fzprnpd] {
    width: 100%;
    padding: 0.4rem;
    border: thin solid #ccc;
    border-radius: 6px;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/OntologyElement.razor.rz.scp.css */
.source-input-wrapper[b-8ag9gor3ke] {
	flex: 1 1 auto;
	min-width: 0;
}

.source-input-wrapper[b-8ag9gor3ke]  .tbs-multi-select-wrapper {
	width: 100%;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/OntologySourceTable.razor.rz.scp.css */
.source-scope-filter[b-18v8fur378] {
    max-width: 260px;
}

.innovator-model-filter[b-18v8fur378] {
    width: max-content;
}

.internal-ontology-filter[b-18v8fur378] {
    width: max-content;
}

.source-name-filter[b-18v8fur378] {
    max-width: 350px;
}

.source-id-filter[b-18v8fur378] {
    flex: 1 1 auto;
    min-width: 0;
}

.blacklist-filter[b-18v8fur378] {
    width: auto;
    min-width: 180px;
}

.type-filter-label[b-18v8fur378] {
    white-space: nowrap;
}

.source-table[b-18v8fur378] {
    width: 100%;
}

.source-table-loading-placeholder[b-18v8fur378] {
    display: flex;
    width: 100%;
    min-height: 12rem;
    justify-content: center;
    align-items: center;
}

.selection-column[b-18v8fur378] {
    width: 42px;
}

.id-column[b-18v8fur378] {
    width: 224px;
}

.tbs-cell-id[b-18v8fur378] {
    width: 224px;
    overflow: hidden;
    white-space: nowrap;
}

.type-column[b-18v8fur378] {
    width: 120px;
}

.data-type-column[b-18v8fur378] {
    width: 120px;
}

.blacklist-column[b-18v8fur378] {
    width: 130px;
    text-align: center;
}

.links-column[b-18v8fur378] {
    width: 200px;
}

.actions-column[b-18v8fur378] {
    width: 220px;
    text-align: right;
}

.source-table[b-18v8fur378]  .source-filter-match {
    background-color: #fff3a3;
    color: inherit;
    display: inline-block;
    font: inherit;
    line-height: inherit;
    padding: 1px 0px;
    vertical-align: baseline;
}

.source-table[b-18v8fur378]  .source-namespace-prefix {
    color: #6c757d;
}

.source-instance-modal[b-18v8fur378] {
    display: block !important;
    z-index: 1055 !important;
}

.source-instance-table[b-18v8fur378] {
    --bs-table-bg: transparent;
    --bs-table-striped-bg: transparent;
    --bs-table-hover-bg: transparent;
}

.source-instance-row[b-18v8fur378] {
    background-color: transparent;
}

.source-instance-modal + .modal-backdrop[b-18v8fur378] {
    z-index: 1040;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/OntologyTable.razor.rz.scp.css */
.ontology-table[b-v6yyxg4h3v] {
    table-layout: fixed;
    width: 100%;
}

.ontology-id-column[b-v6yyxg4h3v] {
    width: 120px;
    max-width: 120px;
}

.ontology-name-column[b-v6yyxg4h3v] {
    width: 120px;
    max-width: 120px;
}

.configured-sources-column[b-v6yyxg4h3v] {
    width: 150px;
    max-width: 150px;
    text-align: right;
}

.ontology-actions-column[b-v6yyxg4h3v] {
    width: 120px;
    max-width: 120px;
}

.ontology-description-column[b-v6yyxg4h3v] {
    width: auto;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/PackagesSelectionPanel.razor.rz.scp.css */
.package-tree-uuid-column[b-09i5kqvnq3] {
    width: calc(32ch + 10px);
    max-width: calc(32ch + 20px);
}

.ontology-sources-modal-dialog[b-09i5kqvnq3] {
    width: 95vw;
    max-width: 1600px;
}

.ontology-sources-modal-header[b-09i5kqvnq3] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    min-height: 3rem;
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
    background-color: #e2e2e2;
}

.ontology-sources-modal-actions[b-09i5kqvnq3] {
    justify-content: flex-end;
}

.package-elements-loading[b-09i5kqvnq3] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 240px;
}

.modal-dialog.modal-dialog-centered .modal-content[b-09i5kqvnq3] {
    background-color: #f2f2f2;
}

.new-entity-modal-content[b-09i5kqvnq3] {
    background-color: #f2f2f2 !important;
}

.new-entity-modal-header[b-09i5kqvnq3] {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.new-entity-modal-footer[b-09i5kqvnq3] {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.modal-dialog.modal-dialog-centered #new-ontology-entity-name:focus[b-09i5kqvnq3] {
    background-color: #ffffff;
}

[b-09i5kqvnq3] .package-tree {
    margin: 0;
    padding: 0.25rem 0;
    border-top: 1px solid var(--tbs-border-color);
    border-bottom: 1px solid var(--tbs-border-color);
    background-color: #ffffff;
}

[b-09i5kqvnq3] .package-tree-item {
    margin: 0;
    padding: 0;
}

[b-09i5kqvnq3] .package-tree-row {
    display: flex;
    align-items: center;
    gap: var(--tbs-gap);
    min-height: 2rem;
    padding: 0.15rem 0.65rem;
    color: #333333;
    font-size: var(--tbs-text-sm);
    border-bottom: 1px solid #edf0f2;
}

[b-09i5kqvnq3] .package-tree-row:hover {
    background-color: var(--tbs-selection-bg);
}

[b-09i5kqvnq3] .package-tree-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 1.25rem;
    width: 1.25rem;
    height: 1.5rem;
    padding: 0;
    border: 0;
    color: var(--bs-primary);
    text-decoration: none;
}

[b-09i5kqvnq3] .package-tree-toggle:hover,
[b-09i5kqvnq3] .package-tree-toggle:focus-visible {
    color: var(--bs-secondary);
    text-decoration: none;
}

[b-09i5kqvnq3] .package-tree-checkbox {
    flex: 0 0 auto;
    margin: 0;
}

[b-09i5kqvnq3] .package-tree-checkbox:checked {
    outline: 2px solid var(--bs-primary);
    outline-offset: 2px;
}

[b-09i5kqvnq3] .package-tree-checkbox:checked:focus {
    background-color: var(--bs-primary) !important;
}

[b-09i5kqvnq3] .package-tree-checkbox--partial {
    background-color: #adb5bd;
    border-color: #adb5bd;
}

[b-09i5kqvnq3] .package-tree-checkbox--parent-selected {
    background-color: #9cc4e4;
    border-color: #9cc4e4;
}

[b-09i5kqvnq3] .package-tree-checkbox--partial,
[b-09i5kqvnq3] .package-tree-checkbox--parent-selected {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
    background-image: var(--bs-form-check-bg-image);
}

[b-09i5kqvnq3] .package-tree-checkbox--parent-selected {
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23222' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
    background-image: var(--bs-form-check-bg-image);
}

[b-09i5kqvnq3] .package-tree-label {
    min-width: 0;
    overflow-wrap: anywhere;
}

[b-09i5kqvnq3] .package-tree-children {
    margin: 0 0 0 1.9rem;
    padding: 0;
    border-left: 1px solid var(--tbs-border-color);
}

.package-tree-loading[b-09i5kqvnq3] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 10rem;
    color: var(--bs-primary);
}

.mapping-badge[b-09i5kqvnq3] {
    background-color: var(--mapping-background);
    color: var(--mapping-foreground);
}

.mapping-badge--pending-removal[b-09i5kqvnq3] {
    background-color: #ffffff;
    color: #6c757d;
    text-decoration: line-through;
}

.mapping-remove-button[b-09i5kqvnq3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    color: var(--bs-secondary);
    line-height: 1;
    font-size: 0.6rem;
    text-decoration: none;
    transform: translateY(2px);
}
/* _content/ThalabusWeb/RazorComponents/Ontology/RelationshipsSelectionPanel.razor.rz.scp.css */
.table thead th[b-2rwqq2lhjw] {
    vertical-align: top;
}

.relationships-selection-filter[b-2rwqq2lhjw] {
    max-width: 220px;
}

.mapping-badge[b-2rwqq2lhjw] {
    background-color: var(--mapping-background);
    color: var(--mapping-foreground);
}

.mapping-badge--pending-removal[b-2rwqq2lhjw] {
    background-color: #ffffff;
    color: #6c757d;
    text-decoration: line-through;
}

.mapping-remove-button[b-2rwqq2lhjw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    color: var(--bs-secondary);
    line-height: 1;
    font-size: 0.6rem;
    text-decoration: none;
    transform: translateY(2px);
}

.modal-dialog.modal-dialog-centered .modal-content[b-2rwqq2lhjw] {
    background-color: #f2f2f2;
}

.new-entity-modal-header[b-2rwqq2lhjw] {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.new-entity-modal-footer[b-2rwqq2lhjw] {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.modal-dialog.modal-dialog-centered #new-relationship-name:focus[b-2rwqq2lhjw] {
    background-color: #ffffff;
}
/* _content/ThalabusWeb/RazorComponents/Ontology/WorkInProgressPanel.razor.rz.scp.css */
.ontology-sources-work-in-progress[b-m8l83b39ri] {
    min-height: 12rem;
    padding: 3rem 0;
}

.ontology-sources-work-in-progress-icon[b-m8l83b39ri] {
    font-size: 4rem;
}

.ontology-sources-work-in-progress .h5[b-m8l83b39ri] {
    margin: 1rem 0 0;
}
/* _content/ThalabusWeb/RazorComponents/PodsComponents/PodComponent.razor.rz.scp.css */
.card-attribute[b-a9yhqmiw6a] {
    margin-top: 0px;
    margin-bottom: 0px;
}

.side-by-side[b-a9yhqmiw6a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.side-by-side > div[b-a9yhqmiw6a] {
    margin-right: 10px;
}

.pod-status-green[b-a9yhqmiw6a] {
    color: darkgreen;
    font-weight: bold;
}

.pod-status-transition[b-a9yhqmiw6a] {
    color: darkgreen;
    font-style: italic;
    font-weight: bold;
}

.pod-status-error[b-a9yhqmiw6a] {
    color: darkred;
    font-weight: bold;
}

.pod-cost[b-a9yhqmiw6a] {
    font-weight: bold;
}

.small-message[b-a9yhqmiw6a] {
    width: 100%;
    font-size: 0.8rem;
}
/* _content/ThalabusWeb/RazorComponents/Queries/ThalabusQuery.razor.rz.scp.css */
/* Thalabus Query Component Styles */

.thalabus-query[b-k8081jpcfs] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem; /* slightly reduced gap */
    line-height: 1.45; /* tighter line-height for compact layout */
}

/* Operator styling (AND, OR, NOT) */
.query-operator[b-k8081jpcfs] {
    display: inline-block;
    padding: 0 0.08rem; /* minimal padding */
    margin: 0 0.06rem; /* very small horizontal margin */
    font-weight: 600; /* keep moderate weight but smaller size */
    font-size: 0.72rem; /* reduced size */
    color: #666;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Parenthesis styling */
.query-parenthesis[b-k8081jpcfs] {
    display: inline-block;
    font-weight: 700;
    font-size: 1rem;
    color: #666;
    padding: 0 0.12rem;
}

/* Semantic search block (double-quoted text) */
.query-semantic-search[b-k8081jpcfs] {
    display: inline-block;
    margin: 0;
    padding: 0.12rem 0.30rem; /* reduced padding to make the box smaller */
    background: var(--color-primary-1);
    border: 1px solid var(--color-accent-1);
    border-radius: 4px;
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.86rem;
    color: var(--color-primary-4);
    white-space: pre-wrap;
    word-break: break-word;
    max-width: 42ch; /* limit width so it doesn't create a huge block */
    overflow-wrap: anywhere;
}

/* Text search block (single-quoted text) */
.query-text-search[b-k8081jpcfs] {
    display: inline-block;
    margin: 0;
    padding: 0.12rem 0.30rem;
    background: var(--color-primary-0);
    border: 1px solid var(--color-primary-2);
    border-radius: 4px;
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.86rem;
    font-style: italic;
    color: var(--color-primary-3);
    white-space: pre-wrap;
    word-break: break-word;
    max-width: 42ch;
    overflow-wrap: anywhere;
}

/* Responsive adjustments */
@media (max-width: 640px) {
    .thalabus-query[b-k8081jpcfs] {
        gap: 0.25rem;
    }
    
    .query-operator[b-k8081jpcfs] {
        font-size: 0.75rem;
    }
    
    .query-semantic-search[b-k8081jpcfs],
    .query-text-search[b-k8081jpcfs] {
        font-size: 0.82rem;
        padding: 0.10rem 0.24rem;
        max-width: 60ch;
    }
}
/* _content/ThalabusWeb/RazorComponents/SessionAlternateRendering/SearchTable.razor.rz.scp.css */
/* SearchTable component styles aligned with site.css palette */

/* Outer wrapper: fills available height */
.search-table-wrapper[b-oucqamgh98] {
    height: 100%;
    overflow: hidden;
}

/* Container for the scrollable search results */
.search-table-container[b-oucqamgh98] {
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
}

.search-table[b-oucqamgh98] {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
    font-family: inherit;
    color: var(--color-primary-4);
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.03);
    /* match header pseudo-element radius to avoid white corners */
    border-radius: 16px;
    overflow: hidden;
    display: block; /* enable horizontal scrolling on narrow screens */
    overflow-x: auto;
    background: transparent;
    table-layout: fixed; /* respect explicit column widths */
    position: relative; /* needed for header background bar */
    flex-grow: 1;
    overflow-y: auto;
}

/* Align spinner and thinking message on a single line */
.thinking-message[b-oucqamgh98] {
    display: flex;
    align-items: center;
    gap: 0.5rem; /* space between spinner and text */
    flex-wrap: wrap; /* allow wrapping on very narrow screens */
}

/* Chat preview card: span full width of the cards container */
.chatline-card[b-oucqamgh98] {
    position: relative; /* ensure absolutely positioned controls are anchored to the card */
    width: 100%;
    /* remove border, margins and background color */
    border: none;
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    background-color: transparent;
    box-shadow: none;
}

    .chatline-card .doc-card-meta[b-oucqamgh98] {
        display: none;
    }

    .chatline-card .chat-line[b-oucqamgh98] {
        margin: 0;
    }

    /* --- ChatLine styles copied and scoped for the preview card --- */
    .chatline-card .buttons-top-right[b-oucqamgh98] {
        position: absolute;
        top: 0rem;
        right: 0rem;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.25rem;
    }

    .chatline-card .widget-expanded[b-oucqamgh98] {
        font-size: 0.85em;
    }

    .chatline-card .button-expand[b-oucqamgh98],
    .chatline-card .button-contract[b-oucqamgh98] {
        cursor: pointer;
        padding: 0.25rem 0.5rem;
        background-color: var(--color-primary-0);
        border-radius: 4px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: background-color 0.2s ease, transform 0.1s ease;
    }

        .chatline-card .button-expand:hover[b-oucqamgh98],
        .chatline-card .button-contract:hover[b-oucqamgh98] {
            background-color: var(--color-primary-1);
            transform: scale(1.05);
        }

    .chatline-card .chat-line[b-oucqamgh98] {
        display: flex;
        flex-direction: row;
        position: relative;
        flex-grow: 1;
        margin-top: 0.4em;
        animation: slideInFromBottom-b-oucqamgh98 0.4s ease-out;
    }

@keyframes slideInFromBottom-b-oucqamgh98 {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

.chatline-card .chat-line-icon-and-text[b-oucqamgh98] {
    display: flex;
    flex-direction: row;
    margin-left: 12px;
}

.chatline-card .chat-message-html[b-oucqamgh98] {
    animation: fadeInContent-b-oucqamgh98 0.3s ease-in;
}

    /* Collapsible message container */
    .chatline-card .chat-message-html.chat-text-container.chat-line.chat-line-assistant.collapsed[b-oucqamgh98] {
        color: #999;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        width: 100%;
        max-height: 2.2em;
        overflow: hidden;
        transition: max-height 0.4s ease, opacity 0.25s ease;
        opacity: 0.95;
        padding: 0.5em 0.75em;
    }

    .chatline-card .chat-message-html.expanded[b-oucqamgh98] {
        max-height: 1000px; /* large enough to fit */
        transition: max-height 0.5s ease, opacity 0.25s ease;
        opacity: 1;
    }

@keyframes fadeInContent-b-oucqamgh98 {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

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

/* Headings inside preview */
.chatline-card h1[b-oucqamgh98] {
    font-size: 1.4em;
    margin-block-start: 0.9em;
    margin-block-end: 0.5em;
    scroll-margin-top: 1rem;
    font-weight: 600;
}

.chatline-card h2[b-oucqamgh98] {
    font-size: 1.2em;
    margin-block-start: 0.8em;
    margin-block-end: 0.4em;
    scroll-margin-top: 1rem;
    font-weight: 600;
}

.chatline-card h3[b-oucqamgh98] {
    font-size: 1.1em;
    margin-block-start: 0.7em;
    margin-block-end: 0.3em;
    scroll-margin-top: 0.9rem;
    font-weight: 600;
}

.chatline-card h4[b-oucqamgh98],
.chatline-card h5[b-oucqamgh98],
.chatline-card h6[b-oucqamgh98] {
    font-size: 1em;
    margin-block-start: 0.6em;
    margin-block-end: 0.25em;
    scroll-margin-top: 0.8rem;
    font-weight: 600;
}

    .chatline-card h1:not(:first-child)[b-oucqamgh98],
    .chatline-card h2:not(:first-child)[b-oucqamgh98],
    .chatline-card h3:not(:first-child)[b-oucqamgh98],
    .chatline-card h4:not(:first-child)[b-oucqamgh98],
    .chatline-card h5:not(:first-child)[b-oucqamgh98],
    .chatline-card h6:not(:first-child)[b-oucqamgh98] {
        margin-block-start: 1em;
    }

.chatline-card .chat-table[b-oucqamgh98] {
    margin-top: 1em;
    margin-bottom: 1.5em;
    border: medium solid var(--color-accent-1);
    border-collapse: collapse;
    background-color: var(--color-primary-1);
    width: 100%;
}

    .chatline-card .chat-table th[b-oucqamgh98] {
        background-color: var(--color-primary-2);
        color: var(--color-primary-4);
    }

    .chatline-card .chat-table th[b-oucqamgh98],
    .chatline-card .chat-table td[b-oucqamgh98] {
        border: thin solid var(--color-accent-1);
        padding: 0.5em;
        text-align: left;
    }

.chatline-card .blockquote[b-oucqamgh98] {
    padding: 1em;
    font-size: 1.0em;
    margin: 1em 0;
    border-left: 5px solid var(--color-accent-1);
    background-color: var(--color-primary-1);
    font-style: italic;
    color: #333;
}

    .chatline-card .blockquote footer[b-oucqamgh98] {
        text-align: right;
        font-size: 0.8em;
        color: #333;
        margin-top: 0.5em;
    }

/* ensure links and doc references are visible in preview */
.chatline-card .doc-reference[b-oucqamgh98] {
    cursor: pointer;
    color: var(--color-accent-0);
}

.chatline-card .url-reference[b-oucqamgh98] {
    cursor: pointer;
    color: darkgreen;
}

.chatline-card .kb-reference[b-oucqamgh98] {
    color: darkorange;
}

/* end of copied chatline styles */

/* Ensure the table element itself (when using the class directly) takes full width */
.search-table[b-oucqamgh98],
.search-table table[b-oucqamgh98] {
    width: 100%;
}

    /* Column width rules: first column 25%, second column takes remaining space (~75%) */
    .search-table th:first-child[b-oucqamgh98],
    .search-table td:first-child[b-oucqamgh98] {
        width: 25%;
        max-width: 25%;
        overflow-wrap: anywhere;
    }

    .search-table th:last-child[b-oucqamgh98],
    .search-table td:last-child[b-oucqamgh98] {
        width: 75%;
    }

    .search-table thead th[b-oucqamgh98] {
        /* make the actual th transparent so the wrapper's header bar is visible across full width */
        background: transparent;
        color: var(--color-primary-4);
        text-align: left;
        padding: 12px 16px;
        font-weight: 600;
        font-size: 0.95rem;
        border-bottom: none; /* the header bar provides the bottom border */
        position: relative;
        z-index: 2; /* ensure header text sits above the background bar */
    }

    /* full-width header bar behind the table header cells - use the same bluish glassy style as KeywordCategories */
    .search-table[b-oucqamgh98]::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        height: 48px; /* matches the vertical padding of the header cells */
        /* bluish glassy panel visuals */
        background: var(--chat-line-background-user);
        backdrop-filter: blur(12px);
        border: thin solid;
        border-color: #C0C0C0;
        z-index: 1;
        border-top-left-radius: 16px;
        border-top-right-radius: 16px;
        box-shadow: 0px 0px 12px rgba(60, 130, 164, 0.2);
        transition: background 0.3s ease, box-shadow 0.3s ease;
        will-change: width;
    }

    .search-table tbody td[b-oucqamgh98] {
        padding: 12px 16px;
        vertical-align: top;
        /* use the previous hover accent as the default background for a consistent look */
        background: rgba(60,130,164,0.04);
        border-bottom: 1px solid var(--color-primary-1);
        font-size: 0.95rem;
    }

    .search-table tbody tr:nth-child(even) td[b-oucqamgh98] {
        background: rgba(60,130,164,0.04);
    }

    /* hover preserved but visually identical to default */
    .search-table tbody tr:hover td[b-oucqamgh98] {
        background: rgba(60,130,164,0.04);
    }

    /* Document list inside table cells */
    .search-table ul[b-oucqamgh98] {
        margin: 6px 0 0 0;
        padding-left: 18px;
    }

    .search-table li[b-oucqamgh98] {
        margin: 6px 0;
        line-height: 1.35;
    }

        .search-table li em[b-oucqamgh98] {
            color: var(--color-primary-2); /* muted */
        }

    .search-table p[b-oucqamgh98] {
        margin: 0 0 6px 0;
    }

/* Style the existing .error paragraph used in the component - lighter */
p.error[b-oucqamgh98] {
    background: rgba(209,0,28,0.06);
    color: darkred;
    border: 1px solid rgba(209,0,28,0.12);
    padding: 8px 12px;
    border-radius: 6px;
    margin: 8px 0;
    display: inline-block;
}

/* Accessibility: focus ring for rows (when row becomes focusable via JS) */
.search-table tbody tr:focus[b-oucqamgh98] {
    outline: 3px solid rgba(69,145,185,0.18);
    outline-offset: 2px;
}

/* Pagination controls styling */
.search-pagination[b-oucqamgh98] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
    padding: 0.5rem 0;
    border-top: 1px solid var(--color-primary-2);
    background: var(--color-primary-0);
}

    .search-pagination button[b-oucqamgh98] {
        padding: 0.4rem 0.8rem;
        border: none;
        border-radius: 4px;
        background: var(--color-primary-1);
        color: var(--color-primary-0);
        cursor: pointer;
        transition: background 0.3s ease;
    }

        .search-pagination button:hover[b-oucqamgh98] {
            background: var(--color-primary-2);
        }

    .search-pagination span[b-oucqamgh98] {
        color: var(--color-primary-4);
        font-size: 0.9rem;
    }

/* Responsive tweaks */
@media (max-width: 640px) {
    .search-table[b-oucqamgh98] {
        table-layout: auto; /* allow natural flow on small screens */
    }

        .search-table thead th[b-oucqamgh98] {
            padding: 10px 12px;
            font-size: 0.9rem;
        }

        .search-table tbody td[b-oucqamgh98] {
            padding: 10px 12px;
            font-size: 0.9rem;
        }

        /* On very small screens make the first column a bit wider for readability */
        .search-table th:first-child[b-oucqamgh98],
        .search-table td:first-child[b-oucqamgh98] {
            width: 40%;
            max-width: 40%;
        }
}

/* Styles for the Analyse button under queries */
.query-actions[b-oucqamgh98] {
    margin-top: 6px;
}

.analyse-btn[b-oucqamgh98] {
    padding: 6px 10px;
    border-radius: 6px;
    background: var(--color-primary-1);
    color: var(--color-primary-0);
    border: none;
    cursor: pointer;
    font-size: 0.9rem;
}

    .analyse-btn:hover[b-oucqamgh98] {
        background: var(--color-primary-2);
    }

.analyse-link[b-oucqamgh98] {
    color: var(--color-accent-0);
    text-decoration: underline;
    cursor: pointer;
    font-size: 0.95rem;
}

.analyse-link:hover[b-oucqamgh98] {
    color: var(--color-accent-1);
}

/* Empty state styling */
.search-results-empty[b-oucqamgh98] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    background: rgba(60, 130, 164, 0.04);
    border: 1px solid rgba(60, 130, 164, 0.15);
    border-radius: 16px;
    text-align: center;
    color: var(--color-primary-3);
    min-height: 200px;
    flex-grow: 1;
    overflow-y: auto;
}

.empty-state-icon[b-oucqamgh98] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: 0.6;
}

/* Word wrap for query commands */
.query-wrapper[b-oucqamgh98] {
    cursor: pointer;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal;
}

.empty-state-message[b-oucqamgh98] {
    font-size: 1rem;
    margin: 0;
    color: var(--color-primary-3);
}
/* _content/ThalabusWeb/RazorComponents/SessionAlternateRendering/SearchTableTopPanel.razor.rz.scp.css */
/* SearchTableTopPanel: filters and chat prompt, rendered above the scroll area */

.search-table-top-panel[b-l5vhcadu1k] {
    padding-bottom: 4px;
}

.search-filters[b-l5vhcadu1k] {
    padding: 8px 0;
    margin-bottom: 4px;
}

.search-filters .filter-label[b-l5vhcadu1k] {
    margin-right: 12px;
}

.chat-prompt-wrapper[b-l5vhcadu1k] {
    margin-bottom: 8px;
}
/* _content/ThalabusWeb/RazorComponents/SessionAlternateRendering/SessionDocuments.razor.rz.scp.css */
/* Document cards container layout */
.doc-cards-container[b-934b4onsk1] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 12px;
    align-items: flex-start;
    width: 100%;
    justify-content: flex-start;
}

/* Style the existing .error paragraph used in the component - lighter */
p.error[b-934b4onsk1] {
    background: rgba(209,0,28,0.06);
    color: darkred;
    border: 1px solid rgba(209,0,28,0.12);
    padding: 8px 12px;
    border-radius: 6px;
    margin: 8px 0;
    display: inline-block;
}
/* _content/ThalabusWeb/RazorComponents/SessionAlternateRendering/SessionRenderingChoice.razor.rz.scp.css */
/* Container with glassmorphism effect inspired by ChatPrompt */
.rendering-choice-container[b-kh2zwdac9o] {
    display: inline-flex;
    align-items: center;
    padding: 10px 8px;
    background: var(--chat-line-background-user);
    backdrop-filter: blur(12px);
    border: thin solid;
    border-color: #C0C0C0;
    border-radius: 16px;
    box-shadow: 0px 0px 12px rgb(60, 130, 164, 0.2);
    position: fixed;
    top: 80px;
    left: 12px;
    z-index: 10;
    transition: background 0.3s ease, box-shadow 0.3s ease;
}

.fade-in-out[b-kh2zwdac9o] {
    opacity: 0;
    /* start off-screen to the left, slightly scaled down for a subtle pop-in */
    transform: translateX(-120%) translateY(0) scale(0.98);
    pointer-events: none;
    transition: opacity 0.35s cubic-bezier(.4,0,.2,1), transform 0.35s cubic-bezier(.4,0,.2,1);
}

    .fade-in-out.shown[b-kh2zwdac9o] {
        opacity: 1;
        /* move to its final on-screen position */
        transform: translateX(0) translateY(0) scale(1);
        pointer-events: auto;
    }

    .fade-in-out.hidden[b-kh2zwdac9o] {
        opacity: 0;
        transform: translateX(-120%) translateY(0) scale(0.98);
        pointer-events: none;
    }

/* Icon container for the three rendering mode icons */
.icon-container[b-kh2zwdac9o] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

/* Individual icon styling */
.rendering-icon[b-kh2zwdac9o] {
    font-size: 1.3rem;
    cursor: pointer;
    transition: color 0.3s ease, transform 0.2s ease;
    color: darkgray;
}

    .rendering-icon:hover[b-kh2zwdac9o] {
        transform: scale(1.1);
    }

    /* Active/selected icon */
    .rendering-icon.activated[b-kh2zwdac9o] {
        color: var(--color-accent-0) !important;
    }

    /* Deactivated/unselected icon */
    .rendering-icon.deactivated[b-kh2zwdac9o] {
        color: darkgray !important;
    }

        .rendering-icon.deactivated:hover[b-kh2zwdac9o] {
            color: var(--color-accent-0) !important;
        }
/* _content/ThalabusWeb/RazorComponents/Settings/RunningContainer.razor.rz.scp.css */
.icon[b-35964z81jn] {
    border: none;
    background-color: inherit;
}

.icon-offset[b-35964z81jn] {
    margin-top: 4px;
}

.card-being-deleted[b-35964z81jn] {
    text-decoration: line-through;
}

.card-being-deleted-message[b-35964z81jn] {
    color: darkred;
    margin-left: 24px;
    text-decoration: none;
}

.messages[b-35964z81jn] {
    width: 100%;
    border-collapse: collapse;
    font-family: "Courier New", Courier, monospace;
    font-size: 12px;
}

    .messages th[b-35964z81jn], .messages td[b-35964z81jn] {
        border: 1px solid #ddd;
        padding: 4px;
        text-align: left;
        line-height: 1.2;
    }

    .messages th[b-35964z81jn] {
        background-color: #f2f2f2;
    }

    .messages tr:nth-child(even)[b-35964z81jn] {
        background-color: #f9f9f9;
    }

    .messages tr:nth-child(odd)[b-35964z81jn] {
        background-color: #fCfCfC;
    }

    .messages tr:hover[b-35964z81jn] {
        background-color: #ddd;
    }
/* _content/ThalabusWeb/RazorComponents/SkillRazorComponents/FrameComponent.razor.rz.scp.css */
.frame-component[b-bl73daueob] {
    position: relative;
    /* min-width: 400px; */
    width: 100%;
    min-height: 400px;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid #ccc;
    background-color: #f9f9f9;
    overflow: hidden;
    box-sizing: border-box;
}

.frame-toolbar[b-bl73daueob] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 8px;
    background-color: #eee;
    border-bottom: 1px solid #ccc;
    z-index: 2;
    /* keep toolbar above content */
}

.frame-btn[b-bl73daueob] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    background: white;
    border: 1px solid #aaa;
    border-radius: 4px;
    cursor: pointer;
    color: #333;
}

.frame-btn:hover[b-bl73daueob] {
    background: #e0e0e0;
}

.frame-btn svg[b-bl73daueob] {
    pointer-events: none;
}

.frame-viewport[b-bl73daueob] {
    position: relative;
    flex: 1;
    overflow: hidden;
    /* Hide overflow from zooming/panning */
    width: 100%;
    height: 100%;
}

.frame-content[b-bl73daueob] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* transform acts uniquely due to parent logic in JS */
    transform-origin: 0 0;
}

.frame-overlay[b-bl73daueob] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    /* Layer over child content to catch events */
    cursor: grab;
    /* invisible to user, but catches all pointer/mouse events to prevent interacting with the map like clicking text directly */
    background: transparent;
}

.frame-overlay:active[b-bl73daueob] {
    cursor: grabbing;
}

.frame-component.frame-resizable[b-bl73daueob] {
    resize: both;
    height: 400px;
    width: 100%;
}
/* _content/ThalabusWeb/RazorComponents/SkillRazorComponents/SkillInOutBox.razor.rz.scp.css */
.skill-minigui[b-0k6b5zg4zj] {
    border-radius: 8px;
    margin: 0.3rem;
    display: inline-block;
    width: 400px;
    height: 48px;
    border: 2px solid rgba(255, 255, 255, 0.3); /* Light border */
    box-shadow: 0 2px 2px rgba(128, 128, 128, 0.1); /* Smooth shadow */
    position: relative; /* allow pseudo-element positioning */
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    will-change: transform, box-shadow;
    background: rgba(255, 255, 255, 0.02);
    overflow: visible;
}

/* Slight visual emphasis when highlighted (pop up, no scale) */
    .skill-minigui.highlighted[b-0k6b5zg4zj],
    .skill-minigui.skill-highlighted[b-0k6b5zg4zj] {
        /* Pop up slightly and increase z-index while highlighted */
        transform: translateY(-6px);
        box-shadow: 0 6px 6px rgba(60, 130, 164, 0.65), 0 8px 8px rgba(0, 0, 0, 0.06);
        z-index: 50; /* bring above siblings while highlighted */
    }

/* Small badge indicating 'Skill' */
.skill-minigui.highlighted[b-0k6b5zg4zj]::before,
.skill-minigui.skill-highlighted[b-0k6b5zg4zj]::before {
    content: 'Skill';
    position: absolute;
    top: -10px;
    right: -10px;
    display: inline-block;
    padding: 0.18rem 0.4rem;
    font-size: 11px;
    font-weight: 600;
    color: white;
    background: linear-gradient(135deg, var(--color-accent-0), rgba(0, 120, 200, 0.95));
    border-radius: 999px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.25);
    pointer-events: none;
    transform: translateZ(0);
}

/* Border-draw effect: use ::after as the animated border stroke. */
.skill-minigui[b-0k6b5zg4zj]::after {
    /* place the stroke slightly outside the element so original border remains */
    position: absolute;
    left: -4px;
    top: -4px;
    right: -4px;
    bottom: -4px;
    border-radius: 12px;
    box-sizing: border-box;
    border: 3px solid var(--color-accent-0);
    pointer-events: none;
    opacity: 0;
    transition: clip-path 300ms ease-out, opacity 200ms ease;
    z-index: 2;
}

/* Accessibility: respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    .skill-minigui[b-0k6b5zg4zj] {
        transition: box-shadow 180ms ease, border-color 180ms ease;
    }
    .skill-minigui.highlighted[b-0k6b5zg4zj],
    .skill-minigui.skill-highlighted[b-0k6b5zg4zj] {
        transform: none !important;
        transition: box-shadow 180ms ease, border-color 180ms ease;
    }
    .skill-minigui[b-0k6b5zg4zj]::after {
        transition: none;
        clip-path: polygon(0 100%, 0 100%, 100% 100%, 100% 0);
        opacity: 1;
    }
}
/* _content/ThalabusWeb/RazorComponents/Thalaplan/CurrentFocus.razor.rz.scp.css */
.small-font[b-frh6uoifj2] {
    font-size: 0.8em;
}
/* _content/ThalabusWeb/RazorComponents/Thalaplan/CurrentPlan.razor.rz.scp.css */
.plan[b-mnffg12htt] {
    font-size: 0.8em;
    height: 80%;
    max-height: 80vh;
    overflow-y: auto;
    overflow-x: auto;
}

.plan-table[b-mnffg12htt] {
    border: 1px solid #999;
}

    /* Make borders explicit and force them to avoid being overridden by other CSS (e.g., Bootstrap) */
.plan-table[b-mnffg12htt],
.plan-table th[b-mnffg12htt],
.plan-table tr[b-mnffg12htt],
.plan-table td[b-mnffg12htt] {
    border: 1px solid #999;
}

/* Ensure rules apply to tables rendered inside nested components (scoped CSS uses attributes per component). Use ::deep to pierce component scope. */
[b-mnffg12htt] .plan-table,
[b-mnffg12htt] .plan-table th,
[b-mnffg12htt] .plan-table tr,
[b-mnffg12htt] .plan-table td {
    border: 1px solid #999 !important;
}

[b-mnffg12htt] .plan-table {
    border-collapse: collapse !important;
}
/* _content/ThalabusWeb/RazorComponents/Thalaplan/Goal.razor.rz.scp.css */
.flex-container[b-5vzjhgx6ne] {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}


.underline-on-hover:hover[b-5vzjhgx6ne] {
    text-decoration: underline;
}

.goal-summary-message[b-5vzjhgx6ne] {
    color: #555;
    margin-bottom: 4px;
}

.goal-summary-message-italic[b-5vzjhgx6ne] {
    font-style: italic;
}

.goal-planner-output[b-5vzjhgx6ne] {
    color: #555;
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.875em;
}

.prompt-augmenter-entry[b-5vzjhgx6ne] {
    margin-bottom: 4px;
}

.prompt-augmenter-key[b-5vzjhgx6ne] {
    color: #333;
}

.prompt-augmenter-value[b-5vzjhgx6ne] {
    color: #555;
    display: inline;
    white-space: pre-wrap;
    margin-bottom: 0;
}

.goal-code-message[b-5vzjhgx6ne] {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 0.875em;
}

.agent-planner-pattern[b-5vzjhgx6ne] {
    color: #555;
    margin-bottom: 4px;
}

.agent-planner-pattern-label[b-5vzjhgx6ne] {
    color: #555;
}

.agent-planner-controls[b-5vzjhgx6ne] {
    border-collapse: collapse;
    border: none;
    margin-bottom: 4px;
}

.agent-planner-controls td[b-5vzjhgx6ne] {
    padding: 0 8px 4px 0;
    border: none;
    vertical-align: middle;
}

.agent-planner-tool[b-5vzjhgx6ne] {
    color: #555;
    margin-bottom: 4px;
}

.prompt-augmenter-table[b-5vzjhgx6ne],
.prompt-augmenter-table th[b-5vzjhgx6ne],
.prompt-augmenter-table td[b-5vzjhgx6ne],
.prompt-augmenter-table tr[b-5vzjhgx6ne] {
    background-color: transparent !important;
    font-weight: normal;
}

.prompt-augmenter-table tbody th[b-5vzjhgx6ne] {
    font-style: italic;
}

.agent-planner-pattern[b-5vzjhgx6ne],
.agent-planner-tool[b-5vzjhgx6ne] {
    width: 240px;
    max-width: 100%;
    box-sizing: border-box;
}

.goal-status-badge[b-5vzjhgx6ne] {
    display: inline-block;
    font-size: 0.80em;
    border: none;
    background-color: transparent;
    vertical-align: middle;
    white-space: nowrap;
}

.goal-status-spinner[b-5vzjhgx6ne] {
    display: inline-block;
    width: 10px;
    height: 10px;
    vertical-align: middle;
}

.goal-status-spinner[b-5vzjhgx6ne]  .flower {
    transform: translateY(-5px) scale(0.4);
    transform-origin: top left;
}


.details-popup[b-5vzjhgx6ne] {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 85%;
    max-height: 75%;
    transform: translate(-50%, -50%);
    z-index: 1000;
    background: white;
    padding: 20px;
    border: 1px solid black;
    box-shadow: 0 0 10px rgba(0,0,0,0.5);
    overflow-y: auto;
}

.plan-detail-table[b-5vzjhgx6ne] {
    border: 1px dotted #999;
    width: 100%;
}

[b-5vzjhgx6ne] .plan-detail-table th,
[b-5vzjhgx6ne] .plan-detail-table td,
[b-5vzjhgx6ne] .plan-detail-table tr {
    border: 1px dotted #999;
    vertical-align: middle;
}

/* Also ensure nested plan tables used in the Goal component have solid borders */
[b-5vzjhgx6ne] .plan-table,
[b-5vzjhgx6ne] .plan-table th,
[b-5vzjhgx6ne] .plan-table td,
[b-5vzjhgx6ne] .plan-table tr {
    border: 1px dashed #BBB !important;
}

[b-5vzjhgx6ne] .plan-table {
    border-collapse: collapse !important;
}

/* Performance metrics table styles */
.perf-metrics-table[b-5vzjhgx6ne] {
    font-size: 0.85em;
    border-collapse: collapse;
    margin-top: 3px;
    display: inline-table;
    white-space: nowrap;
}

.perf-metrics-table td[b-5vzjhgx6ne] {
    padding: 2px 8px;
    border: 1px solid #ddd;
    white-space: nowrap;
}

/* Prevent word-break from affecting perf metrics cells */
.perf-metrics-table td[b-5vzjhgx6ne],
.perf-metrics-table th[b-5vzjhgx6ne] {
    word-break: keep-all;
    white-space: nowrap;
    overflow-wrap: normal;
}

.perf-metrics-table td:first-child[b-5vzjhgx6ne] {
    font-weight: 500;
    background-color: #f5f5f5;
}

/* Column widths: let browser decide naturally, but set min-width for column 1 */
[b-5vzjhgx6ne] .plan-table th:nth-child(1),
[b-5vzjhgx6ne] .plan-table td:nth-child(1) {
    min-width: 193px;
}
[b-5vzjhgx6ne] .plan-table th,
[b-5vzjhgx6ne] .plan-table td {
    vertical-align: top;
    overflow-wrap: break-word;
    word-break: break-word;
}
/* _content/ThalabusWeb/RazorComponents/ToolsComponents/FileDropZone.razor.rz.scp.css */
.file-drop-zone[b-2qevpawx0h] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed var(--color-primary-2, #a0a0a0);
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
    margin: 0.5rem 0.85rem 0;
    flex-shrink: 0;
    transition: border-color 0.15s ease, background-color 0.15s ease;
}

    .file-drop-zone.file-drop-zone-active[b-2qevpawx0h] {
        border-color: var(--color-accent-0, #3c82a4);
        background-color: rgba(60, 130, 164, 0.08);
    }

    .file-drop-zone input[type="file"][b-2qevpawx0h] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        cursor: pointer;
    }

        .file-drop-zone input[type="file"]:disabled[b-2qevpawx0h] {
            cursor: not-allowed;
        }

.file-drop-zone-hint[b-2qevpawx0h] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
    color: var(--color-primary-2, #a0a0a0);
    pointer-events: none;
}

.file-drop-zone-error[b-2qevpawx0h] {
    color: #c0392b;
    font-size: 0.8rem;
    margin: 0.25rem 0.85rem 0;
}
/* _content/ThalabusWeb/RazorComponents/ToolsComponents/OntologyLexiconSelector.razor.rz.scp.css */
.ontology-lexicon-footer[b-lcjqshk58o] {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
}

.ontology-lexicon-selector[b-lcjqshk58o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.ontology-lexicon-label[b-lcjqshk58o] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-primary-2, #a0a0a0);
}

.ontology-lexicon-select[b-lcjqshk58o] {
    font-size: 0.875rem;
    padding: 0.3rem 0.5rem;
    border: 1px solid var(--color-primary-1, #ececec);
    border-radius: 5px;
    background: #fff;
    color: var(--color-primary-4, #1c1c1c);
    cursor: pointer;
    min-width: 140px;
}

    .ontology-lexicon-select:disabled[b-lcjqshk58o] {
        opacity: 0.6;
        cursor: not-allowed;
    }

.ontology-lexicon-back-link[b-lcjqshk58o] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.85rem;
    color: var(--color-accent-0, #3c82a4);
    text-decoration: none;
    white-space: nowrap;
    position: relative;
    top: 1px;
}

    .ontology-lexicon-back-link:hover[b-lcjqshk58o] {
        text-decoration: underline;
    }
/* _content/ThalabusWeb/RazorComponents/TranslationComponents/ProgressiveTranslationDisplay.razor.rz.scp.css */
/* Translation progress indicators */
.translation-blocks-container[b-1hsobj5cwh] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Translated block: subtle card-style with NO border or shadow */
.translation-block[b-1hsobj5cwh] {
    background-color: var(--color-primary-0);
    box-shadow: none;
    border: none;
    animation: fadeIn-b-1hsobj5cwh 0.18s ease-in;
    color: var(--color-primary-3);
}

@keyframes fadeIn-b-1hsobj5cwh {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Pending block: subtle skeleton/pulse */
.translation-block-pending[b-1hsobj5cwh] {
    min-height: 2rem;
    background-color: var(--color-primary-1);
    border-radius: 6px;
    animation: pulse-b-1hsobj5cwh 1.2s ease-in-out infinite;
    opacity: 0.95;
    border: none;
    box-shadow: none;
}

@keyframes pulse-b-1hsobj5cwh {
    0% { opacity: 0.85; }
    50% { opacity: 1; }
    100% { opacity: 0.85; }
}

/* Inline small progress indicator (use sparingly) */
.translation-in-progress-inline[b-1hsobj5cwh] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-left: 0.5rem;
    vertical-align: middle;
    color: var(--color-primary-3);
    font-size: 0.85rem;
}

.translation-indicator-dots[b-1hsobj5cwh] {
    display: inline-flex;
    gap: 0.12rem;
}

/* Lower-contrast dots */
.translation-indicator-dots span[b-1hsobj5cwh] {
    display: inline-block;
    width: 0.28rem;
    height: 0.28rem;
    border-radius: 50%;
    background-color: rgba(0,0,0,0.25);
    animation: blink-b-1hsobj5cwh 1.4s infinite;
}

.translation-indicator-dots span:nth-child(2)[b-1hsobj5cwh] {
    animation-delay: 0.15s;
}

.translation-indicator-dots span:nth-child(3)[b-1hsobj5cwh] {
    animation-delay: 0.3s;
}

@keyframes blink-b-1hsobj5cwh {
    0%, 60%, 100% { opacity: 0.35; }
    30% { opacity: 0.85; }
}

/* small helper if a spinner is used */
.translation-loading-indicator[b-1hsobj5cwh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 1rem;
    width: 1rem;
    transform: scale(0.7);
}
/* _content/ThalabusWeb/RazorComponents/User/UserComponent.razor.rz.scp.css */
.community-selection-status[b-f13ff0rxuu] {
    margin-left: 0.5rem;
    color: #666;
    white-space: nowrap;
}
/* _content/ThalabusWeb/Shared/EmptyLayout.razor.rz.scp.css */
@media print {
    @page {
        margin-top: 1.5cm;
        margin-bottom: 2cm;
        margin-left: 1.5cm;
        margin-right: 1.5cm;
        
        /* Header with document title */
        @top-center {
            content: var(--document-title);
            font-size: 10pt;
            color: #333;
            font-weight: normal;
        }
        
        /* Footer with page number / total pages on right */
        @bottom-right {
            content: counter(page) " / " counter(pages);
            font-size: 10pt;
            color: #333;
        }
    }

    .print-container[b-x8my3y4ie1] {
        position: relative;
    }
}

@media screen {
    body[b-x8my3y4ie1]::before {
        display: none;
    }
}
/* _content/ThalabusWeb/Shared/MainLayout.razor.rz.scp.css */
.page[b-gefd51gm4r] {
    position: relative;
    min-height: 100%;
}

.top-row[b-gefd51gm4r] {
    display: flex;
    position: relative;
    height: 3.8rem;
    background-color: var(--color-primary-0);
    justify-content: space-between;
    align-items: center;
    z-index: 10;
}

    .top-row[b-gefd51gm4r]  a, .top-row .btn-link[b-gefd51gm4r] {
        white-space: nowrap;
    }

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

.red-dot[b-gefd51gm4r] {
    width: 10px;
    height: 10px;
    background-color: #c00000;
    border-radius: 50%;
    display: inline-block;
    transform: translateY(5px);
}

.article[b-gefd51gm4r] {
    z-index: 0;
}

.main.knowledge-graph-page[b-gefd51gm4r] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    min-height: 0;
    overflow: hidden;
}

.main.knowledge-graph-page article.article[b-gefd51gm4r] {
    display: flex;
    flex-direction: column;
    flex: 1 1 0;
    min-height: 0;
    overflow: hidden;
}

.platform-message-box[b-gefd51gm4r] {
    background-color: var(--color-primary-1);
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    border-radius: 6px;
    border: 1.5px solid;
    margin: 6px 6px 6px 6px;
    padding: 4px 12px;
    position: absolute;
    top: 8px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1000;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    opacity: 0;
}

    .platform-message-box span[b-gefd51gm4r] {
        text-align: center;
    }

    .platform-message-box.show[b-gefd51gm4r] {
        opacity: 1;
    }

    .platform-message-box.hide[b-gefd51gm4r] {
        opacity: 0;
    }

@media (max-width: 640.98px) {
    .platform-message-box[b-gefd51gm4r] {
        transform: translate(-50%, 38px);
    }
}

@media (min-width: 641px) {
    .platform-message-box[b-gefd51gm4r] {
        transform: translateX(-50%);
    }
}

.close-link[b-gefd51gm4r] {
    position: absolute;
    right: 10px;
    top: 80%;
    text-decoration: none;
    color: inherit;
}

.alert[b-gefd51gm4r] {
    color: darkred !important;
}

.administration-item[b-gefd51gm4r] {
    margin-right: 1rem;
}

.lang-list[b-gefd51gm4r] {
    text-transform: lowercase;
    text-align: center;
    font-size: 0.85em;
}

.lang-list-item[b-gefd51gm4r] {
    margin-left: 2px;
    margin-right: 2px;
}

@media (max-width: 640.98px) {
    .top-row:not(.auth)[b-gefd51gm4r] {
        display: none;
    }

    .top-row.auth[b-gefd51gm4r] {
        justify-content: space-between;
    }

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

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

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

    .top-row[b-gefd51gm4r] {
        position: sticky;
        top: 0;
    }

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

    .undecorated-hyperlink[b-gefd51gm4r] {
        text-decoration: none;
        color: inherit;
        margin-left: 0.6rem;
        margin-right: 0.6rem;
    }

    .dropdown[b-gefd51gm4r] {
        position: relative;
        display: inline-block;
    }

    .dropdown-llm[b-gefd51gm4r] {
        font-size: 0.75em;
        display: inline-block;
        vertical-align: middle;
        position: relative;
        border: none;
        background-color: var(--color-primary-0);
        box-shadow: 0px 2px 4px 0px rgba(0,0,0,0.1);
        border-radius: 6px;
        overflow: hidden;
        transform: translateY(-3px);
    }

    .dropdown-menu[b-gefd51gm4r] {
        display: block;
        position: absolute;
        right: 0;
        background-color: var(--color-primary-0);
        box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
        border-radius: 6px;
        overflow: hidden;
        width: 240px;
        z-index: 1001;
    }

    .dropdown-overlay[b-gefd51gm4r] {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1000;
        background: transparent;
    }

    .dropdown-item[b-gefd51gm4r] {
        padding: 4px 8px;
        text-decoration: none;
        display: block;
        width: calc(100% - 10px);
        box-sizing: border-box;
        margin-left: 0.3rem;
        margin-right: 0.3rem;
    }

        .dropdown-item:hover[b-gefd51gm4r] {
            border-radius: 4px;
            background-color: var(--color-accent-1);
        }
}

.consolidation-dot[b-gefd51gm4r] {
    width: 10px;
    height: 10px;
    background-color: var(--color-accent-0);
    border-radius: 50%;
    display: inline-block;
    transform: translateY(5px);
}
/* _content/ThalabusWeb/Shared/NavMenu.razor.rz.scp.css */
.nav-menu-backdrop[b-mizpc8708q] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent;
    z-index: 999;
}

.nav-menu-outer[b-mizpc8708q] {
    position: relative;
    z-index: 1000;
}

.nav-menu-inner[b-mizpc8708q] {
}

.navbar-toggler[b-mizpc8708q] {
}

.navbar-brand[b-mizpc8708q] {
    font-size: 1.5rem;
}

.oi[b-mizpc8708q] {
    width: 2rem;
    font-size: 1.1rem;
    vertical-align: text-top;
    top: -2px;
}

.ph[b-mizpc8708q] {
    width: 2rem;
    font-size: 1.1rem;
    vertical-align: text-top;
    top: -2px;
}

.nav-item[b-mizpc8708q] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
    padding-inline: 1rem 1rem;
    transition: font-size 0.3s ease;
}

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

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

    .nav-item[b-mizpc8708q]  a {
        color: var(--color-primary-4);
        height: 2rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        padding-inline: 0.8rem 0.8rem;
        transition: height 0.3s ease;
    }

        .nav-item[b-mizpc8708q]  a.active {
            background-color: rgba(255,255,255,0.1);
            border-radius: 6px;
        }

        .nav-item[b-mizpc8708q]  a:hover {
            background-color: var(--color-accent-1);
            border-radius: 6px;
            color: white;
        }

.nav-menu-item[b-mizpc8708q] {
}

.nav-scrollable[b-mizpc8708q] {
}

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

@media (max-width: 849.98px) {
    .nav-item[b-mizpc8708q] {
        font-size: 0.8rem;
        padding-bottom: 0.3rem;
        padding-inline: 0.5rem 0.5rem;
    }

        .nav-item[b-mizpc8708q]  a {
            height: 1.5rem;
            line-height: 2.5rem;
            padding-inline: 0.5rem 0.5rem;
        }
}

nav hr[b-mizpc8708q] {
    border: none;
    border-top: 1px solid #e0e0e0;
    margin: 0.2rem 0 0.2rem 0;
    height: 0;
    opacity: 0.6;
}
/* _content/ThalabusWeb/Shared/ProgressWheel.razor.rz.scp.css */
.progress-wheel-container[b-yhl2cw3os5] {
    width: 50px;
    height: 50px;
    position: relative;
    pointer-events: auto;
    /* allow hover if needed */
}

.progress-wheel-svg[b-yhl2cw3os5] {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
    /* start at top */
}

.progress-wheel-bg[b-yhl2cw3os5] {
    fill: none;
    stroke: rgba(255, 255, 255, 0.2);
    stroke-width: 10;
}

.progress-wheel-fg[b-yhl2cw3os5] {
    fill: none;
    stroke: var(--color-accent-0, #3C82A4);
    stroke-width: 10;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.3s ease;
}

.progress-wheel-label[b-yhl2cw3os5] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    color: var(--color-primary-4, #1C1C1C);
}
/* _content/ThalabusWeb/Shared/SpinningFlower.razor.rz.scp.css */
.flower[b-90q17jh3oz] {
    font-size: 24px;
    color: var(--color-accent-0);
    transform: translateY(-5px);
    position: relative;
    width: 25px; /* 50% of the original size */
    height: 25px; /* 50% of the original size */
}

.petal[b-90q17jh3oz] {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px; /* 50% of the original size */
    height: 5px; /* 50% of the original size */
    background-color: var(--color-accent-1);
    border-radius: 50%;
    opacity: 0;
    animation: petal-b-90q17jh3oz 0.7s infinite;
    transform: translateY(4px);
    transform-origin: 0% 0%;
}

    .petal:nth-child(1)[b-90q17jh3oz] {
        transform: rotate(0deg) translate(-12.5px);
        animation-delay: 0s;
    }

    .petal:nth-child(2)[b-90q17jh3oz] {
        transform: rotate(45deg) translate(-12.5px);
        animation-delay: 0.1s;
    }

    .petal:nth-child(3)[b-90q17jh3oz] {
        transform: rotate(90deg) translate(-12.5px);
        animation-delay: 0.2s;
    }

    .petal:nth-child(4)[b-90q17jh3oz] {
        transform: rotate(135deg) translate(-12.5px);
        animation-delay: 0.3s;
    }

    .petal:nth-child(5)[b-90q17jh3oz] {
        transform: rotate(180deg) translate(-12.5px);
        animation-delay: 0.4s;
    }

    .petal:nth-child(6)[b-90q17jh3oz] {
        transform: rotate(225deg) translate(-12.5px);
        animation-delay: 0.5s;
    }

    .petal:nth-child(7)[b-90q17jh3oz] {
        transform: rotate(270deg) translate(-12.5px);
        animation-delay: 0.6s;
    }

    .petal:nth-child(8)[b-90q17jh3oz] {
        transform: rotate(315deg) translate(-12.5px);
        animation-delay: 0.7s;
    }

@keyframes petal-b-90q17jh3oz {
    0% {
        opacity: 0;
    }

    25%, 50% {
        opacity: 1;
    }

    75%, 100% {
        opacity: 0;
    }
}
/* _content/ThalabusWeb/Shared/ThalabusLogo.razor.rz.scp.css */
/* ── MuseoModerno font ───────────────────────── */
@font-face {
    font-family: 'Museo Moderno';
    src: url('/fonts/MuseoModerno/static/MuseoModerno-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Museo Moderno';
    src: url('/fonts/MuseoModerno/static/MuseoModerno-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Museo Moderno';
    src: url('/fonts/MuseoModerno/static/MuseoModerno-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

.logo-container[b-hl4iq614p0] {
    display: flex;
    align-items: center;
    flex-direction: row; /* Ensure children are aligned horizontally */
    /*transform: translate(0px, 20px);*/
    z-index: 1;
}

.logo-box-link[b-hl4iq614p0] {
    text-decoration: none;
    display: flex;
    align-items: center;
}

.logo-box[b-hl4iq614p0] {
    background-color: #3E83A7; /* Pantone P 114-5 C Color */
    border: 2px solid #213b56; /* Titan metal */
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}

.logo-image[b-hl4iq614p0] {
    margin: 0;
    padding: 0;
    display: block;
}

    .logo-image svg path[b-hl4iq614p0] {
        fill: white;
    }

.logo-text[b-hl4iq614p0] {
    color: var(--color-logo-text);
    transform: translateY(3px);
}

.logo-text-header[b-hl4iq614p0] {
    display: flex;
    align-items: center;
    gap: 0;
}

.logo-text a[b-hl4iq614p0] {
    text-decoration: none;
    color: var(--color-logo-text);
    font-family: 'Museo Moderno', sans-serif;
    font-weight: 700;
    font-size: 1.9rem;
    letter-spacing: -0.03em;
    display: flex;
    align-items: center;
}

.logo-title[b-hl4iq614p0] {
    color: var(--color-logo-text);
}

.logo-env[b-hl4iq614p0] {
    margin-left: 0.2rem;
    font-size: 1.5rem;
    font-weight: 400;
    font-family: 'Museo Moderno', sans-serif;
    color: var(--color-accent-0);
}

.logo-env-item .logo-env[b-hl4iq614p0] {
    margin-left: 0;
}

.logo-env-dropdown[b-hl4iq614p0] {
    position: relative;
    display: inline-block;
}

.logo-env-button[b-hl4iq614p0] {
    background: none;
    border: none;
    padding: 0;
    margin-left: 0.2rem;
    font-size: 1.5rem;
    font-weight: 400;
    font-family: 'Museo Moderno', sans-serif;
    color: var(--color-accent-0);
    cursor: pointer;
    display: flex;
    align-items: flex-end;
    transform: translateY(0.1rem);
}

.logo-env-button:hover[b-hl4iq614p0] {
    opacity: 0.8;
}

.logo-env-menu[b-hl4iq614p0] {
    position: absolute;
    top: 100%;
    left: 0;
    background: white;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    min-width: 200px;
    margin-top: 4px;
    z-index: 1000;
}

.logo-env-item[b-hl4iq614p0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 8px 12px;
    text-decoration: none;
    color: var(--color-logo-text);
    font-family: 'Museo Moderno', sans-serif;
    font-size: 1.35rem !important;
    font-weight: 400;
    white-space: nowrap;
}

.logo-env-item:last-child[b-hl4iq614p0] {
    border-bottom: none;
}

.logo-env-item-current[b-hl4iq614p0] {
    cursor: default;
    color: #999;
}

.logo-env-item:not(.logo-env-item-current):hover[b-hl4iq614p0] {
    background-color: #f5f5f5;
}

.logo-env-hub[b-hl4iq614p0] {
    color: rgb(27, 94, 63);
    font-weight: 400;
}

.logo-env-environments[b-hl4iq614p0] {
    color: rgb(199, 91, 122);
    font-weight: 400;
}

.logo-version-container[b-hl4iq614p0] {
    align-self: center;
}

.logo-version[b-hl4iq614p0] {
    color: #333;
    display: inline-block;
    position: relative;
    font-size: 0.6rem !important;
    background: transparent;
    user-select: none;
    transform: translateY(-11px);
    text-decoration: none;
}

.logo-version:hover[b-hl4iq614p0],
.logo-version:focus[b-hl4iq614p0],
.logo-version:active[b-hl4iq614p0] {
    text-decoration: none;
}

.logo-branch[b-hl4iq614p0] {
    color: #333;
}

/* Make it less prominent on small screens */
@media (max-width: 480px) {
    .logo-version-container[b-hl4iq614p0] { display: none; }
}
