﻿.fs-xs { font-size: var(--font-size-xs) !important; }
.fs-sm { font-size: var(--font-size-sm) !important; }
.fs-base { font-size: var(--font-size-base) !important; }
.fs-md { font-size: var(--font-size-md) !important; }
.fs-lg { font-size: var(--font-size-lg) !important; }
.fs-xl { font-size: var(--font-size-xl) !important; }
.binas-scrollable {
    max-height: 80vh;
    min-height: 60vh;
    overflow-y: auto;
    overflow-x: hidden;
}
.legend-swatch {
    display: inline-block;
  width: 16px;
    height: 16px;
    border-radius: 3px;
    margin-right: 8px;
    vertical-align: middle;
}
.legend-swatch-purple {
    background: var(--material-purple);
    opacity: 0.6;
}
.legend-swatch-blue {
    background: var(--palette-indigo);
    opacity: 0.5;
}
.icon-xs {
    font-size: 12px;
}
.icon-sm {
    font-size: var(--font-size-base);
}
.icon-orange {
    color: var(--material-orange);
}
.icon-green {
    color: var(--color-success);
}
.icon-blue {
    color: var(--category-trend);
}
.icon-red {
    color: var(--color-danger);
}
.icon-purple {
    color: #6f42c1;
}
.icon-teal {
    color: #20c997;
}
.icon-gray {
    color: var(--outlook-text-secondary);
}
.icon-indigo {
    color: var(--palette-indigo);
}
.text-block-small {
    display: block;
 font-size: 0.7rem;
    color: var(--outlook-text-secondary);
    font-weight: normal;
    line-height: 1.3;
}
.rounded-md {
    border-radius: var(--radius-md);
}
.rounded-lg {
    border-radius: var(--radius-lg);
}
@media (max-width: 768px) {
    .binas-scrollable {
    max-height: 60vh;
        min-height: 40vh;
    }
    
    .legend-swatch {
        width: 14px;
        height: 14px;
    }
    
    .icon-xs {
        font-size: 10px;
    }
    
    .icon-sm {
        font-size: 12px;
    }
    
    .icon-md {
        font-size: var(--font-size-base);
    }
    
    .icon-lg {
font-size: var(--font-size-lg);
    }
}
@media (max-width: 480px) {
    .binas-scrollable {
        max-height: 50vh;
        min-height: 30vh;
    }
    
    .legend-swatch {
        width: 12px;
    height: 12px;
        margin-right: 6px;
    }
    
    .text-block-small {
        font-size: 0.65rem;
  }
}
@media print {
    .backdrop-dark,
    .overlay-light {
    display: none !important;
    }
    
    .binas-scrollable {
        max-height: none;
        min-height: auto;
        overflow: visible;
    }
}
.visually-hidden {
  position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
 overflow: hidden;
  clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible,
[role="menuitem"]:focus-visible {
    outline: 2px solid var(--category-trend);
    outline-offset: 2px;
}
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="combobox"]:focus-visible,
[role="listbox"]:focus-visible {
    outline: none !important;
}
.panel-header-mobile {
    background: linear-gradient(135deg, var(--category-trend) 0%, #0056b3 100%);
    color: var(--text-light);
    padding: 1rem;
    border-radius: var(--radius-md) 8px 0 0;
}
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
.form-inline {
    display: inline;
}
.opacity-50 {
    opacity: 0.5;
}
.w-15-pct {
    width: 15%;
}
.identity-avatar-badge {
    width: 3rem;
    height: 3rem;
}
.formula-popover .popover-body {
    padding: 0.5rem 0.65rem;
}
.btn-xs {
    font-size: 0.7rem !important;
    padding: 0.15rem 0.4rem !important;
}
.btn-compact {
    font-size: 0.8rem !important;
    padding: 0.35rem 0.75rem !important;
}
.w-col-24 {
    width: calc(100% / 24) !important;
}
.w-col-12 {
    width: calc(100% / 12) !important;
}
.w-col-6 {
    width: calc(100% / 6) !important;
}
.alert-compact {
    font-size: 0.75rem !important;
    padding: 0.5rem 0.75rem !important;
}
.outlook-text-tertiary {
    color: var(--outlook-text-tertiary);
}
.answer-container-sm {
    max-width: 480px;
}
.answer-container-md {
    max-width: 680px;
}
.bg-outlook-tertiary {
    background-color: var(--outlook-bg-tertiary) !important;
}
.rounded-12 {
    border-radius: 12px !important;
}
.comb-table-header {
    height: 3em;
}
.comb-table-row {
    height: 4em;
}

/* Tooltip close button */
.tooltip-close-btn {
    position: absolute;
    top: 4px;
    right: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--icon-size-lg);
    height: var(--icon-size-lg);
    padding: 0;
    background: transparent;
    border: none;
    color: var(--outlook-text-tertiary);
    border-radius: var(--radius-xs);
    cursor: pointer;
    font-size: var(--font-size-sm);
    line-height: 1;
    transition: color var(--transition-fast), background var(--transition-fast);
}

.tooltip-close-btn:hover {
    color: var(--outlook-text-primary);
    background: var(--outlook-bg-hover);
}


/* Restored from unused (classes found used in cshtml/JS) */
.binas-fullheight {
    height: 100vh;
    min-height: 100vh;
}

.binas-max-80vh {
    max-height: 80vh;
}

.icon-md {
    font-size: var(--font-size-md);
}

.text-muted-light {
    color: #999;
}

.progress-thin {
    height: 4px;
}

.progress-mini {
    height: 2px;
}

.progress-medium {
    height: 8px;
}

.rounded-xs {
    border-radius: 3px;
}

.geo-results-summary {
    background: var(--bs-light);
    border-radius: var(--radius-md);
    padding: 1rem;
}

.spinner-custom {
    border: 3px solid rgba(0, 123, 255, 0.2);
    border-top-color: var(--category-trend);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
}

.disabled-card {
    opacity: 0.6;
    cursor: not-allowed;
}

.opacity-60 {
    opacity: 0.6;
}

.opacity-70 {
    opacity: 0.7;
}

.max-w-300 {
    max-width: 300px;
}

.w-10-pct {
    width: 10%;
}

