:root {
    /* Unified Font System */
    --medora-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

    /* Medical Brand Colors */
    --primary: #0ea5e9;
    --primary-dark: #0369a1;
    --primary-light: #38bdf8;
    --accent: #0284c7;
    --medical-blue: #1e40af;
    --clinical-teal: #0891b2;
    --primary-lightest: #F0F8FF;
    --border-grey: #E5E7EB;
    --light-grey: #F9FAFB;
    --lightest-grey: #F8FAFC;
    /* Professional Dark Theme */
    --background: #000000;
    --background-card: #0a0a0a;
    --background-secondary: #1a1a1a;
    --background-tertiary: #0f1419;
    --background-glass: rgba(10, 10, 10, 0.9);

    /* Text Colors */
    --text-primary: #ffffff;
    --text-secondary: #a1a1aa;
    --text-muted: #71717a;
    --text-accent: #0ea5e9;

    /* Medical Effects */
    --medical-glow: 0 0 20px rgba(14, 165, 233, 0.2);
    --clinical-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    --border-medical: 1px solid rgba(14, 165, 233, 0.2);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background: var(--lightest-grey);
    color: #2C2C2C;
    height: 100vh;
    overflow: hidden;
    scroll-behavior: smooth;
}

.header {
    background: #000000;
    border-bottom: 1px solid var(--border-grey);
    padding: 12px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 2px 6px rgba(0,0,0,0.4);
}

.logo {
    font-size: 18px;
    font-weight: 600;
    color: var(--primary);
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}
img.logo-icon {
    width: 36px;
    height: 36px;
    border-radius: 4px;
    object-fit: contain;
    background: #000000;
    border: 2px solid #0EA5FF;
    padding: 4px;
    box-sizing: border-box;
}
span.logo-text {
    font-size: 22px;
    font-weight: bold;
    color: #0EA5FF;
    letter-spacing: -0.01em;
}

.trial-info {
    color: #0EA5FF;
    font-weight: bold;
    font-size: 14px;
    display: none;
}

.main-container {
    display: flex;
    height: calc(100vh - 60px);
    gap: 0 !important;
    padding-top: 0;
    padding-left: 0;
    margin-left: 20px;
}
button#profile-btn {
    border-radius: 50%;
    width: 45px;
    height: 45px;
    text-align: center;
    background: #0EA5FF;
    border: 2px solid #0EA5FF;
    color: #000000;
    cursor: pointer;
    transition: all 0.3s ease;
}
button#profile-btn:hover {
    background: #000000;
    border-color: #0EA5FF;
}
button#profile-btn span {
    position: relative;
    margin-left: -5px;
    font-size: 20px;
    filter: invert(1);
}
button#profile-btn:hover span {
    filter: invert(0) brightness(2) sepia(1) saturate(5) hue-rotate(175deg);
}

.sidebar {
    width: 280px;
    background: var(--lightest-grey) !important;
    border-right: 1px solid var(--border-grey);
    padding: 20px;
    overflow-y: auto;
    border: none !important;
}

.sidebar h2 {
    color: #374151;
    font-size: 16px;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.filter-dropdown {
    background: var(--text-primary);
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    padding: 8px 12px;
    margin-bottom: 16px;
    color: #6B7280;
    width: 100%;
}

/* Patient items - Medical Enterprise Grade (Light) */
.patient-item {
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid rgba(226, 232, 240, 0.8);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    gap: 14px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}
#patient-list{
    background: var(--lightest-grey);
    padding: 0;
    border: none;
}
.patient-item:hover {
    border-color: #3b82f6;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.12), 0 0 0 1px rgba(59, 130, 246, 0.15);
}

.patient-item.active,
.patient-item.selected {
    border-color: #3b82f6;
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.4), 0 2px 8px rgba(59, 130, 246, 0.1);
}

.patient-id {
    font-weight: 600;
    color: #2C2C2C;
    margin-bottom: 4px;
}

.patient-details {
    font-size: 12px;
    color: #6B7280;
    line-height: 1.4;
}

.content-area {
    flex: 1;
    padding: 24px;
    overflow-y: auto;
}

.patient-header {
    margin-bottom: 24px;
}

.patient-header h3 {
    color: #374151;
    font-size: 18px;
    margin-bottom: 8px;
}

.patient-input {
    background: var(--light-grey);
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    padding: 12px 16px;
    width: 100%;
    max-width: 400px;
    margin-bottom: 16px;
    font-size: 14px;
}

.patient-input:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(0,191,255,0.1);
}

.start-visit-btn {
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 6px;
    padding: 10px 20px;
    font-weight: 500;
    cursor: pointer;
    margin-bottom: 16px;
}

.start-visit-btn:hover {
    background: #0099CC;
}

/* ======================================== */
/* ENTERPRISE BUTTON STYLING SYSTEM         */
/* ======================================== */

/* Pulsing animation for primary buttons */
@keyframes pulseGlow {
    0% {
        box-shadow: 0 0 0 0 rgba(14, 165, 255, 0.7);
    }
    50% {
        box-shadow: 0 0 20px 10px rgba(14, 165, 255, 0.3);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(14, 165, 255, 0.7);
    }
}

/* Base button styles for action buttons */
.action-buttons {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 16px;
}

.action-buttons button,
.action-buttons a {
    height: 42px;
    padding: 0 20px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 500;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    outline: none;
    position: relative;
}

/* Primary Button Style (for next action) */
.btn-primary,
#start-visit-btn,
.start-visit-btn {
    background: #0EA5FF !important;
    color: white !important;
    border: none !important;
    font-weight: 600;
    animation: pulseGlow 2.5s infinite;
}

.btn-primary:hover,
#start-visit-btn:hover,
.start-visit-btn:hover {
    background: #0986CC !important;
    animation: none;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(14, 165, 255, 0.3);
}

.btn-primary:focus,
#start-visit-btn:focus,
.start-visit-btn:focus {
    box-shadow: 0 0 0 2px #0EA5FF;
    animation: none;
}

.btn-primary:active,
#start-visit-btn:active,
.start-visit-btn:active {
    transform: translateY(0);
    animation: none;
}

/* Stop pulse animation after interaction or timeout */
.btn-primary.no-pulse,
#start-visit-btn.no-pulse,
.start-visit-btn.no-pulse {
    animation: none;
}

/* Secondary Button Style (other actions) */
.btn-secondary,
#start-listening-btn,
#stop-listening-btn,
#pause-listening-btn,
#submit-transcript-btn,
#smart-learning-badge,
#view-transcript-btn {
    background: white !important;
    color: #0EA5FF !important;
    border: 1.5px solid #0EA5FF !important;
    font-weight: 500;
}

.btn-secondary:hover,
#start-listening-btn:hover,
#stop-listening-btn:hover,
#pause-listening-btn:hover,
#submit-transcript-btn:hover,
#smart-learning-badge:hover,
#view-transcript-btn:hover {
    background: rgba(14, 165, 255, 0.06) !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(14, 165, 255, 0.2);
}

.btn-secondary:focus,
#start-listening-btn:focus,
#stop-listening-btn:focus,
#pause-listening-btn:focus,
#submit-transcript-btn:focus,
#smart-learning-badge:focus,
#view-transcript-btn:focus {
    box-shadow: 0 0 0 2px #0EA5FF;
}

.btn-secondary:active,
#start-listening-btn:active,
#stop-listening-btn:active,
#pause-listening-btn:active,
#submit-transcript-btn:active,
#smart-learning-badge:active,
#view-transcript-btn:active {
    transform: translateY(0);
}

/* Disabled Button Style */
.btn-disabled,
button:disabled,
.action-buttons button:disabled {
    background: #F5F7FB !important;
    color: #A1A7B3 !important;
    border: 1px solid #D5D9E1 !important;
    cursor: default !important;
    opacity: 1 !important;
    animation: none !important;
}

.btn-disabled:hover,
button:disabled:hover,
.action-buttons button:disabled:hover {
    transform: none !important;
    box-shadow: none !important;
    background: #F5F7FB !important;
}

/* Special states for listening buttons */
#stop-listening-btn {
    background: #EF4444 !important;
    color: white !important;
    border: none !important;
}

#stop-listening-btn:hover {
    background: #DC2626 !important;
}

#pause-listening-btn {
    background: #F59E0B !important;
    color: white !important;
    border: none !important;
}

#pause-listening-btn:hover {
    background: #D97706 !important;
}

/* View Transcript link styling */
#view-transcript-btn {
    height: auto;
    padding: 8px 12px;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.instruction-text {
    color: #6B7280;
    font-size: 14px;
    margin-bottom: 24px;
}

.note-section {
    background: var(--light-grey);
    border: 1px solid var(--border-grey);
    border-radius: 8px;
    padding: 16px 0;
    margin-bottom: 16px;
}

.note-actions {
    display: flex;
    gap: 8px;
    margin-top: 12px;
}

.note-btn {
    background: var(--text-primary);
    border: 1px solid #D1D5DB;
    border-radius: 4px;
    padding: 6px 12px;
    font-size: 12px;
    cursor: pointer;
    color: #6B7280;
}

.note-btn:hover {
    border-color: var(--primary);
    color: var(--primary);
}

.copy-all-btn {
    background: var(--primary);
    color: white;
    border: none;
    border-radius: 6px;
    padding: 10px 20px;
    font-weight: 500;
    cursor: pointer;
    margin-top: 16px;
}

.right-panel {
    width: 320px;
    background: var(--lightest-grey) !important;
    border-left: 1px solid var(--border-grey);
    padding: 20px;
    overflow-y: auto;
}

.ai-insights {
    background: var(--primary);
    color: white;
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 24px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
}

.insight-section {
    margin-bottom: 24px;
}

.insight-title {
    color: var(--primary);
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
    letter-spacing: 0.5px;
}

.insight-content {
    color: #9CA3AF;
    font-size: 13px;
}

.allergenic-profile {
    background: var(--text-primary);
    border: 1px solid var(--border-grey);
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 20px;
}

.profile-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
}

.new-badge {
    background: var(--primary);
    color: white;
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 500;
}

.profile-tabs {
    display: flex;
    gap: 16px;
    border-bottom: 1px solid var(--border-grey);
    padding-bottom: 12px;
    margin-bottom: 12px;
}

.profile-tab {
    font-size: 12px;
    color: #6B7280;
    text-align: center;
    flex: 1;
}

.loading-text {
    color: #9CA3AF;
    font-size: 12px;
    text-align: center;
    padding: 20px 0;
}

.clinical-refs {
    background: var(--text-primary);
    border: 1px solid var(--border-grey);
    border-radius: 8px;
    padding: 16px;
}

.refs-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.refs-count {
    background: #6B7280;
    color: white;
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 50%;
    min-width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-ready {
    color: #374151;
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 8px;
}

.search-desc {
    color: #6B7280;
    font-size: 12px;
    line-height: 1.4;
}

 #user-menu-container {
    position: fixed !important;
    top: 70px !important;
    right: 20px !important;
    background: white !important;
    border: 1px solid var(--border-grey) !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 25px rgba(0,0,0,0.15) !important;
    z-index: 999999 !important;
    min-width: 220px !important;
    font-family: Inter, sans-serif !important;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Show menu when explicitly set to display: block */
#user-menu-container[style*="display: block"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* PROGRESSIVE DISCLOSURE STYLES */
.hidden-until-visit-started {
    display: none !important;
}

.visible-during-visit {
    display: block !important;
}

.visit-not-started #transcript-input,
.visit-not-started #start-listening-btn,
.visit-not-started #stop-listening-btn,
.visit-not-started #submit-transcript-btn,
.visit-not-started #smart-learning-badge {
    display: none !important;
}

.visit-started #transcript-input,
.visit-started #start-listening-btn,
.visit-started #submit-transcript-btn,
.visit-started #smart-learning-badge {
    display: block !important;
}

/* Add Patient Button - MedoraSPT Secondary Dark Navy */
.add-patient-btn {
    width: 100%;
    background: #0f172a !important;
    color: #e5e7eb !important;
    border: 1px solid rgba(148, 163, 184, 0.5) !important;
    padding: 0 16px !important;
    height: 44px !important;
    border-radius: 9999px !important;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    margin-bottom: 8px;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.patient-initials{
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}
.add-patient-btn:hover {
    background: #1e293b !important;
    border-color: rgba(148, 163, 184, 0.7) !important;
    transform: none !important;
    box-shadow: none !important;
}

.ims-sync-status{
    display: none;
    margin: 10px;
    padding: 12px;
    background: #f8f9fa;
    border-left: 4px solid #0ea5e9;
    border-radius: 4px;
    font-size: 13px;
    color: #333;
    animation: slideIn 0.3s ease;
}

/* Sync IMS Button - MedoraSPT Primary Blue */
.ims-sync-btn{
    width: 100% !important;
    background: #3b82f6 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 0 16px !important;
    height: 44px !important;
    margin: 0px;
    border-radius: 9999px !important;
    cursor: pointer;
    font-weight: 500;
    font-size: 14px;
    box-shadow: 0 4px 15px rgba(59, 130, 246, 0.35) !important;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.ims-sync-btn:hover {
    transform: none !important;
    background: #2563eb !important;
    box-shadow: 0 6px 20px rgba(59, 130, 246, 0.45) !important;
}
.ims-sync-btn span {
    font-size: 14px;
}

.push-to-ims-btn{
    display: none;
    background: linear-gradient(135deg, #0ea5e9 0%, #0099CC 100%);
    color: var(--text-primary);
    border: none;
    padding: 10px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: bold;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 212, 255, 0.3);
    transform: translateY(0);
}
.push-to-ims-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 212, 255, 0.4);  
}
.push-status{
    display: none;
    padding: 10px;
    border-radius: 8px;
    font-weight: bold;
}
#smart-learning-modal{
    display: none; 
    position: fixed; 
    top: 50%; left: 50%; 
    transform: translate(-50%, -50%); 
    background: var(--text-primary); 
    padding: 20px; 
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); 
    z-index: 1000; 
    border-radius: 8px; 
    width: 500px;
}
#separate-modal{
    display: none; 
    position: fixed; 
    top: 50%; 
    left: 50%; 
    transform: translate(-50%, -50%); 
    background: var(--text-primary); 
    padding: 20px; 
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); 
    z-index: 1000; 
    border-radius: 8px;
}
#separate-apply-btn{
    margin-top: 10px; 
    padding: 8px 16px; 
    background: #4caf50; 
    color: var(--text-primary); 
    border: none; 
    border-radius: 4px; 
    cursor: pointer;
}
#separate-cancel-btn, #separate-save-btn{
    margin-top: 10px; 
    margin-left: 10px; 
    padding: 8px 16px; 
    color: var(--text-primary); 
    border: none; 
    border-radius: 4px; 
    cursor: pointer;
}
#separate-cancel-btn{
    background: #e63946;
}
#separate-save-btn{
    background: #4caf50;
}
.scroll-area, #main-content, #patient-sidebar, #ai-insights{
    padding: 10px !important;
}
.references-header, #allergeniq-modal-overlay .references-header, .allergeniq-modal .references-header{
    background: var(--text-primary) !important;
}
.references-container, #allergeniq-modal-overlay .references-container, .allergeniq-modal .references-container{
    background: var(--text-primary) !important;
    border-color: var(--border-grey) !important;
}
.references-title::before{
    content:none !important;
}
.references-header{
    background: none !important;
    border-bottom: 1px solid var(--border-grey) !important;
}
.references-grid{
    background: var(--border-grey) !important;
}
html body #references-section, html body .references-section, html body [id*="reference"]{
    border: 0px !important;
}
#patient-sidebar, #right-panel {
    background: var(--lightest-grey) !important;
}

/* Hide right panel only when no patient is selected */
.container:not(.patient-view) #right-panel {
    display: none;
}

/* Show right panel when patient is selected */
.container.patient-view #right-panel {
    display: block;
}
.empty-title{ color: var(--background) !important; }
.soap-section:hover, .insights-section:hover{ box-shadow: none;}
.recommendation-content{background: var(--lightest-grey);}
.recommendation-dropdown{ background: var(--text-primary); color: var(--background); border: 1px solid var(--primary);}
.reference-card {
    background: var(--lightest-grey) !important;
    border: 1px solid var(--primary) !important;
    border-radius: 6px !important;
    padding: 20px !important;
    transition: all 0.4s ease !important;
    position: relative !important;
    opacity: 1 !important;
    transform: translateY(0) !important;
}

.reference-card:hover {
    transform: translateY(-1px) !important;
    box-shadow: none !important;
    border-color: var(--primary) !important;
}

.reference-card * {
    color: var(--background) !important;
}

.reference-card .highlight,
.reference-card strong {
    color: var(--primary) !important;
}
#subjective-content, #objective-content, #assessment-content, #plan-content-container {
    padding: 0px !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

#profilepopup-modal-overlay .modal-content{
    background: #ffffff !important;
}
#profile-message{
    color: #0ea5e9;
    font-weight: bold;
    text-align: center;
}
.update-profile-btn {
    width: auto;
    background: #0ea5e9;
    color: #ffffff;
    border: none;
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    margin: 0 auto;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.update-profile-btn:hover {
    color: #0a0a0a;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(58, 91, 169, 0.3);
}


/* Subscription Style */

#subscriptionpopup-modal-overlay .modal-content{
    background: var(--text-primary) !important;
}
.subscription-section, .payments-section {
    background: #fff;
    border-radius: 8px;
    padding: 24px;
    margin: 24px auto;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.payments-table {
    width: 100%;
    border-collapse: collapse;
}
.payments-table th, .payments-table td {
    padding: 8px 12px;
    border-bottom: 1px solid #eee;
}
.payments-table th {
    background: #f8fafc;
    text-align: left;
}


/*************index optimization code *************/
.rainbow-progress-fill{
    height: 100%;
    background: linear-gradient(90deg, 
        #ef4444 0%, 
        #f97316 16.66%, 
        #eab308 33.33%, 
        #22c55e 50%, 
        #0ea5e9 66.66%, 
        #8b5cf6 83.33%, 
        #ec4899 100%);
    background-size: 300% 100%;
    border-radius: 5px;
    width: 0%;
    transition: width 0.4s ease;
    animation: rainbowFlow 3s linear infinite;
    position: relative;
    display: block;
    visibility: visible;
    opacity: 1;
}
.createConflictFreeLoader1{
    display: block;
    visibility: visible;
    opacity: 1;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 24px;
    margin: 16px 0;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    font-family: Inter, -apple-system, BlinkMacSystemFont, sans-serif;
    min-height: 160px;
    position: relative;
    z-index: 999;
}
.createConflictFreeLoader1 .loader-status-text {
    font-size: 14px;
    color: #6b7280;
    margin: 8px 0 20px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}
.createConflictFreeLoader1 .loader-status-text .search-medical-db{
    width: 8px;
    height: 8px;
    background: #0ea5e9;
    border-radius: 50%;
    animation: pulseDot 1.5s ease-in-out infinite;
}
.rainbow-progress-bar{
    width: 100%;
    height: 12px;
    background: #f3f4f6;
    border-radius: 6px;
    overflow: hidden;
    margin: 20px 0;
    position: relative;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
    border: 1px solid #e5e7eb;
}
.createConflictFreeLoader2{
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    padding: 16px;
    margin-top: 16px;
    font-size: 13px;
    color: #64748b;
}
.createConflictFreeLoader2 .innerdiv1 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0;
    font-weight: 500;
}
.createConflictFreeLoader2 .innerdiv2 {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10b981;
    animation: sourceItemPulse 2s ease-in-out infinite;
    animation-delay: 0s;
}
.createConflictFreeLoader3 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0;
    font-weight: 500;
}
.createConflictFreeLoader3 .innerdiv1 {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10b981;
    animation: sourceItemPulse 2s ease-in-out infinite;
    animation-delay: 0.7s;
}
.createConflictFreeLoader4{
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 0;
    font-weight: 500;
}
.createConflictFreeLoader4 .innerdiv1 {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10b981;
    animation: sourceItemPulse 2s ease-in-out infinite;
    animation-delay: 1.4s;
}
.rainbowHTML1{
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    padding: 30px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    margin: 20px auto;
    max-width: 600px;
    border: 2px solid #00BFFF;
}
.rainbowHTML1 h3 {
    color: #00BFFF;
    margin: 0 0 20px 0;
    font-size: 18px;
    font-weight: 600;
}
.rainbowHTML1 .innerdiv1 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
    font-size: 16px;
    color: #333;
    font-weight: 500;
}
.rainbowHTML1 .innerdiv2 {
    width: 10px;
    height: 10px;
    background: #00BFFF;
    border-radius: 50%;
    animation: pulseDot 1.5s ease-in-out infinite;
}
.rainbowHTML2 {
    width: 100%;
    height: 30px;
    background: linear-gradient(to right, #f0f0f0, #e0e0e0);
    border-radius: 15px;
    overflow: hidden;
    margin: 25px 0;
    position: relative;
    box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.15);
    border: 2px solid #ddd;
}
.rainbowHTML2 .test-rainbow-bar {
    height: 100%;
    background: linear-gradient(90deg, 
        #FF0000 0%,    /* Bright Red */
        #FF4500 10%,   /* Orange Red */
        #FFA500 20%,   /* Orange */
        #FFD700 30%,   /* Gold */
        #FFFF00 40%,   /* Yellow */
        #00FF00 50%,   /* Lime */
        #00CED1 60%,   /* Dark Turquoise */
        #0000FF 70%,   /* Blue */
        #4B0082 80%,   /* Indigo */
        #9400D3 90%,   /* Violet */
        #FF1493 100%); /* Deep Pink */
    background-size: 200% 100%;
    border-radius: 13px;
    width: 75%;
    animation: rainbowSlide 3s linear infinite;
    position: relative;
    display: block;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}
.rainbowHTML3 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
}
.rainbowHTML3 .innerdiv1 {
    color: #666; 
    font-size: 14px;
}
.rainbowHTML3 .innerdiv2 {
    color: #00BFFF; 
    font-size: 14px; 
    font-weight: 600;
}
.rainbowHTML4 {
    color: #333; 
    font-size: 13px; 
    margin-top: 20px; 
    padding: 15px;
    background: #f8f8f8;
    border-radius: 8px;
    border-left: 4px solid #00BFFF;
}

/*** Reference section */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@keyframes rainbowFlow {
    0% { background-position: 300% 0; }
    100% { background-position: -300% 0; }
}
@keyframes pulseDot {
    0%, 100% { opacity: 0.6; transform: scale(0.8); }
    50% { opacity: 1; transform: scale(1.2); }
}
@keyframes sourceItemPulse {
    0%, 100% { opacity: 0.6; }
    50% { opacity: 1; }
}
/* Medora Theme for References */
.references-section * {
    background: white !important;
    color: #1f2937 !important;
}
.references-section .reference-card,
.references-section [class*="reference"],
.references-section div[style*="background"] {
    background: white !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 6px !important;
    padding: 15px !important;
    margin: 10px 0 !important;
    color: #1f2937 !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
}
.references-section h1, .references-section h2, .references-section h3, 
.references-section h4, .references-section h5, .references-section h6 {
    color: #00BFFF !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin: 0 0 8px 0 !important;
    background: transparent !important;
}
.references-section p, .references-section span, .references-section div {
    color: #374151 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    background: transparent !important;
}
.references-section a {
    color: #00BFFF !important;
    text-decoration: none !important;
}
.references-section a:hover {
    color: #0080CC !important;
}

