/* =========================================
   NEXUS OS - PLUGINS OVERRIDES (CSS)
   ========================================= */

/* 1. Grid.js Dark Mode & Theme Overrides */
.dark .gridjs-container {
    color: #cbd5e1 !important;
    background-color: transparent !important;
}

.dark .gridjs-wrapper {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.dark .gridjs-head {
    background-color: transparent !important;
    padding-bottom: 8px !important;
}

.dark .gridjs-th {
    background-color: #1e293b !important;
    color: #94a3b8 !important;
    border: none !important;
    border-bottom: 2px solid #334155 !important;
}

.dark .gridjs-td {
    background-color: #1e293b !important;
    border: none !important;
    border-bottom: 1px solid #334155 !important;
    color: #cbd5e1 !important;
}

.dark .gridjs-tr:hover td {
    background-color: #334155 !important;
}

.dark .gridjs-footer {
    background-color: #1e293b !important;
    border: none !important;
    border-top: 2px solid #334155 !important;
    color: #94a3b8 !important;
}

.dark .gridjs-pagination .gridjs-summary {
    color: #94a3b8 !important;
}

.dark .gridjs-pagination .gridjs-pages button {
    background-color: #1e293b !important;
    color: #94a3b8 !important;
    border: 1px solid #334155 !important;
}

.dark .gridjs-search-input {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f8fafc !important;
}

/* 2. Quill Editor Customization */
.ql-toolbar {
    border: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
    background: white;
    border-radius: 16px 16px 0 0;
    padding: 12px !important;
}

.dark .ql-toolbar {
    background: #1e293b;
    border-bottom-color: #334155 !important;
}

.ql-container {
    border: none !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 1rem !important;
}

.ql-editor {
    padding: 24px !important;
}

.ql-stroke {
    stroke: #64748b !important;
}

.dark .ql-stroke {
    stroke: #94a3b8 !important;
}

.ql-fill {
    fill: #64748b !important;
}

.dark .ql-fill {
    fill: #94a3b8 !important;
}

/* 3. FullCalendar Aesthetics */
.fc-theme-standard .fc-scrollgrid {
    border: none !important;
}

.fc-col-header-cell {
    padding: 10px 0;
    background-color: transparent;
    border: none !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.1) !important;
}

.dark .fc-col-header-cell {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.fc-daygrid-day {
    border: none !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.1) !important;
    border-right: 1px solid rgba(148, 163, 184, 0.1) !important;
}

.dark .fc-daygrid-day {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.fc-daygrid-day-number {
    color: #64748b;
    font-weight: 600;
    padding: 8px !important;
}

.dark .fc-daygrid-day-number {
    color: #94a3b8;
}

.fc-button-primary {
    background-color: #4f46e5 !important;
    border: none !important;
    border-radius: 0.75rem !important;
    padding: 0.5rem 1rem !important;
}

.fc-toolbar-title {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #1e293b;
}


/* 5. Tippy.js Translucent Theme */
.tippy-box[data-theme~='translucent'] {
    background-color: rgba(15, 23, 42, 0.8) !important;
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: white;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}


/* 6. TomSelect Premium Integration */
.premium-select .ts-control {
    border-color: #e2e8f0 !important;
    background-image: none !important;
    transition: all 0.2s ease !important;
}

.dark .premium-select .ts-control {
    background-color: #0f172a !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

.premium-select .ts-dropdown {
    border-radius: 1rem !important;
    margin-top: 0.5rem !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1) !important;
    overflow: hidden !important;
    z-index: 100 !important;
}

.dark .premium-select .ts-dropdown {
    background-color: #1e293b !important;
    border-color: #334155 !important;
    color: #f1f5f9 !important;
}

.premium-select .ts-dropdown .active {
    background-color: rgba(99, 102, 241, 0.1) !important;
}

.premium-select .ts-control .item {
    background: #6366f1 !important;
    color: white !important;
    border-radius: 0.5rem !important;
    padding: 2px 8px !important;
    font-size: 12px !important;
    margin-right: 4px !important;
}

.premium-select.multi .ts-control>div {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}