/* Font Face Setup */
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");

* {margin: 0;padding: 0;box-sizing: border-box;}
:root {
    --primary-color: #268399;
    --secondary-color: #9bb9bb;
    --third-color: #d0e2e6;
    --forth-color: #cfe2e6;
    --fifth-color: #edf3f4;
    --light-color: #2683991a;
    --light-border-color: #2683994d;
    --white-color: #fff;
    --text-color-b: #000;
    --text-color-w: #fff;
    --text-color-g: #808080;
    --text-color-h: #2b8c8c;
    --background-color: #fff;
    --info-color: #ffa600;
    --warning-color: #cd0000;
    --success-color: #006913;
    --pending-color: #ffe100;
    --font-family: "Open Sans", sans-serif;
    --bs-breadcrumb-divider: ">";
    --bs-breadcrumb-active-color: var(--primary-color);
    --bs-border-radius: 0;
    /* --bs-link-color-rgb: #268399; */
}
    
.btn-outline-primary{
    --bs-btn-color: #268399;
    --bs-btn-border-color: #268399;
    --bs-btn-hover-bg: #268399;
    --bs-btn-hover-border-color: #268399;
    --bs-btn-active-bg: #268399;
    --bs-btn-active-border-color: #268399;
    --bs-btn-disabled-color: #268399;
    --bs-btn-disabled-border-color: #268399;
}

.accordion {
    --bs-accordion-color: var(--text-color-b);
    --bs-accordion-bg: #268399;
    --bs-accordion-border-color: #268399;
    /* --bs-accordion-border-width: 2px; */
    --bs-accordion-border-radius: 0;
    --bs-accordion-inner-border-radius: 0;
    --bs-accordion-btn-padding-x: 1.25rem;
    --bs-accordion-btn-padding-y: 1rem;
    --bs-accordion-btn-color: #268399;
    --bs-accordion-btn-bg: #268399;
    --bs-accordion-btn-icon-width: 1.25rem;
    --bs-accordion-btn-focus-box-shadow: none;
    --bs-accordion-body-padding-x: 1.25rem;
    --bs-accordion-body-padding-y: 1rem;
    --bs-accordion-active-color: #268399;
    --bs-accordion-active-bg: #268399;
}

.pagination {
    --bs-pagination-color: var(--primary-color);
    --bs-pagination-bg: var(--bs-body-bg);
    --bs-pagination-border-width: var(--bs-border-width);
    --bs-pagination-border-color: var(--bs-border-color);
    --bs-pagination-border-radius: 0;
    --bs-pagination-hover-color: var(--primary-color);
    --bs-pagination-hover-bg: var(--bs-tertiary-bg);
    --bs-pagination-hover-border-color: var(--primary-color);
    --bs-pagination-focus-color: var(--bs-link-hover-color);
    --bs-pagination-focus-bg: var(--bs-secondary-bg);
    --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    --bs-pagination-active-color: #fff;
    --bs-pagination-active-bg: #268399;
    --bs-pagination-active-border-color: #268399;
}
.modal{
    --bs-modal-header-padding-x: 2rem;
    --bs-modal-header-padding-y: 2rem;
    --bs-modal-header-padding: 2rem 2rem;
}
.modal-content {
    color: var(--bs-modal-color);
    background-color: var(--bs-modal-bg);
    border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
    border-radius: 0;
}
.modal-header{
    border-bottom: none;
}
.modal-body{
    padding: 0 2rem 2rem !important;
}
@media screen and (min-width: 768px) {.border-md-start {border-left: 1px solid var(--white-color)}}
@media screen and (max-width: 767px) {.border-md-start:not(:first-child) {border-left: 1px solid var(--white-color)}}

body,html,input,button,textarea,select {font-family: var(--font-family);background: var(--background-color);color: var(--text-color-b);}

/* Scrollbar */
*::-webkit-scrollbar {width: 5px;height: 4px;background: var(--background-color);border-radius: 4px;}

/* Scrollbar thumb styles remain the same */
*::-webkit-scrollbar-thumb {background: var(--primary-color);border-radius: 4px;}
*::-webkit-scrollbar-thumb:hover {background: var(--secondary-color);}

/* Button Style */
.btn {border-radius: 0;}
.primary-button {background: var(--primary-color);color: var(--text-color-w);border: none; /* padding: 0.5rem 1rem; */border: 1px solid var(--primary-color);}
.primary-button:hover {background: var(--third-color);color: var(--text-color-b);border: 1px solid var(--primary-color);}
.btn-primary {background: var(--primary-color);color: var(--text-color-w);border: 1px solid var(--primary-color); /* border: none; */}
.btn-primary:hover {background: var(--third-color);color: var(--text-color-b);border: 1px solid var(--primary-color);}
.btn-outline-primary {border: 1px solid var(--primary-color);color: var(--text-color-b);}
.btn-outline-primary:hover {background: var(--primary-color);color: var(--text-color-w);}

.secondary-button {background: var(--forth-color);color: var(--text-color-b);border: 2px solid var(--forth-color); /* padding: 0.5rem 1rem; */}
.secondary-button:hover,
.forth-button:hover {background: var(--secondary-color);color: var(--text-color-b);border: 2px solid var(--third-color);}
.forth-button {background: var(--forth-color);color: var(--text-color-b); /* border: 1px solid var(--forth-color); */padding: 0.375rem 0.75rem;border: 2px solid var(--primary-color);}

/* Section gap */
section {padding: 2rem 1rem;}

/* Navigation */
.navbar {background: var(--primary-color);}
.navbar-nav .nav-item .nav-link {position: relative;transition: color 0.3s ease;}
.navbar .nav-link,
.navbar-brand,
.navbar .form-control {color: var(--text-color-w) !important;}
.form-control {border-radius: 0;}

/* Remove the default focus outline on the search input */
header .form-control:focus, .tab-content .form-control:focus, .modal-body .form-control:focus, .firm-inputs .form-control:focus,#search-type:focus, #globalSearchForm .form-control:focus, .search-filter-bar .form-control:focus,#complaintForm *:focus{box-shadow: none;border-color: var(--primary-color);}
#complaintForm .form-check-input:checked{color: var(--primary-color); background-color: var(--primary-color);}

/* Custom styling for the input group to make it cohesive */
header .input-group {overflow: hidden;}
.custom-form-height {height: 30px !important;font-size: 0.875rem;padding-top: 0.25rem;padding-bottom: 0.25rem;}
.custom-btn-height {height: 30px !important;padding-top: 0.25rem;padding-bottom: 0.25rem;display: flex;align-items: center;justify-content: center;}
.custom-search .input-group-text {height: 30px;padding-top: 0;padding-bottom: 0;}

/* Fix for vertical alignment of search icon */
.custom-btn-height i {font-size: 0.875rem;line-height: 1;}

/* Navbar Link Hover Animations */
/* Base styles for all nav links */
header img {width: 100px;height: auto;}

/* Target only nav items that don't have dropdown children */
.navbar-nav .nav-item:not(.dropdown) .nav-link::after {content: "";position: absolute;width: 0;height: 2px;bottom: 0;left: 0;background-color: var(--third-color);transition: width 0.3s ease;}
.navbar-nav .nav-item:not(.dropdown) .nav-link:hover::after {width: 100%;}

/* Slight color change on hover for all links */
/* .navbar-nav .nav-link:hover {color: var(--third-color) !important} */

/* Active link state - only for non-dropdown links */
.navbar-nav .nav-item:not(.dropdown) .nav-link.active {color: var(--third-color) !important;}
.navbar-nav .nav-item:not(.dropdown) .nav-link.active::after {width: 100%;}

/* Dropdown menu animations */
.dropdown-menu {border: none;box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);margin-top: 10px;opacity: 0;visibility: hidden;transform: translateY(-10px);transition: all 0.3s ease;-webkit-border-radius: 0;-moz-border-radius: 0;-ms-border-radius: 0;-o-border-radius: 0;border-radius: 0;}
.dropdown-toggle::after {content: "+";border: none;vertical-align: 0;}
.dropdown:hover .dropdown-menu {opacity: 1;visibility: visible;transform: translateY(0);}

/* Styling dropdown items */
.dropdown-item {padding: 10px 20px;color: var(--text-color-b);transition: all 0.3s ease;}
.dropdown-item:hover {background-color: var(--third-color);color: var(--primary-color);}

/* Mobile navbar toggler hover effect */
.navbar-toggler {border: 1px solid var(--third-color);transition: all 0.3s ease;}
.navbar-toggler:hover {background-color: rgba(255, 255, 255, 0.1);}

/* Tab Section */
.nav-link {color: var(--text-color-b);}
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {color: var(--white-color);background-color: var(--primary-color);border-color: var(--primary-color);}
.nav-tabs .nav-link:hover {color: var(--primary-color);border-color: var(--primary-color);}
.nav-tabs .nav-link.active:hover {color: var(--white-color);}
.nav-tabs .nav-link {border-top-left-radius: 0;border-top-right-radius: 0;}

/* Timeline styling */
.timeline-scroll-wrapper {max-height: 600px;overflow-y: auto;overflow-x: hidden;}
.timeline-scroll-wrapper::-webkit-scrollbar {width: 8px;background: var(--background-color);border-radius: 4px;}
.timeline-scroll-wrapper::-webkit-scrollbar-thumb {background: var(--primary-color);border-radius: 4px;}
.timeline-scroll-wrapper::-webkit-scrollbar-thumb:hover {background: var(--secondary-color);}
.timeline-container {border: 2px solid var(--primary-color); /* border-radius: 4px; */padding: 30px 40px 30px 70px;position: relative;max-width: 1100px;margin: 0 auto 30px auto;background: var(--background-color);box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);}
.timeline-container::before {content: "";position: absolute;top: 40px;bottom: 40px;left: 32px;width: 2.5px;background-color: var(--text-color-b);z-index: 2;}
.timeline-dot {position: absolute;left: -37px; /* left: 32px; */width: 16px;height: 16px;background-color: var(--text-color-b);border-radius: 50%;transform: translate(-50%, 0);z-index: 3;}
.timeline-item {position: relative; /* padding-left: 55px; */margin-bottom: 40px;}
.timeline-item:last-child {margin-bottom: 0;}
.timeline-title {font-weight: bold;margin-bottom: 10px;display: flex;align-items: center;}
.timeline-title a {text-decoration: none;}
.timeline-badge {background-color: var(--secondary-color);color: var(--text-color-w);padding: 3px 8px; /* border-radius: 15px; */font-size: 0.8rem;margin-left: 10px;}
.timeline-content {font-size: 0.95rem;line-height: 1.5;}
.timeline-highlight {background-color: var(--background-color);border-left: 3px solid var(--primary-color);padding: 10px 15px;margin-top: 10px;}

@media screen and (max-width: 768px) {.timeline-container {padding: 15px}.timeline-container::before {left: 25px}.timeline-dot {left: 12px}.timeline-item {padding-left: 40px}}

/* Breadcrumb styling */
.breadcrumb-section {background-color: var(--background-color);padding: 10px 0;}
.breadcrumb-item a {color: var(--text-color-b);text-decoration: none;}
.breadcrumb-item a:hover {text-decoration: underline;}
.breadcrumb-item.active {color: var(--primary-color);}

/* Subscribe Section*/
.subscribe-section {background: var(--primary-color);color: var(--text-color-w); /* padding: 2.5rem 1rem; */}
.subscribe-section .form-control {display: block;width: 100%;/*padding: 1rem 2rem;*/font-size: 1rem;font-weight: 400;line-height: 1.5;color: var(--text-color-w);background-color: var(--primary-color);border: 2px solid var(--white-color);}
.subscribe-section .form-control::placeholder {font-size: 1rem;font-weight: 400;color: var(--text-color-w);}
.subscribe-section input.form-control:focus,.subscribe-section input.form-control:valid {border-color: var(--white-color);}
.subscribe-section input.form-control:invalid:not(:placeholder-shown) {border-color: var(--warning-color);}

/* Footer */
.footer {background: var(--primary-color);color: var(--text-color-w);padding: 2rem 0 1rem 0;}
.footer-logo {width: 70px;height: auto;}
.footer a {color: var(--text-color-w);text-decoration: none;}
.footer a:hover {text-decoration: underline;}
.social-icons a {text-decoration: none !important;cursor: pointer;/*margin-right: 1rem*/;font-size: 1.2rem;}

/* Font Weights for Design Consistency */
.section-title,h2,h4 {font-weight: 800 !important;}
h5,h6,.footer .fw-bold {font-weight: 700 !important;}
body,p,.footer,.subscribe-section p,.info-section ul,.tab-content p {font-weight: 400;}
.btn,.btn-primary,.btn-outline-primary,.primary-button,.secondary-button,.navbar .nav-link,.nav-link {font-weight: 600 !important;}

/* Font Size */
p,a,ul,li,ol, .btn {font-size: 14px;line-height: 1.5;}

/* Firm Info Card */
.firm-info-card {background: var(--primary-color);color: var(--text-color-w);border-radius: 0 0 0 0;margin-bottom: 0;padding: 32px 32px 24px 32px;position: relative;}
.firm-info-card .btn {background: var(--info-color);color: var(--text-color-w);border-radius: 50px;border: none;padding: 6px 24px;}
.firm-info-card .btn p {margin: 0;}
.firm-info-card .info-col {min-height: 120px;padding: 24px;}
.firm-info-card .info-col:first-child {border-right: 1px solid var(--text-color-w);}
.firm-info-card .info-col:last-child {border-right: none;}
.firm-info-card .info-item {margin-bottom: 24px;}
.firm-info-card .info-item:last-child {margin-bottom: 0;}
.firm-info-card .info-label {font-weight: 600;margin-bottom: 8px;}
.firm-info-card .info-value {margin: 0;}
@media ((min-width: 767.98px) and (max-width: 1199.98px)){.firm-info-card h2{font-size: 1.5em;}}


/* Orange Info Bar */
.info-bar {background: var(--info-color);color: var(--text-color-w);border-radius: 0;padding: 8px 24px;display: flex;align-items: center;gap: 8px;}
.info-bar i {color: var(--text-color-b);}

/* Mobile Responsive Styles */
@media (max-width: 767.98px) {
    .firm-info-card {padding: 24px 16px}
    .firm-info-card .info-col {border-right: none;border-bottom: 1px solid var(--text-color-w);min-height: auto;padding: 16px 0}
    .firm-info-card .info-col:last-child {border-bottom: none;padding-bottom: 0}
    .firm-info-card .info-col:first-child {padding-top: 0;border-right: none}
    .firm-info-card .info-item {margin-bottom: 16px}
    .firm-info-card .btn {width: 100%;margin-top: 16px}
}

/* Detail Section */
.detail-section {background: var(--background-color); box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);}
.detail-header {position: relative;background: var(--light-color);color: var(--text-color-b);border-bottom: 1px solid var(--light-border-color);min-height: 80px;display: flex;align-items: center;justify-content: center;}
.detail-header .detail-icon { position: absolute; left: 0; width: 80px; display: flex; align-items: center; justify-content: center; pointer-events: none;}
.detail-header .fw-bold {width: 100%;text-align: center;z-index: 1;}
.detail-table .detail-row:last-child {border-bottom: none;}
.detail-table .detail-role {display: flex;align-items: center;min-height: 60px;}
.detail-table .detail-period {display: flex;align-items: center;justify-content: flex-end;min-height: 60px;}

@media (max-width: 767.98px) {.detail-table .detail-role {border-right: none;border-bottom: 1px solid var(--light-border-color);justify-content: flex-start}
.detail-table .detail-period {justify-content: flex-start}
.detail-table .detail-row {flex-direction: column}
.detail-table .detail-row:last-child .detail-role,.detail-table .detail-row:last-child .detail-period {border-bottom: none}

/* Hide vertical dividers on mobile */
.detail-table .border-gap-start::after,.detail-table .border-gap-end::after,.detail-table .border-gap-center::after {display: none}
.detail-table .border-gap-start,.detail-table .border-gap-end,.detail-table .border-gap-center {border-right: none !important}

/* Adjust padding for mobile */
.detail-table .detail-role,.detail-table .detail-period {padding: 12px 16px}

/* Ensure proper spacing between role and period on mobile */
.detail-table .detail-row {margin-bottom: 0}

/* Adjust header for mobile */
detail-header {min-height: 60px}
.detail-header .detail-icon {width: 60px}}

/* Search/Filter Bar */
.search-filter-bar {background: var(--background-color);border-radius: 8px 8px 0 0;box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);padding: 12px 32px 8px 32px;margin-bottom: 0;}
.search-filter-bar form {width: auto;margin-left: auto;}
.search-filter-bar .form-select,
.search-filter-bar .form-control,
.search-filter-bar .btn {height: 32px;padding-top: 2px;padding-bottom: 2px;}
.search-filter-bar .form-select {min-width: 80px;width: 110px;border-radius: 0;}
.search-filter-bar .input-group {width: 180px;}
.search-filter-bar .form-control {border-radius: 0;}
.search-filter-bar .btn {border-radius: 0;border: none;background: var(--primary-color);color: var(--text-color-w);min-width: 32px;display: flex;align-items: center;justify-content: center;}
@media (max-width: 767px) {.search-filter-bar {padding: 8px 8px 4px 8px}.search-filter-bar form {flex-direction: row;align-items: center;justify-content: flex-end;width: 100%;gap: 6px}.search-filter-bar .form-select {width: 80px;min-width: 60px}.search-filter-bar .input-group {width: 110px}}

/* Sort Icon */
.sort-by {display: inline-block;width: 1em;text-align: center;font-style: normal;color: #6c757d;position: relative;line-height: 1;}
.sort-by::before,.sort-by::after {display: block;width: 100%;text-align: center;line-height: 1;transition: color 0.2s;}
.sort-by::before {content: "\25B2";color: #6c757d;}
.sort-by::after {content: "\25BC";color: #6c757d;}
.sort-by.ascending::before {color: #0097b2;}
.sort-by.ascending::after {color: #6c757d;}
.sort-by.descending::before {color: #6c757d;}
.sort-by.descending::after {color: #0097b2;}
.sort-by .sort-up,.sort-by .sort-down {fill: #268399;fill-opacity: 0.3;transition: fill 0.2s, fill-opacity 0.2s;}
.sort-by.ascending .sort-up {fill-opacity: 1;}
.sort-by.ascending .sort-down {fill-opacity: 0.3;}
.sort-by.descending .sort-up {fill-opacity: 0.3;}
.sort-by.descending .sort-down {fill-opacity: 1;}

/* Sort and Filter Styles */
.sort-header {display: inline-flex;align-items: center;gap: 4px;}
.sort-by {order: -1; /* Move sort icon to the left */}
.contributor-filter-icon {cursor: pointer;padding: 4px;}
.contributor-filter-icon.active {color: var(--primary-color);}

/* Vertical Border gap*/
.border-gap, .border-gap-start, .border-gap-end, .border-gap-center {position: relative;}

.border-gap::after {content: "";position: absolute;top: 12px;/* gap from the top */bottom: 12px;/* gap from the bottom */right: 0;width: 2px;background: var(--light-border-color);z-index: 2;}
.border-gap-start::after {content: "";position: absolute;top: 12px;/* gap from the top */bottom: 0px;/* gap from the bottom */right: 0;width: 2px;background: var(--light-border-color);z-index: 2;}
.border-gap-end::after {content: "";position: absolute;top: 0px;/* gap from the top */bottom: 12px;/* gap from the bottom */right: 0;width: 2px;background: var(--light-border-color);z-index: 2;}
.border-gap-center::after {content: "";position: absolute;top: 0px;/* gap from the top */bottom: 0px;/* gap from the bottom */right: 0;width: 2px;background: var(--light-border-color);z-index: 2;}

/* Table Row and List Styles */
#list-data .table > tbody > tr {border-bottom: 1px solid var(--light-border-color);}
#list-data .table > tbody > tr > td {padding: 20px 16px;vertical-align: middle;}
#list-data .table ul {margin: 0;padding-left: 1.2rem;}
#list-data .table ul li {margin-bottom: 4px;}
#list-data .table ul li:last-child {margin-bottom: 0;}
#list-data .table th,#list-data .table td {white-space: nowrap;}
#list-data .table th {border-bottom: 1px solid var(--light-border-color);}
#list-data .table>thead{vertical-align: top;}

/* Responsive Table */
#list-data .table-responsive {overflow-y: auto;-webkit-overflow-scrolling: touch;}
.table-responsive a{color: var(--secondary-color);}

@media (max-width: 767.98px) {
    #list-data .table-responsive {margin: 0 -16px; /* Negative margin to allow full-width scrolling */padding: 0 16px; /* Add padding to maintain content alignment */}
    #list-data .table {min-width: 800px; /* Ensure table has minimum width for content */}
    #list-data .table th,#list-data .table td {white-space: nowrap; /* Prevent text wrapping */min-width: 120px; /* Minimum column width */}
    /* Specific column widths */
    #list-data .table th:nth-child(1),#list-data .table td:nth-child(1) {min-width: 120px; /* Effective Date */}
    #list-data .table th:nth-child(2),#list-data .table td:nth-child(2) {min-width: 150px; /* Contributor */}
    #list-data .table th:nth-child(3),#list-data .table td:nth-child(3) {min-width: 200px; /* Action Type */}
    #list-data .table th:nth-child(4),#list-data .table td:nth-child(4) {min-width: 200px; /* Case Outcome */}
    #list-data .table th:nth-child(5),#list-data .table td:nth-child(5) {min-width: 120px; /* Case # */}

    /* Allow text wrapping in lists */
    #list-data .table td ul {white-space: normal;}
    #list-data .table td ul li {white-space: normal;}
}
#list-data .table-responsive {overflow-x: visible;}

/* Link Color */
a{color: var(--secondary-color); text-decoration: none;}
main a:hover,.content a:hover,article a:hover {color: var(--secondary-color);text-decoration: underline;}
.btn:hover{text-decoration: none;}
#articleContentBody .list-group .list-group-item:hover a.modal-article-link{color: var(--text-color-b);}

.no-results-row {height: 60px;vertical-align: middle;background: #fff;border-bottom: 1px solid var(--light-border-color);}
