@keyframes toast-enter {
    0% {
        transform: translateY(14px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

#toast-container > div {
    will-change: transform, opacity;
    animation: toast-enter 0.32s cubic-bezier(0.16, 1, 0.3, 1) both !important;
    border-radius: 0.625rem !important;
    box-shadow: none !important;
}

[class*="toast-success-custom"],
[class*="toast-error-custom"],
[class*="toast-info-custom"],
[class*="toast-warning-custom"],
[class*="toast-action-"] {
    background-image: none !important;
}

.toast-success-custom,
.toast-error-custom,
.toast-info-custom,
.toast-warning-custom,
.toast-action-light {
    background-color: #ffffff !important;
    color: #111827 !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
    border-radius: 0.625rem !important;
    padding: 14px 14px 14px 16px !important;
}

.toast-success-custom { border-top: 3px solid #22c55e !important; }
.toast-error-custom   { border-top: 3px solid #ef4444 !important; }
.toast-info-custom    { border-top: 3px solid #3b82f6 !important; }
.toast-warning-custom { border-top: 3px solid #f59e0b !important; }
.toast-action-light   { border-top: 3px solid #6366f1 !important; }

.toast-success-custom .toast-progress { background-color: #22c55e !important; opacity: 0.35 !important; }
.toast-error-custom   .toast-progress { background-color: #ef4444 !important; opacity: 0.35 !important; }
.toast-info-custom    .toast-progress { background-color: #3b82f6 !important; opacity: 0.35 !important; }
.toast-warning-custom .toast-progress { background-color: #f59e0b !important; opacity: 0.35 !important; }
.toast-action-light   .toast-progress { background-color: #6366f1 !important; opacity: 0.35 !important; }

.toast-success-custom .toast-close-button,
.toast-error-custom   .toast-close-button,
.toast-info-custom    .toast-close-button,
.toast-warning-custom .toast-close-button,
.toast-action-light   .toast-close-button {
    color: #9ca3af !important;
    text-shadow: none !important;
    font-size: 18px !important;
    top: 0 !important;
    right: 4px !important;
}
.toast-success-custom .toast-close-button:hover,
.toast-error-custom   .toast-close-button:hover,
.toast-info-custom    .toast-close-button:hover,
.toast-warning-custom .toast-close-button:hover,
.toast-action-light   .toast-close-button:hover {
    color: #111827 !important;
    opacity: 1 !important;
}

.border-l {
    border-left-width: 1px;
}

.border-r {
    border-right-width: 1px;
}

.border-gray-300 {
    border-color: rgb(216, 218, 221);
}

.dark .border-gray-300 {
    border-color: rgb(71, 85, 105);
}

.rounded-lg {
    border-radius: 0.5rem;
}

.rounded-0 {
    border-radius: 0;
}

.rounded-b-0 {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}


* {
    scrollbar-width: thin;
    scrollbar-color: rgb(203, 213, 225) transparent;
}

.dark * {
    scrollbar-color: rgb(71, 85, 105) transparent;
}

*::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

*::-webkit-scrollbar-track {
    background: transparent;
}

*::-webkit-scrollbar-thumb {
    background-color: rgb(203, 213, 225);
    border-radius: 3px;
}

*::-webkit-scrollbar-thumb:hover {
    background-color: rgb(148, 163, 184);
}

.dark *::-webkit-scrollbar-thumb {
    background-color: rgb(71, 85, 105);
}

.dark *::-webkit-scrollbar-thumb:hover {
    background-color: rgb(100, 116, 139);
}

body.modal-blur #connect_toolbar_expand *:not(.modal):not(.modal *) {
    filter: blur(2px);
    transition: filter 0.3s ease;
}

#fb-editor .cb-wrap .frmb-control li {
    background-color: #f1f5f9;
}

.dark #fb-editor .cb-wrap .frmb-control li {
    background-color: #1e293b;
}

.border-warning {
    border-color: #f59e0b;
}

.form-wrap.form-builder .frmb li.form-field .field-label{
    display: flex;
    width: 100%;
    color: var(--tw-gray-700);
    font-weight: 500;
    font-size: 0.8125rem;
    line-height: 1.125rem;
}

.no-scrollbar::-webkit-scrollbar {
  display: none;
}

.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}



.drill-pill {
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);
}

.drill-pill:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.drill-pill button:hover {
    opacity: 0.6;
}

.stat-value {
    transition: all 0.3s ease;
}

@keyframes stat-pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.08); }
    100% { transform: scale(1); }
}

.stat-value.changed {
    animation: stat-pulse 0.4s ease;
}


#monitorDonutChart,
#monitorStatusBar,
#monitorHeatmap,
#monitorTreemap {
    min-height: 120px;
    transition: opacity 0.2s ease;
}


.dark .apexcharts-text {
    fill: #d1d5db !important;
}

.dark .apexcharts-legend-text {
    color: #d1d5db !important;
}

.dark .apexcharts-gridline {
    stroke: #374151 !important;
}

.dark .apexcharts-tooltip {
    background: #1f2937 !important;
    border-color: #374151 !important;
    color: #f3f4f6 !important;
}

.dark .apexcharts-tooltip .apexcharts-tooltip-title {
    background: #111827 !important;
    border-color: #374151 !important;
}

@keyframes spin-slow {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
.animate-spin-slow {
    animation: spin-slow 3s linear infinite;
}













.queue-inbound-alert {
    position: relative;
    background-color: var(--tw-danger-light, #FFEEF3) !important;
    color: var(--tw-danger, #F8285A) !important;
    border-color: var(--tw-danger, #F8285A) !important;
    box-shadow: 0 0 0 2px var(--tw-danger-clarity, rgba(248, 40, 90, 0.5));
}





@keyframes queue-inbound-ping {
    75%, 100% { transform: scale(2); opacity: 0; }
}
.queue-inbound-badge-wrap {
    position: absolute;
    top: -6px;
    right: -6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.queue-inbound-badge-ping {
    position: absolute;
    inset: 0;
    border-radius: 9999px;
    background-color: var(--tw-danger, #F8285A);
    opacity: 0.75;
    animation: queue-inbound-ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
}
.queue-inbound-badge {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    border-radius: 9999px;
    background-color: var(--tw-danger, #F8285A);
    color: var(--tw-danger-inverse, #ffffff);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

@layer base {
  html {
    font-size: 100%;
  }
}






















.kfb-rendered-form .form-label {
    color: var(--tw-gray-600);
    font-weight: 400;
}


.kfb-rendered-form .input,
.kfb-rendered-form .textarea,
.kfb-rendered-form .select,
.kfb-rendered-form input,
.kfb-rendered-form textarea,
.kfb-rendered-form select {
    color: var(--tw-gray-900);
    font-weight: 500;
}




.kfb-rendered-form .input:disabled,
.kfb-rendered-form .input[readonly],
.kfb-rendered-form .input:has(input:disabled),
.kfb-rendered-form .textarea[disabled],
.kfb-rendered-form .textarea[readonly],
.kfb-rendered-form .select:disabled,
.kfb-rendered-form .file-input:disabled,
.kfb-rendered-form input:disabled,
.kfb-rendered-form input[readonly],
.kfb-rendered-form textarea:disabled,
.kfb-rendered-form textarea[readonly],
.kfb-rendered-form select:disabled {
    color: var(--tw-gray-800);
    -webkit-text-fill-color: var(--tw-gray-800);
    font-weight: 500;
    opacity: 1;
}



.kfb-rendered-form .input::placeholder,
.kfb-rendered-form .textarea::placeholder,
.kfb-rendered-form input::placeholder,
.kfb-rendered-form textarea::placeholder {
    color: var(--tw-gray-500);
    -webkit-text-fill-color: var(--tw-gray-500);
    font-weight: 400;
}



.kfb-tab-btn.kfb-drop-highlight {
    outline: 2px dashed var(--tw-primary, #1B84FF);
    outline-offset: 2px;
}












.kstych-bgtasks-panel {
    position: fixed;
    z-index: 50;
    bottom: 5rem;
    inset-inline-end: 1.25rem;
    width: 20rem;
    max-width: 90vw;
}

.kstych-bgtasks-launch {
    position: fixed;
    z-index: 40;
    bottom: 5rem;
    inset-inline-end: 1.25rem;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
}


.kstych-bgtasks-launch-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.125rem;
    height: 1.125rem;
    padding: 0 0.25rem;
    border-radius: 9999px;
    background-color: var(--tw-primary, #1B84FF);
    color: var(--tw-primary-inverse, #ffffff);
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
}


.kstych-bgtasks-panel.hidden,
.kstych-bgtasks-launch.hidden {
    display: none;
}

.kstych-bgtasks-body {
    max-height: 24rem;
    overflow-y: auto;
}










.dark .flatpickr-calendar {
    background: var(--tw-coal-500, #0D0E12);
    color: var(--tw-gray-800);
    box-shadow: 0 3px 13px rgba(0, 0, 0, 0.6);
}
.dark .flatpickr-calendar.arrowTop::before,
.dark .flatpickr-calendar.arrowTop::after {
    border-bottom-color: var(--tw-coal-500, #0D0E12);
}
.dark .flatpickr-calendar.arrowBottom::before,
.dark .flatpickr-calendar.arrowBottom::after {
    border-top-color: var(--tw-coal-500, #0D0E12);
}
.dark .flatpickr-months .flatpickr-month,
.dark .flatpickr-current-month .flatpickr-monthDropdown-months,
.dark .flatpickr-weekdays,
.dark span.flatpickr-weekday {
    background: var(--tw-coal-500, #0D0E12);
    color: var(--tw-gray-700);
    fill: var(--tw-gray-700);
}
.dark .flatpickr-monthDropdown-month {
    background: var(--tw-coal-500, #0D0E12);
    color: var(--tw-gray-800);
}
.dark .flatpickr-months .flatpickr-prev-month svg,
.dark .flatpickr-months .flatpickr-next-month svg {
    fill: var(--tw-gray-700);
}
.dark .flatpickr-day {
    color: var(--tw-gray-800);
}
.dark .flatpickr-day:hover,
.dark .flatpickr-day:focus {
    background: var(--tw-gray-200);
    border-color: var(--tw-gray-200);
    color: var(--tw-gray-900);
}
.dark .flatpickr-day.today {
    border-color: var(--tw-primary);
}
.dark .flatpickr-day.selected,
.dark .flatpickr-day.selected:hover,
.dark .flatpickr-day.startRange,
.dark .flatpickr-day.endRange,
.dark .flatpickr-day.inRange {
    background: var(--tw-primary);
    border-color: var(--tw-primary);
    color: var(--tw-primary-inverse, #fff);
}
.dark .flatpickr-day.flatpickr-disabled,
.dark .flatpickr-day.prevMonthDay,
.dark .flatpickr-day.nextMonthDay {
    color: var(--tw-gray-500);
}
.dark .flatpickr-time input,
.dark .flatpickr-time .flatpickr-am-pm,
.dark .flatpickr-time .flatpickr-time-separator {
    background: var(--tw-coal-500, #0D0E12);
    color: var(--tw-gray-800);
}
.dark .flatpickr-time input:hover,
.dark .flatpickr-time .flatpickr-am-pm:hover {
    background: var(--tw-gray-200);
}

.dark .ts-control,
.dark .ts-wrapper.single .ts-control,
.dark .ts-dropdown {
    background: var(--tw-light, #1F212A);
    color: var(--tw-gray-800);
    border-color: var(--tw-gray-300);
}
.dark .ts-wrapper.single .ts-control,
.dark .ts-wrapper.single .ts-control input {
    background: var(--tw-light, #1F212A);
    color: var(--tw-gray-800);
}
.dark .ts-dropdown .option,
.dark .ts-dropdown .optgroup-header,
.dark .ts-dropdown .create {
    background: var(--tw-light, #1F212A);
    color: var(--tw-gray-800);
}
.dark .ts-dropdown .active {
    background: var(--tw-gray-200);
    color: var(--tw-gray-900);
}
.dark .ts-dropdown .no-results,
.dark .ts-control input::placeholder {
    color: var(--tw-gray-500);
}
.dark .ts-wrapper.multi .ts-control > div {
    background: var(--tw-gray-200);
    color: var(--tw-gray-900);
    border-color: var(--tw-gray-300);
}

.dark .ts-dropdown.plugin-dropdown_input .dropdown-input-wrap,
.dark .ts-wrapper .ts-control::after {
    border-color: var(--tw-gray-300);
}















.toolbar-host [data-crm-panel] > .card,
.toolbar-host [data-crm-panel] > .card > .card-body {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
}







.toolbar-host [data-crm-panel] > .card > .card-header,
.toolbar-host [data-crm-panel] > .card > .card-body { padding-inline: 0; }



.toolbar-host [data-crm-panel] > .card > .card-body { overflow: visible; }




















.rt-rows > tr > td { padding: 0.5rem 0.75rem; }
.rt-rows > tr > td.c { text-align: center; }



.rt-t-danger  { --rt-tone: var(--tw-danger); }
.rt-t-warning { --rt-tone: var(--tw-warning); }
.rt-t-success { --rt-tone: var(--tw-success); }
.rt-t-info    { --rt-tone: var(--tw-info); }
.rt-t-muted   { --rt-tone: var(--tw-gray-500); }




.rt-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.375rem;
    border-radius: 0.375rem;
    font-size: 10px;
    font-weight: 600;
    color: var(--rt-tone, var(--tw-gray-500));
}
.rt-pill-bg { background-color: var(--tw-gray-100); }



.rt-dot {
    width: 0.375rem;
    height: 0.375rem;
    border-radius: 9999px;
    background: var(--rt-tone, currentColor);
    flex-shrink: 0;
}
.rt-dot-lg { width: 0.5rem; height: 0.5rem; }



.rt-act {
    padding: 0.25rem;
    border-radius: 0.25rem;
    color: var(--tw-gray-400);
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
.rt-act:hover { color: var(--rt-tone, var(--tw-gray-700)); }
.rt-acts { display: inline-flex; align-items: center; gap: 0.125rem; }




.rt-acts-sep {
    width: 1px;
    align-self: stretch;
    min-height: 1rem;
    margin: 0 0.3125rem;
    background: var(--tw-gray-200);
    flex-shrink: 0;
}





.rt-copy { cursor: pointer; }
.rt-copy > * { border-bottom: 1px dotted var(--tw-gray-300); }
.rt-copy:hover > * { border-bottom-color: var(--tw-gray-500); }


.rt-mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.rt-id   { font-size: 0.75rem; line-height: 1rem; font-weight: 600; color: var(--tw-gray-700); }
.rt-user { font-size: 0.75rem; line-height: 1rem; font-weight: 500; color: var(--tw-gray-700);
           overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 120px; }
.rt-sub  { font-size: 10px; color: var(--tw-gray-400); }
.rt-dash { color: var(--tw-gray-400); }




















.rt-qt-ok    { color: #15803d; background: #f0fdf4; border-color: #bbf7d0; }
.rt-qt-low   { color: #b45309; background: #fffbeb; border-color: #fde68a; }
.rt-qt-empty { color: #b91c1c; background: #fef2f2; border-color: #fecaca; }

.dark .rt-qt-ok    { color: #86efac; background: #10231a; border-color: #14532d; }
.dark .rt-qt-low   { color: #fcd34d; background: #2a1f0d; border-color: #78350f; }
.dark .rt-qt-empty { color: #fca5a5; background: #2a1215; border-color: #7f1d1d; }




.rt-qh {
    display: inline-block;
    max-width: 100%;
    padding: 0.0625rem 0.4375rem;
    border: 1px solid transparent;
    border-radius: 0.375rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}



.rt-qh::before {
    content: "";
    display: inline-block;
    width: 0.375rem;
    height: 0.375rem;
    margin-right: 0.375rem;
    border-radius: 9999px;
    background: currentColor;
    vertical-align: middle;
}



.rt-qb {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.0625rem 0.375rem;
    border: 1px solid transparent;
    border-radius: 0.375rem;
    font-size: 10px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

















.rt-fbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.375rem;
    min-width: 0;
}



.rt-fgrp {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.375rem;
    padding-right: 0.5rem;
    border-right: 1px solid var(--tw-gray-200);
}
.rt-fgrp:last-of-type { border-right: 0; padding-right: 0; }




.rt-fpill {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    height: 1.75rem;
    max-width: 13rem;
    padding: 0 0.5rem;
    border: 1px solid var(--tw-gray-300);
    border-radius: 0.375rem;
    background: var(--tw-light);
    font-size: 11px;
    line-height: 1;
    white-space: nowrap;
}
.rt-fpill:hover { border-color: var(--tw-gray-400); }
.rt-fpill-l { color: var(--tw-gray-500); font-weight: 500; }
.rt-fpill-v {
    color: var(--tw-gray-800);
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


.rt-fpill-on { border-color: var(--tw-primary); background: var(--tw-primary-light); }
.rt-fpill-on .rt-fpill-l { color: var(--tw-primary); }
.rt-fpill-on .rt-fpill-v { color: var(--tw-primary); }




.rt-ftext {
    height: 1.75rem;
    padding: 0 0.5rem;
    border: 1px solid var(--tw-gray-300);
    border-radius: 0.375rem;
    background: var(--tw-light);
    font-size: 11px;
    color: var(--tw-gray-800);
    width: 7rem;
}
.rt-ftext:focus { outline: 0; border-color: var(--tw-primary); }
.rt-ftext-on { border-color: var(--tw-primary); background: var(--tw-primary-light); }
.rt-fsearch { width: 12rem; padding-left: 1.75rem; }























.qos-meter {
    border: 1px solid var(--tw-gray-200);
    border-radius: 0.5rem;
    background: var(--tw-light);
    padding: 0.5rem 0.75rem;
    min-width: 0;
}
.qos-meter-head { display: flex; align-items: baseline; justify-content: space-between; gap: 0.5rem; }
.qos-meter-id   { display: flex; align-items: baseline; gap: 0.375rem; min-width: 0; }

.qos-num {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    color: var(--tw-gray-900);
    font-variant-numeric: tabular-nums;
}
.qos-lbl   { font-size: 11px; font-weight: 500; color: var(--tw-gray-500); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qos-aside { font-size: 10px; font-weight: 600; color: var(--tw-gray-500); flex-shrink: 0; white-space: nowrap; }





.qos-track {
    display: flex;
    gap: 2px;
    height: 6px;
    border-radius: 9999px;
    overflow: hidden;
    background: var(--tw-gray-200);
}
.qos-track-lg { height: 10px; }




.qos-funnel-fill { display: flex; gap: 2px; height: 100%; min-width: 2px; }



.qos-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 0.125rem 0.75rem; margin-top: 0.375rem; }
.qos-leg    { display: inline-flex; align-items: center; gap: 0.25rem; min-width: 0; }
.qos-dot    { width: 6px; height: 6px; border-radius: 9999px; flex-shrink: 0; }
.qos-leg-v  { font-size: 11px; font-weight: 600; color: var(--tw-gray-900); font-variant-numeric: tabular-nums; }
.qos-leg-l  { font-size: 10px; text-transform: uppercase; letter-spacing: 0.03em; color: var(--tw-gray-500); white-space: nowrap; }


.qos-zero .qos-leg-v, .qos-zero .qos-leg-l { color: var(--tw-gray-400); }




.qos-pick        { cursor: pointer; border-radius: 0.5rem; }
.qos-pick:hover  { background: var(--tw-gray-100); }
.qos-pick-on     { background: var(--tw-primary-light); }
.qos-pick-on .qos-lbl,
.qos-pick-on .qos-leg-l,
.qos-pick-on .qos-leg-v { color: var(--tw-primary); }


.qos-pick-on:hover { background: var(--tw-primary-light); }


.qos-tnum { font-variant-numeric: tabular-nums; }



















.rt-cs            { color: var(--tw-gray-400); }
.rt-cs-idle       { color: var(--tw-gray-400); }
.rt-cs-offered,
.rt-cs-ringing    { color: #d97706; }
.rt-cs-talking    { color: #16a34a; }
.rt-cs-wrapup,
.rt-cs-closing    { color: #2563eb; }

.rt-cs-wrap {
    position: fixed; inset: 0; z-index: 1060;
    background: rgba(15, 23, 42, 0.45);
    display: flex; align-items: center; justify-content: center;
    padding: 16px;
}
.rt-cs-card {
    background: #fff; border-radius: 10px; width: 100%; max-width: 940px;


    max-height: 88svh; display: flex; flex-direction: column;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.28);
}
.rt-cs-head {
    display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
    padding: 14px 18px; border-bottom: 1px solid var(--tw-gray-200); flex-shrink: 0;
}
.rt-cs-title { font-size: 14px; font-weight: 600; color: var(--tw-gray-800); }
.rt-cs-sub   { font-size: 11px; color: var(--tw-gray-500); margin-top: 2px; }
.rt-cs-body  { padding: 14px 18px; overflow-y: auto; }

.rt-cs-pill {
    font-size: 10px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase;
    padding: 3px 8px; border-radius: 999px; background: var(--tw-gray-100);
}


.rt-cs-flags { display: flex; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.rt-cs-flag {
    display: flex; align-items: flex-start; gap: 7px;
    font-size: 12px; line-height: 1.45; padding: 8px 10px; border-radius: 7px;
    border: 1px solid var(--tw-gray-200); background: var(--tw-gray-100); color: var(--tw-gray-700);
}
.rt-cs-flag.rt-cs-bad  { border-color: #fecaca; background: #fef2f2; color: #991b1b; }
.rt-cs-flag.rt-cs-warn { border-color: #fde68a; background: #fffbeb; color: #92400e; }
.rt-cs-flag.rt-cs-ok   { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }




.dark .rt-cs-card { background: var(--tw-gray-100); }
.dark .rt-cs-call { background: transparent; }
.dark .rt-cs-flag.rt-cs-bad  { border-color: #7f1d1d; background: #2a1215; color: #fca5a5; }
.dark .rt-cs-flag.rt-cs-warn { border-color: #78350f; background: #2a1f0d; color: #fcd34d; }
.dark .rt-cs-flag.rt-cs-ok   { border-color: #14532d; background: #10231a; color: #86efac; }
.dark .rt-cs-draft { border-color: #1e40af; background: #111c33; }
.rt-cs-note { font-size: 12px; color: var(--tw-gray-500); padding: 6px 0; }
.rt-cs-note.rt-cs-bad { color: #991b1b; }

.rt-cs-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.rt-cs-col {
    border: 1px solid var(--tw-gray-200); border-radius: 8px; padding: 10px 12px; min-width: 0;
}
.rt-cs-h {
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
    color: var(--tw-gray-600); margin: 0 0 8px;
}
.rt-cs-h span { font-weight: 500; text-transform: none; letter-spacing: 0; color: var(--tw-gray-400); }
.rt-cs-h2 {
    font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
    color: var(--tw-gray-400); margin: 10px 0 4px;
}

.rt-cs-kv { display: grid; grid-template-columns: auto 1fr; gap: 3px 10px; font-size: 12px; }
.rt-cs-kv span { color: var(--tw-gray-400); }
.rt-cs-kv b    { color: var(--tw-gray-700); font-weight: 600; word-break: break-word; }

.rt-cs-call {
    border: 1px solid var(--tw-gray-200); border-radius: 6px;
    padding: 7px 9px; margin-top: 6px; background: #fff;
}
.rt-cs-call.is-ended { background: var(--tw-gray-100); opacity: 0.75; }
.rt-cs-call-top  { display: flex; align-items: center; gap: 7px; font-size: 12px; flex-wrap: wrap; }
.rt-cs-call-meta { display: flex; gap: 10px; font-size: 11px; color: var(--tw-gray-500); margin-top: 3px; flex-wrap: wrap; }
.rt-cs-call-meta b { color: var(--tw-gray-700); }
.rt-cs-tag {
    font-size: 9px; font-weight: 700; text-transform: uppercase; padding: 1px 5px;
    border-radius: 3px; background: var(--tw-gray-100); color: var(--tw-gray-600);
}
.rt-cs-dim { color: var(--tw-gray-500); font-size: 11px; }
.rt-cs-chan {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 10px; color: var(--tw-gray-600); background: var(--tw-gray-100);
    border-radius: 4px; padding: 3px 6px; margin-top: 4px; word-break: break-all;
}
.rt-cs-draft {
    margin-top: 10px; padding: 8px 10px; border-radius: 6px;
    border: 1px dashed #93c5fd; background: #eff6ff;
}





.rt-cs-log { margin-top: 14px; width: 0; min-width: 100%; overflow-x: auto; }
.rt-cs-log summary {
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
    color: var(--tw-gray-500); cursor: pointer;
}
.rt-cs-log table { width: 100%; margin-top: 6px; font-size: 11px; border-collapse: collapse; }
.rt-cs-log td { padding: 3px 8px 3px 0; border-bottom: 1px solid var(--tw-gray-100); vertical-align: top; }
.rt-cs-log b  { color: var(--tw-gray-700); }



@media (max-width: 760px) {
    .rt-cs-cols { grid-template-columns: 1fr; }
}





















.er-band {
    border: 1px solid var(--tw-gray-200);
    border-left: 3px solid var(--tw-primary);
    border-radius: 0.5rem;
    background: var(--tw-light);
    padding: 0.75rem 0.875rem;
}
.er-band-top { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; }
.er-who  { font-size: 0.875rem; font-weight: 600; color: var(--tw-gray-900); }
.er-who-sub { font-size: 11px; color: var(--tw-gray-500); }


.er-quote {
    margin-top: 0.5rem;
    padding: 0.5rem 0.625rem;
    border-radius: 0.375rem;
    background: var(--tw-gray-100);
    color: var(--tw-gray-800);
    font-size: 0.8125rem;
    line-height: 1.45;
    white-space: pre-wrap;
    word-break: break-word;
}
.er-quote-empty { color: var(--tw-gray-400); font-style: italic; }




.er-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    border-bottom: 1px solid var(--tw-gray-200);
    padding-bottom: 0.375rem;
}
.er-tab {
    display: inline-flex;
    align-items: center;
    gap: 0.3125rem;
    padding: 0.3125rem 0.625rem;
    border-radius: 0.375rem;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--tw-gray-600);
    cursor: pointer;
    white-space: nowrap;
}
.er-tab:hover { background: var(--tw-gray-100); }
.er-tab-on {
    background: var(--tw-primary-light);
    border-color: var(--tw-primary);
    color: var(--tw-primary);
}
.er-tab-on:hover { background: var(--tw-primary-light); }


.er-tab-empty { color: var(--tw-gray-400); cursor: default; }
.er-tab-empty:hover { background: transparent; }
.er-tab-n {
    font-size: 10px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    padding: 0 0.25rem;
    border-radius: 0.25rem;
    background: var(--tw-gray-200);
    color: var(--tw-gray-600);
}
.er-tab-on .er-tab-n { background: var(--tw-primary); color: var(--tw-light); }


.er-sec { border: 1px solid var(--tw-gray-200); border-radius: 0.5rem; background: var(--tw-light); }
.er-sec-h {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--tw-gray-200);
}
.er-sec-t { font-size: 0.8125rem; font-weight: 600; color: var(--tw-gray-800); display: flex; align-items: center; gap: 0.375rem; min-width: 0; }
.er-sec-sub { font-size: 10px; font-weight: 400; color: var(--tw-gray-500); }
.er-sec-b { padding: 0.625rem 0.75rem; }




.er-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
    gap: 0.375rem;
}
.er-kv {
    border: 1px solid var(--tw-gray-200);
    border-radius: 0.375rem;
    background: var(--tw-gray-100);
    padding: 0.3125rem 0.5rem;
    min-width: 0;
}
.er-k {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--tw-gray-500);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.er-v {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--tw-gray-900);
    font-variant-numeric: tabular-nums;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.er-kv-zero .er-v { color: var(--tw-gray-400); }


.er-v-none { color: var(--tw-gray-400); font-weight: 500; font-style: italic; }


.er-kv-warn   { border-color: var(--tw-warning); }
.er-kv-warn   .er-v { color: var(--tw-warning); }
.er-kv-danger { border-color: var(--tw-danger); }
.er-kv-danger .er-v { color: var(--tw-danger); }
.er-kv-ok     .er-v { color: var(--tw-success); }



.er-raw {
    margin-top: 0.5rem;
    padding: 0.5rem;
    border-radius: 0.375rem;
    background: var(--tw-gray-100);
    color: var(--tw-gray-700);
    font-size: 11px;
    line-height: 1.45;
    overflow: auto;
    max-height: 22rem;
    white-space: pre;
}
.er-toggle {
    font-size: 10px;
    font-weight: 600;
    color: var(--tw-gray-500);
    cursor: pointer;
    background: transparent;
    border: 0;
    padding: 0;
    white-space: nowrap;
}
.er-toggle:hover { color: var(--tw-primary); }


.er-call {
    margin-top: 0.5rem;
    border: 1px solid var(--tw-gray-200);
    border-radius: 0.375rem;
    padding: 0.5rem 0.625rem;
    background: var(--tw-gray-100);
}
.er-call-h { display: flex; flex-wrap: wrap; align-items: center; gap: 0.375rem 0.625rem; }
.er-call-id { font-size: 0.8125rem; font-weight: 700; color: var(--tw-gray-900); font-variant-numeric: tabular-nums; }
.er-call-f { display: flex; flex-wrap: wrap; gap: 0.25rem 0.875rem; margin-top: 0.375rem; }
.er-call-kv { display: inline-flex; align-items: baseline; gap: 0.25rem; min-width: 0; }
.er-call-k { font-size: 10px; text-transform: uppercase; letter-spacing: 0.03em; color: var(--tw-gray-500); }
.er-call-v { font-size: 11px; font-weight: 600; color: var(--tw-gray-800); font-variant-numeric: tabular-nums; }

.er-call-note {
    margin-top: 0.375rem;
    font-size: 11px;
    line-height: 1.45;
    color: var(--tw-gray-600);
}


@media (max-width: 760px) {
    .er-grid { grid-template-columns: 1fr 1fr; }
}









@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}
