/* Existing Home modal rules, scoped so the Services layout is unaffected. */
#companiesModal .modal-content {
     border-radius: 16px;
     border: none;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

#companiesModal .modal-header {
     border-bottom: 1px solid #edf2f7;
     padding: 16px 24px;
}

#companiesModal .modal-title {
     font-weight: 500;
     color: #2d3748;
     font-size: 1.15rem;
}


:root[data-theme="dark"] .companies-modal .modal-content,
:root[data-theme="dark"] #companySwitchConfirmModal .modal-content {
     background: var(--dashboard-surface);
     color: var(--dashboard-text);
     border-color: var(--dashboard-border);
}

:root[data-theme="dark"] .companies-modal .modal-header,
:root[data-theme="dark"] .companies-modal .modal-footer,
:root[data-theme="dark"] #companySwitchConfirmModal .modal-header,
:root[data-theme="dark"] #companySwitchConfirmModal .modal-footer {
     border-color: var(--dashboard-border);
}

:root[data-theme="dark"] .companies-modal .modal-title,
:root[data-theme="dark"] .companies-modal .modal-body,
:root[data-theme="dark"] .companies-modal #companyPageInfo,
:root[data-theme="dark"] #companySwitchConfirmModal .modal-title,
:root[data-theme="dark"] #companySwitchConfirmModal .modal-body {
     color: var(--dashboard-text);
}

:root[data-theme="dark"] .companies-modal .form-control {
     background: #273449;
     color: var(--dashboard-text);
     border-color: var(--dashboard-border);
}

:root[data-theme="dark"] .companies-modal .form-control::placeholder {
     color: var(--dashboard-muted);
}

:root[data-theme="dark"] .companies-modal .company-option {
     color: var(--dashboard-text) !important;
}

:root[data-theme="dark"] .companies-modal .company-option:hover,
:root[data-theme="dark"] .companies-modal .company-option:focus-visible,
:root[data-theme="dark"] .companies-modal .company-option.active {
     background: rgba(255, 255, 255, 0.08);
     color: var(--dashboard-text) !important;
     outline-color: var(--dashboard-border);
}

:root[data-theme="dark"] .companies-modal .companies-status-area {
     background: #273449;
     color: var(--dashboard-muted);
     border-color: var(--dashboard-border);
}

:root[data-theme="dark"] .companies-modal .btn-secondary,
:root[data-theme="dark"] #companySwitchConfirmModal .btn-secondary {
     background: #374151;
     color: var(--dashboard-text);
     border-color: var(--dashboard-border);
}

:root[data-theme="dark"] .companies-modal .btn-close,
:root[data-theme="dark"] #companySwitchConfirmModal .btn-close {
     filter: invert(1) grayscale(1);
}

[data-theme="dark"] #companiesModal .modal-title {
     color: #ffffff;
}

[data-theme="dark"] #modalCompanySearch::placeholder {
     color: rgba(255, 255, 255, 0.5);
}

#companiesModal .modal-body {
     padding: 24px;
}

#companiesModal .btn-orange-action {
     background-color: #ff6600;
     border: none;
     border-radius: 8px;
     width: 42px;
     height: 42px;
     display: flex;
     align-items: center;
     justify-content: center;
     transition: all 0.2s ease;
     padding: 0;
}

#companiesModal .btn-orange-action:hover {
     background-color: #e05500;
}

#companiesModal .btn-orange-action i {
     font-size: 1.1rem;
     color: #ffffff;
}

#companiesModal .companies-status-area {
     border-top: 1px solid #e2e8f0;
     padding: 40px 0 20px;
     margin-top: 24px;
     text-align: center;
     color: #64748b;
     font-size: 0.95rem;
}

#companySwitchConfirmModal .modal-content {
     border-radius: 16px;
     border: none;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

#companySwitchConfirmModal .btn-orange-action {
     background-color: #ff6600;
     border: none;
     border-radius: 8px;
     color: #fff;
}

#companySwitchConfirmModal .btn-orange-action:hover {
     background-color: #e05500;
}

.tw-sidebar-company-icon {
     margin-left: auto;
     opacity: 0.6;
}

.tw-sidebar-sign-out-icon {
     width: 18px;
     height: 18px;
     object-fit: contain;
}

#companiesModal .companies-list {
     min-height: 200px;
}

.company-switch-confirm-button {
     white-space: nowrap;
     min-width: 100px;
}