

body {
	font-family: var(--font);
	background-color: rgba(255, 255, 255, 0.7); /* Light background */
	color: #000; /* Dark text */
	margin: 0;
	padding: 0;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
}

/* Custom scrollbar for consistency */
::-webkit-scrollbar {
	width: 8px;
}
::-webkit-scrollbar-track {
	background: #e2e8f0;
}
::-webkit-scrollbar-thumb {
	background-color: #94a3b8;
	border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
	background-color: #64748b;
}

/* Main container and section styles */
.main-container {
	max-width: 1280px;
	/* margin: auto; */
	padding: 20px;
}

.main-head {
	font-family: var(--font-display);
    font-size: var(--text-xl);
    margin-bottom: 10px;
    font-weight: 700;
    color: var(--primary);
	display: inline-flex;
}

.main-head h3 {
	margin: 0;
}

.message-banner {
	background-color: var(--color-surface-muted); 
	color: var(--secondary); 
	padding: 0.3rem 1rem;
	border-radius: 8px;
	font-size: var(--text-sm);
	margin-bottom: 1rem;
	border: 0px solid #000;
}

.tabs-nav {
	display: flex;
	gap: 0.5rem;
	background-color: #e2e8f0;
	padding: 0.5rem;
	border-radius: 4px;
	margin-bottom: 2rem;
	overflow-x: auto;
	white-space: nowrap;
}

/* tabs-nav styles for anchor-based tabs */
.tabs-nav {
    display: flex;
    gap: 0.5rem;
    background-color: #f0e9db;
    padding: 0.5rem;
    border-radius: 6px;
    margin-bottom: 2rem;
    overflow-x: auto;
    white-space: nowrap;
}

.tabs-nav ul {
    display: flex;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

.tabs-nav li {
    display: inline-block;
    margin: 0;
}

/* Style the anchor tags */
.tabs-nav a {
    display: inline-block;
    padding: 0.55rem 1.5rem;
    color: #000;
    font-weight: 400;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
    border: none;
    background: transparent;
    position: relative;
    outline: none;
    /* text-transform: uppercase; */
    border-radius: 4px;
    text-decoration: none;
    text-align: center;
}

.tabs-nav a:hover {
    color: #000;
    text-decoration: none;
}

.tabs-nav a.active {
    color: #000;
    font-weight: 500;
    background-color: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    text-decoration: none;
}

.main-content {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.filter-section {
	/* width: 100%; */
	background-color: #ffffff;
	padding: .5rem 1.5rem;
	border-radius: 8px;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -4px rgba(0, 0, 0, 0.1),
    0 -6px 12px -4px rgba(0, 0, 0, 0.1);
	height: fit-content;
}

.filter-section h3 {
	font-size: 16px;
	font-weight: 700;
	color: var(--primary);
	margin-bottom: 0.75rem;
}

.filter-group {
	margin-bottom: 1.5rem;
}

.filter-input, .filter-select {
	font-family: var(--font);
	width: 100%;
	padding: 0.75rem;
	border: 1px solid var(--border-color);
	background-color: #fff;
	color: var(--secondary);
	border-radius: 4px;
	font-size: 1rem;
	transition: border-color 150ms ease-in-out, box-shadow 150ms ease-in-out;
	outline: none;
}

/* .filter-input:focus, .filter-select:focus {
	border-color: #3b82f6;
	box-shadow: 0 0 0 2px #bfdbfe;
} */

.checkbox-label {
	display: flex;
	align-items: center;
	font-size: 16px;
	color: #000;
	margin-bottom: 0.5rem;
}

.checkbox-label input[type="checkbox"] {
	margin-right: 0.75rem;
	border-radius: 4px;
	border-color: #000;
	color: #000;
	cursor: pointer;
	accent-color: #000;
}

select option:hover {
	background-color: var(--tertiary); 
	color: var(--color-accent-green); 
  }

.search-button {
	font-family: var(--font);
	width: 100%;
	background-color: var(--primary);
	color: #ffffff;
	padding: 10px 22px;
	border-radius: 4px;
	font-weight: 700;
	line-height: 164%;
	text-align: center;
	font-size: 16px;
	height: 46px;
	/* transition: background-color 150ms ease-in-out, box-shadow 150ms ease-in-out; */
	border: none;
	cursor: pointer;
	outline: none;
	/* box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); */
	display: inline-block;
	overflow: hidden;
    position: relative;
	margin-bottom: 18px;
	transition: background-color 150ms ease;
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

/* .search-button::before {
    position: absolute;
    content: '';
    background-image: url('images/right-arrow-white.svg');
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    right: 11px;
    top: 10px;
} */

.search-button:hover {
	border: 0px solid #000;
    background-color: var(--tertiary); 
	color: var(--color-accent-green); 
    text-decoration: none;

}

.search-button:hover::before {
    background-image: url('images/right-arrow-black.svg');
    transition: all .8s ease;
    right: 2px;
    width: 25px;
    height: 25px;
}

/* .search-button:hover::after {
    transform: translate(-0%);
    top: 25%;
    transition: all .8s ease;
} 

.search-button::after {
    content: attr(data-hover);
    position: absolute;
    left: 16px;
    right: 40px;
    text-align: left;
    color: #000;
    transform: translateY(150%);
    transition: transform .8s ease;
    white-space: nowrap;
} */

.announcements-list {
	width: 100%;
}

.announcement-card {
	background-color: #ffffff;
	padding: 20px 1.25rem;
	border-radius: 0px;
	border-top: 1px solid var(--border-color);
	
	/* box-shadow: 0 8px 13px -5px rgba(0, 0, 0, 0.1),
    0 2px 4px -2px rgba(0, 0, 0, 0.1),
    0 -4px 10px -2px rgba(0, 0, 0, 0.1);
	transition: transform 150ms ease-in-out, box-shadow 150ms ease-in-out; */
	/* margin-bottom: 1rem; */
	position: relative;
}

.announcement-card:last-child {
	border-bottom: 1px solid var(--border-color);
}

.announcement-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.announcement-date {
	display: flex;
	align-items: center;
	font-size: var(--text-sm);
	color: var(--text-muted);
	font-weight: 700;
}

/* Base announcement type styles */
.announcement-type {
	font-size: 0.75rem;
	font-weight: 600;
	padding: 0.25rem 0.5rem;
	border-radius: 6px;
	text-transform: uppercase;
	letter-spacing: 0.025em;
}

.announcement-content .download-link {
	font-size: var(--text-sm);
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-weight: 700;
	color: var(--tertiary);
	text-decoration: none;
}

/* SENS - Blue */
.type-sens {
	color: #1e40af;
	background-color: #dbeafe;
	border: 1px solid #000;
}

/* Official Announcement - Green */
.type-official {
	color: #065f46;
	background-color: #d1fae5;
	border: 1px solid #000;
}

/* Results Comment - Purple */
.type-results {
	color: #5b21b6;
	background-color: #ede9fe;
	border: 1px solid #000;
}

/* Media Comment - Amber/Orange */
.type-media {
	color: #92400e;
	background-color: #fef3c7;
	border: 1px solid #000;
}

/* Press Release - Red */
.type-press {
	color: #991b1b;
	background-color: #fee2e2;
	border: 1px solid #000;
}

/* Other - Gray */
.type-other {
	color: #374151;
	background-color: #f3f4f6;
	border: 1px solid #000;
}

.announcement-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

@media (max-width: 580px) {
	.announcement-content {
		flex-direction: column;
		align-items: flex-start;
	}
}

.announcement-title {
	font-weight: 700;
	color: var(--primary);
	flex: 1;
	margin: 0;
}

.download-link {
	color: #000; /* Red accent */
	transition: color 150ms ease-in-out;
	text-decoration: none;
}

.download-link svg {
	margin-top: 3px;
}

.no-pdf {
	color: #b9b9b9; /* Red accent */
	transition: color 150ms ease-in-out;
	width: 16px;
}



.download-link:hover {
	text-decoration: underline;
}

.open-link
{
	text-decoration: none;
	color: var(--primary);
    font-size: 1rem;
}

.open-link:hover
{
	color: #000;
}

.tab-content.hidden {
	display: none;
}

.select-custom-arrow {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url('images/down-arrow-black.svg');
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 20px;
	padding-right: 12px;
	
}

.period-label {
	width: 2.5rem; /* Fixed width for consistent alignment */
	font-size: 1rem;
	color: var(--secondary);
}

.period-row {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

@media (max-width: 420px) {
	.period-row {
		flex-direction: column;
		align-items: flex-start;
	}
}

@media (max-width: 420px) {
	.filter-group > .period-row {
		flex-direction: row;
		align-items: flex-start;
	}
}

.filter-section .filter-group:nth-child(4) .filter-input {
	width: 100%;
}

.poweredby {
    font-family: "Manrope", sans-serif;
    font-size: 8px;
    color: #999999;
    text-align: right;
    padding-right: 1.25rem;
    padding-top: 5px;
    letter-spacing: 2px;
    height: 10px;
    padding: 10px 1.25rem;
	border-top: 1px solid var(--border-color);
}

.poweredby img {
    height: 10px;
    padding-top: 0px;
}

@media (min-width: 1342px) {
	.main-content {
		flex-direction: row;
	}
	.filter-section {
		width: 25%;
	}
	.announcements-list {
		width: 75%;
	}
}