@charset "utf-8";
.field-info_log .readonly,
.field-error_log .readonly{
  white-space: pre-wrap;
}

.hover-text-primary-100:hover {
    color: #F3E8FFFF !important;
    z-index: 10;
}

/* Archive download section styles */
.archive-download-section {
    margin-top: 20px;
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 4px;
    border: 1px solid #dee2e6;
}

.archive-download-title {
    margin-top: 0;
    margin-bottom: 15px;
    color: #495057;
}

.hover-text-primary-200:hover {
    color: #E9D5FFFF !important;
    z-index: 10;
}

.hover-text-primary-300:hover {
    color: #D8B4FEFF !important;
    z-index: 10;
}

.hover-text-primary-400:hover {
    color: #C084FCFF !important;
    z-index: 10;
}

.hover-text-primary-500:hover {
    color: #A855F7FF !important;
    z-index: 10;
}

.hover-text-primary-600:hover {
    color: #9333EAFF !important;
    z-index: 10;
}

.hover-text-primary-700:hover {
    color: #7E22CEFF !important;
    z-index: 10;
}

.hover-text-primary-800:hover {
    color: #6B21A8FF !important;
    z-index: 10;
}

.hover-text-primary-900:hover {
    color: #581C87FF !important;
    z-index: 10;
}

.status_error {
  color: #900;
  font-weight: bold;
}

.status_ready {
  color: #090;
  font-weight: bold;
}

.status_progress {
  color: #990;
  font-weight: bold;
}

html.dark .status_error {
  color: #f88;
}

html.dark .status_ready {
  color: #8f8;
}

html.dark .status_progress {
  color: #ff8;
}

.type_online_control {
    color: #090;
}

html.dark .type_online_control {
     color: #8f8;
}

.type_offline_control {
    color: #990;
}

html.dark .type_offline_control {
    color: #ff8;
}

.display_link {
    color: #883ae1;
}

.control-rf-link:hover {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.control-log-text {
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

html.dark .display_link {
    color: #b068f6;
}

.anomalies_table{
  margin-left:40px;
  margin-bottom:40px;
}

.anomalies_table td {
  padding: 20px;
  text-align: center;
  vertical-align: top;
}

.anomalies_table td:first-child {
  text-align: left;
  vertical-align: middle;
}

.anomalies_table td:first-child {
  border-right: 1px solid white;
}

.anomalies_table tr {
  border-bottom: 2px solid white;
}

.anomalies_table th{
  padding:10px;
}

.anomalies_h1{
  font-size:24px;
  font-weight: bold;
  margin-bottom:40px;
}

.anomalies_h2{
  font-size:20px;
  font-weight: bold;
  margin-bottom:20px;
  width: 100%;
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
}

/*.module h2 {*/
/*  text-decoration: underline;*/
/*}*/
/*.module {*/
/*  margin-bottom: 48px;*/
/*}*/

/*.app-ocr caption a {*/
/*  color: #A755F7;*/
/*}*/


.module {
  margin-bottom: 20px;
}

.module li {
  background-color: #f9fafb;
  border-radius: 7px;
}

html.dark .module li {
  background-color: #212936;
  border-radius: 7px;
}

.module li h2 {
  border-radius: 7px 7px 0 0;
  padding-left: 10px;
  padding-top: 1px;
}

.module ol li ol {
  padding: 10px;
}

#nav-sidebar {
  background-color: white;
}

html.dark #nav-sidebar {
  background-color: #0f1421;
}

.module ol li ol li {
  background-color: white;
  padding-left: 10px;
  border-radius: 0;
  margin-bottom: 1px;
}

html.dark .module ol li ol li {
  background-color: #121826;
  padding-left: 10px;
  border-radius: 0;
  margin-bottom: 1px;
}

.module .current-model a {
  background-color: transparent;
  font-weight: normal;
  display: block;
}
.module h2 i {
    font-size: 0;
    color: unset;
}


.current-app h2 i {
  color: #8f8;
  font-size: 6px;
  /*display: inline-block;*/
  /*margin-left: 3px;*/
  position: relative;
  bottom: 2px;
  left: 2px;
}

.download_file_link {
  color: #A755F7!important;
}

.inline_instance_link {
  color: #A755F7!important;
}

.paginator .page-selected {
  color: #A755F7;
  background-color: transparent!important;
  font-weight: bold;
}

.paginator .page-available {
  background-color: transparent!important;
}

html:not(.dark) .paginator .page-available {
  color: #6e6e6e!important;
}

html.dark .paginator .page-available {
  color: white;
}

html.dark .paginator .results {
  color: white;
  background-color: transparent!important;;
}

.in_check {
  color: #900!important;
  font-weight: bold;
}

.not_in_check {
  color: #990!important;
  font-weight: bold;
}

html.dark .in_check {
  color: #fb6c6c!important;
  font-weight: bold;
}

html.dark .not_in_check {
  color: #ff8!important;
  font-weight: bold;
}

.amount_container {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 20px;
}
.amount_unit {
    text-align: center;
    height: 160px;
    width: 300px;
    background-color: #f9fafb;
    border-radius: 7px;
    padding: 10px;
}


html.dark .amount_unit {
    text-align: center;
    height: 160px;
    width: 300px;
    background-color: #212936;
    border-radius: 7px;
    /*margin: 6px;*/
    padding: 10px;
    color: white;
}

.amount_unit_header {
    height: 30px;
    font-size: 16px;
    font-weight: bold;
}

.amount_unit_content {
    background-color: white;
    height: 110px;
    border-radius: 7px;
    padding-top: 45px;
    font-size: 24px;
    color: #A755F7;
}

html.dark .amount_unit_content {
    background-color: #121826;
    height: 110px;
    border-radius: 7px;
    padding-top: 45px;
    font-size: 24px;
    color: #b068f6;
}

.chart_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    gap: 20px;
    margin-bottom: 20px;
}

.chart_unit {
    text-align: center;
    background-color: #f9fafb;
    border-radius: 7px;
    padding-top: 15px;
    padding-left: 10px;
    padding-right: 10px;
    width: 300px;
}

html.dark .chart_unit {
    text-align: center;
    background-color: #212936;
    border-radius: 7px;
    padding-top: 15px;
    padding-left: 10px;
    padding-right: 10px;
    width: 300px;
}

.chart_img_container {
    display: flex;
    justify-content: center;
}
.chart_unit h3 {
    font-size: 16px;
    font-weight: bold;
}

.chart_unit img {
    width: 250px;
}

/*.model-title {*/
/*    color: #a855f7;*/
/*}*/

.model-hint {
    font-weight: normal;
    font-size: 13px;
}

.model-hint i {
    position: relative;
    top: 2px;
    font-size: 18px;
    color: #ff4f13;
}

.model-hint span {
    opacity: 0.7;
}

/* LLM Call Log Admin */
.llm-log-json {
  max-height: 400px;
  overflow-y: auto;
  overflow-x: hidden;
  background: #f3f4f6;
  padding: 8px;
  border-radius: 4px;
  font-size: 12px;
  color: #1f2937;
  white-space: pre-wrap !important;
  word-break: break-all;
  overflow-wrap: anywhere;
}

html.dark .llm-log-json {
  background: #1e2433;
  color: #e5e7eb;
}

.llm-log-ok {
  color: #090;
  font-weight: bold;
}

html.dark .llm-log-ok {
  color: #8f8;
}

.llm-log-err {
  color: #900;
  font-weight: bold;
}

html.dark .llm-log-err {
  color: #f88;
}

.llm-log-latency-ok {
  color: #090;
}

html.dark .llm-log-latency-ok {
  color: #8f8;
}

.llm-log-latency-warn {
  color: #990;
}

html.dark .llm-log-latency-warn {
  color: #ff8;
}

.llm-log-latency-slow {
  color: #900;
}

html.dark .llm-log-latency-slow {
  color: #f88;
}

.r12-card-primary-value {
  font-weight: 700;
}

.file-extension {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  white-space: nowrap;
}

.file-extension-icon {
  display: inline-block;
  flex: 0 0 auto;
  height: 38px;
  max-width: none;
  width: 32px;
}

.file-extension-label {
  font-weight: 700;
}

.recognized-data-download {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  white-space: nowrap;
}

.original-file-download {
  align-items: center;
  display: inline-flex;
  gap: 6px;
}

.original-file-download-icon {
  font-size: 20px;
}

.original-file-download:hover .original-file-download-label {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.admin-ui-code-block.ocr-log-block {
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

.admin-ui-code-value.ocr-log-value {
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.ocr-original-name-block .admin-ui-code-link:hover .admin-ui-code-value,
.ocr-log-block .admin-ui-code-link:hover .admin-ui-code-value,
.gph-name-block .admin-ui-code-link:hover .admin-ui-code-value,
.gph-log-block .admin-ui-code-link:hover .admin-ui-code-value {
  text-decoration: none !important;
}

.admin-ui-code-block.gph-log-block {
  box-sizing: border-box;
  max-width: none;
  width: 100%;
}

.admin-ui-code-value.gph-log-value {
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.gph-status-stack {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

#result_list a:hover .display_link,
#result_list a.display_link:hover,
.recognized-data-download-link:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

/*
 * Custom admin templates often render plain <select> elements instead of an
 * Unfold widget. Keep their indicator consistent with Unfold's Material
 * Symbols `expand_more`. Native Unfold and Select2 controls already render
 * their own indicator and must not receive a duplicate one.
 */
select:not([multiple]):not(.appearance-none):not(.select2-hidden-accessible):not(.admin-autocomplete) {
  -webkit-appearance: none !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%236b7280' d='M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z'/%3E%3C/svg%3E") !important;
  background-position: right 10px center !important;
  background-repeat: no-repeat !important;
  background-size: 18px 18px !important;
  cursor: pointer;
  padding-right: 36px !important;
}

html.dark select:not([multiple]):not(.appearance-none):not(.select2-hidden-accessible):not(.admin-autocomplete) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%239ca3af' d='M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6z'/%3E%3C/svg%3E") !important;
}

.rag-index-card-name {
  color: rgb(31 41 55);
  font-weight: 600;
}

.rag-index-card-name-row {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  max-width: 100%;
}

.rag-index-card-name-row .rag-index-card-name {
  overflow-wrap: anywhere;
  text-decoration: none;
}

.rag-index-card-name-copy {
  flex: 0 0 auto;
  margin: 0;
}

.rag-index-card-name-row:hover .rag-index-card-name {
  text-decoration: none;
}

html.dark .rag-index-card-name {
  color: rgb(229 231 235);
}

.rag-admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.rag-admin-action {
  align-items: center;
  background: transparent;
  border: 1px solid;
  border-radius: 6px;
  cursor: pointer;
  display: inline-flex;
  font-size: 13px;
  font-weight: 500;
  gap: 6px;
  min-height: 36px;
  padding: 7px 11px;
  text-decoration: none;
}

.rag-admin-action .material-symbols-outlined {
  font-size: 18px;
}

.rag-admin-action.primary {
  background: rgb(168 85 247 / 13%);
  border-color: rgb(168 85 247 / 30%);
  color: rgb(126 34 206);
}

.rag-admin-action.info {
  background: rgb(59 130 246 / 11%);
  border-color: rgb(59 130 246 / 26%);
  color: rgb(29 78 216);
}

.rag-admin-action.warning {
  background: rgb(245 158 11 / 12%);
  border-color: rgb(245 158 11 / 28%);
  color: rgb(180 83 9);
}

.rag-admin-action:hover {
  filter: brightness(.96);
  text-decoration: none;
}

.rag-admin-action:hover > span:not(.material-symbols-outlined) {
  text-decoration: underline;
  text-underline-offset: 3px;
}

html.dark .rag-admin-action.primary { color: rgb(192 132 252); }
html.dark .rag-admin-action.info { color: rgb(96 165 250); }
html.dark .rag-admin-action.warning { color: rgb(251 191 36); }

.rag-admin-badge-list,
.rag-admin-retries {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 5px;
}

.rag-admin-retries {
  display: inline-grid;
  gap: 6px;
}

.rag-admin-retries > span {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: 76px auto;
  white-space: nowrap;
}

.rag-admin-retry-label {
  text-align: left;
}

.rag-admin-inline-code {
  background: rgb(107 114 128 / 9%);
  border-radius: 5px;
  color: rgb(55 65 81);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  overflow-wrap: anywhere;
  padding: 2px 5px;
}

html.dark .rag-admin-inline-code {
  color: rgb(209 213 219);
}

.rag-admin-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-color: rgb(107 114 128 / 65%) transparent;
  scrollbar-width: thin;
}

.rag-admin-table {
  border-collapse: collapse;
  color: rgb(55 65 81);
  font-size: 13px;
  table-layout: fixed;
  width: 100%;
}

.rag-admin-table th,
.rag-admin-table td {
  border-bottom: 1px solid rgb(229 231 235);
  padding: 11px 14px;
  text-align: left;
  vertical-align: middle;
}

.rag-admin-table th {
  background: rgb(168 85 247 / 8%);
  color: rgb(75 85 99);
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.rag-admin-table tbody tr:last-child th,
.rag-admin-table tbody tr:last-child td {
  border-bottom: 0;
}

html.dark .rag-admin-table {
  color: rgb(209 213 219);
}

html.dark .rag-admin-table th,
html.dark .rag-admin-table td {
  border-bottom-color: rgb(55 65 81);
}

html.dark .rag-admin-table th {
  background: rgb(168 85 247 / 12%);
  color: rgb(209 213 219);
}

.rag-instance-statistics {
  display: grid;
  gap: 18px;
}

.rag-instance-statistics-section {
  background: rgb(249 250 251);
  border: 1px solid rgb(229 231 235);
  border-radius: 6px;
  overflow: hidden;
}

.rag-instance-statistics-section h3 {
  align-items: center;
  background: rgb(168 85 247 / 8%);
  color: rgb(55 65 81);
  display: flex;
  font-size: 12px;
  font-weight: 600;
  margin: 0;
  padding: 11px 14px;
}

.rag-instance-total-chunks {
  align-items: center;
  border-bottom: 1px solid rgb(229 231 235);
  color: rgb(75 85 99);
  display: flex;
  justify-content: space-between;
  padding: 11px 14px;
}

html.dark .rag-instance-statistics-section {
  background: rgb(17 24 39 / 38%);
  border-color: rgb(55 65 81);
}

html.dark .rag-instance-statistics-section h3 {
  background: rgb(168 85 247 / 12%);
  color: rgb(229 231 235);
}

html.dark .rag-instance-total-chunks {
  border-bottom-color: rgb(55 65 81);
  color: rgb(209 213 219);
}

.rag-instance-params {
  display: grid;
  gap: 12px;
}

.rag-instance-params-section {
  background: rgb(249 250 251);
  border: 1px solid rgb(229 231 235);
  border-radius: 6px;
  overflow: hidden;
}

.rag-instance-params-section h3 {
  align-items: center;
  background: rgb(168 85 247 / 8%);
  color: rgb(55 65 81);
  display: flex;
  font-size: 12px;
  font-weight: 600;
  gap: 8px;
  letter-spacing: normal;
  margin: 0;
  padding: 11px 14px;
  text-transform: none;
}

.rag-instance-params-section h3 .material-symbols-outlined {
  color: rgb(126 34 206);
  font-size: 18px;
}

.rag-instance-params-section .rag-admin-table th {
  background: transparent;
  color: rgb(75 85 99);
  font-size: 13px;
  font-weight: 500;
  white-space: normal;
  width: 36%;
}

.rag-instance-params-section .rag-admin-table tr:last-child th,
.rag-instance-params-section .rag-admin-table tr:last-child td {
  border-bottom: 0;
}

.rag-instance-param-value {
  align-items: center;
  display: inline-flex;
  gap: 6px;
}

.rag-instance-param-value > span:last-child {
  color: rgb(107 114 128);
  font-size: 12px;
}

.rag-instance-params-footer {
  align-items: center;
  background: rgb(107 114 128 / 6%);
  border: 1px solid rgb(229 231 235);
  border-radius: 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  padding: 11px 13px;
}

.rag-instance-params-footer > span {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 7px;
}

.rag-instance-params-label {
  color: rgb(107 114 128);
  font-size: 12px;
}

html.dark .rag-instance-params-section,
html.dark .rag-instance-params-footer {
  border-color: rgb(55 65 81);
}

html.dark .rag-instance-params-section {
  background: rgb(17 24 39 / 38%);
}

html.dark .rag-instance-params-section h3 {
  background: rgb(168 85 247 / 12%);
  color: rgb(229 231 235);
}

html.dark .rag-instance-params-section h3 .material-symbols-outlined {
  color: rgb(192 132 252);
}

html.dark .rag-instance-params-section .rag-admin-table th {
  color: rgb(156 163 175);
}

html.dark .rag-instance-params-footer {
  background: rgb(255 255 255 / 3%);
}

@media (max-width: 640px) {
  .rag-instance-params-section .rag-admin-table th {
    width: auto;
  }
}

.params-section-title {
  align-items: center;
  display: flex;
  gap: 7px;
}

.params-section-title .material-symbols-outlined {
  font-size: 18px;
}

.snapshot-container {
  display: grid;
  gap: 12px;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.rag-snapshot-section {
  background: rgb(249 250 251);
  border: 1px solid rgb(229 231 235);
  border-radius: 6px;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.rag-snapshot-section > summary {
  align-items: center;
  background: rgb(168 85 247 / 8%);
  color: rgb(55 65 81);
  cursor: pointer;
  display: flex;
  font-size: 13px;
  font-weight: 600;
  gap: 8px;
  list-style: none;
  padding: 11px 14px;
}

.rag-snapshot-section > summary::after,
.rag-snapshot-section > summary::-webkit-details-marker {
  content: none;
  display: none;
}

.rag-snapshot-section > summary::marker {
  content: "";
}

.rag-snapshot-section[open] > summary {
  margin-bottom: 0;
}

.rag-snapshot-section > summary .material-symbols-outlined { color: rgb(147 51 234); font-size: 18px; }
.rag-snapshot-chevron { margin-left: auto; transition: transform .18s; }
.rag-snapshot-section[open] .rag-snapshot-chevron { transform: rotate(180deg); }
.rag-snapshot-body {
  display: grid;
  gap: 12px;
  max-width: 100%;
  min-width: 0;
  padding: 12px;
}

.rag-snapshot-table-group {
  border: 1px solid rgb(229 231 235);
  border-radius: 6px;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.rag-snapshot-table-group .rag-admin-table-scroll {
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.rag-snapshot-table-title {
  background: rgb(107 114 128 / 6%);
  border-bottom: 1px solid rgb(229 231 235);
  color: rgb(75 85 99);
  font-size: 12px;
  font-weight: 600;
  padding: 10px 14px;
}

.rag-snapshot-table {
  min-width: 1040px;
  table-layout: auto;
}

.rag-snapshot-table th:first-child,
.rag-snapshot-table td:first-child {
  text-align: center;
  width: 58px;
}

.rag-snapshot-table th:nth-child(2),
.rag-snapshot-table td:nth-child(2) {
  width: 130px;
}

.rag-snapshot-table th:nth-child(3),
.rag-snapshot-table td:nth-child(3) {
  width: 105px;
}

.rag-snapshot-table th:nth-child(4),
.rag-snapshot-table td:nth-child(4) {
  min-width: 360px;
  width: 42%;
}

.rag-snapshot-table th:nth-child(5),
.rag-snapshot-table td:nth-child(5) {
  min-width: 320px;
  width: 36%;
}

.rag-snapshot-content-cell {
  line-height: 1.45;
  overflow-wrap: anywhere;
  white-space: normal;
}

.rag-snapshot-metadata-cell {
  vertical-align: top;
}

.rag-snapshot-metadata-cell .rag-admin-highlighted-json {
  min-width: 280px;
}

.rag-snapshot-metadata-cell .admin-ui-code-link {
  max-height: 180px;
}

.rag-snapshot-content summary { color: rgb(147 51 234); cursor: pointer; margin-top: 5px; }
.rag-snapshot-content summary:hover { text-decoration: underline; text-underline-offset: 3px; }
.rag-snapshot-content div { margin-top: 6px; white-space: pre-wrap; }
.rag-snapshot-empty { padding: 8px; }

html.dark .rag-snapshot-section {
  background: rgb(17 24 39 / 38%);
  border-color: rgb(55 65 81);
}
html.dark .rag-snapshot-section > summary { background: rgb(168 85 247 / 12%); color: rgb(229 231 235); }
html.dark .rag-snapshot-section > summary .material-symbols-outlined,
html.dark .rag-snapshot-content summary { color: rgb(192 132 252); }
html.dark .rag-snapshot-table-group,
html.dark .rag-snapshot-table-title {
  border-color: rgb(55 65 81);
}

html.dark .rag-snapshot-table-title {
  background: rgb(255 255 255 / 3%);
  color: rgb(156 163 175);
}

.rag-admin-file-link {
  align-items: center;
  color: rgb(126 34 206);
  display: inline-flex;
  gap: 7px;
  text-decoration: none;
}

.rag-admin-file-link .material-symbols-outlined { font-size: 19px; }
.rag-admin-file-link:hover { text-decoration: none; }
.rag-admin-file-link:hover .rag-admin-file-link-label {
  text-decoration: underline;
  text-underline-offset: 3px;
}
html.dark .rag-admin-file-link { color: rgb(192 132 252); }
