/* Modern Agendas & Minutes Styling - Tailwind-inspired */

/* Column widths */

.agenda-minutes-documents-list th[role="columnheader"]:nth-child(5) {
    width: 9%;
}

/* Modal Styles */
.agm-modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
}

.agm-modal-content {
    background-color: #ffffff;
    margin: 5% auto;
    padding: 0;
    border: none;
    border-radius: 12px;
    width: 90%;
    max-width: 600px;
    max-height: 80vh;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    animation: agm-modal-slide-in 0.3s ease-out;
}

@keyframes agm-modal-slide-in {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.agm-modal-header {
    background: var(--agm-header-bg-color, linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%)) !important;
    color: var(--agm-header-text-color, white) !important;
    padding: 20px 24px;
    border-radius: 12px 12px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.agm-modal-header h3,
.agm-modal-header .agm-modal-title {
    color: var(--agm-header-text-color, white) !important;
}

.agm-modal-title {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0;
}

.agm-modal-close {
    background: rgba(255, 255, 255, 0.2);
    border: none;
    color: white;
    font-size: 1.5rem;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.2s ease;
}

.agm-modal-close:hover {
    background: rgba(255, 255, 255, 0.3);
}

.agm-modal-body {
    padding: 24px;
    max-height: 60vh;
    overflow-y: auto;
}

.agm-modal-footer {
    padding: 16px 24px;
    border-top: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.agm-modal-download-zip-btn {
    background: #00704b;
    color: white;
    border: none;
    padding: 8px 12px;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
}

.agm-modal-download-zip-btn:hover {
    background: #059669;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.agm-modal-download-zip-btn:disabled {
    background: #9ca3af;
    cursor: not-allowed;
    transform: none;
}

.agm-modal-download-zip-btn .agm-zip-icon {
    font-size: 16px;
}

.agm-modal-close-btn {
    background: var(--agm-header-bg-color, linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%));
    color: var(--agm-header-text-color, white);
    border: none;
    padding: 10px 20px;
    border-radius: 8px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.agm-modal-close-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
}

/* Supporting Documents List */
.agm-supporting-docs-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.agm-supporting-doc-item {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 12px;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.agm-supporting-doc-item:hover {
    background: #f1f5f9;
    border-color: #cbd5e1;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.agm-supporting-doc-item:last-child {
    margin-bottom: 0;
}

.agm-supporting-doc-link {
    text-decoration: none;
    color: #1e293b;
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
    min-width: 0;
    cursor: pointer;
}

.agm-supporting-doc-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
}

.agm-supporting-doc-info {
    flex: 1;
    min-width: 0;
}

.agm-supporting-doc-name {
    font-weight: 500;
    margin: 0 0 4px 0;
    color: #1e293b;
}

.agm-supporting-doc-meta {
    font-size: 0.875rem;
    color: #64748b;
    margin: 0;
}

.agm-supporting-doc-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
}

.agm-supporting-doc-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    color: #64748b;
    text-decoration: none;
    transition: all 0.2s ease;
    background: transparent;
    border: 1px solid transparent;
}

.agm-supporting-doc-action:hover {
    background: #e2e8f0;
    color: #1e293b;
    border-color: #cbd5e1;
}

.agm-supporting-doc-action svg {
    width: 16px;
    height: 16px;
}

.agm-supporting-doc-action:focus {
    outline: 2px solid #6366f1;
    outline-offset: 2px;
}

/* Table Styles */
.agenda-minutes-documents-list {
    width: 100%;
    border-collapse: collapse;
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
}

.agenda-minutes-documents-list thead {
    background: var(--agm-header-bg-color, linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%));
}

.agenda-minutes-documents-list thead th {
    color: var(--agm-header-text-color, white);
    font-weight: 600;
    padding: 16px 12px;
    text-align: left;
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.main_color .tab_content .agenda-minutes-documents-list thead th strong {
    color: var(--agm-header-text-color, white);
}

.agenda-minutes-documents-list thead th strong {
    color: #FFF;
    letter-spacing: 0;
    text-transform: none;
}

.agenda-minutes-documents-list thead tr th {
    border: 0;
}

.agenda-minutes-documents-list tbody tr {
    border-bottom: 1px solid #e5e7eb;
    transition: background-color 0.2s ease;
}

.agenda-minutes-documents-list tbody tr:hover {
    background-color: #f8fafc;
}

.agenda-minutes-documents-list tbody tr:last-child {
    border-bottom: none;
}

.agenda-minutes-documents-list tbody td {
	padding: 18px 10px;
    vertical-align: top;
    font-size: 0.875rem;
    color: #374151;
    border-left: 0;
    border-right: 0;
    line-height: 1.4;
}

.agenda-minutes-documents-list tbody tr th:first-child,
.agenda-minutes-documents-list tbody tr td:first-child {
	border-left-width: 0;
}

.agenda-minutes-documents-list tbody tr.highlight {
    background-color: #fef3c7;
    border-left: 4px solid #f59e0b;
}

.main_color .agenda-minutes-documents-list thead tr:nth-child(odd) {
    background: transparent;
}

/* Download Links */
.agm-download-link {
	display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #2563eb;
    text-decoration: none;
    font-weight: 500;
    padding: 2px 4px;
}

.agm-download-link:hover {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(37, 99, 235, 0.2);
}

.agm-download-link img,
.agm-download-link .agm-doc-file-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

/* Supporting Documents Button */
.agm-supporting-docs-btn {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: white;
    border: none;
    padding: 12px 16px 11px;
    border-radius: 6px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.875rem;
}

.agm-supporting-docs-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4);
}

/* Year Navigation */
.agm-year-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
}

.agm-year-nav .browse-years {
    margin-right: 4px;
    font-weight: 600;
}

.agm-year-btn {
    background: white;
    border: 1px solid #d1d5db;
    color: #374151;
    padding: 8px 16px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: 500;
    font-size: 0.875rem;
    min-width: 88px;
    text-align: center;
    font-family: inherit;
    line-height: 1.4;
}

.agm-year-btn:hover {
    background: #f3f4f6;
    border-color: #9ca3af;
}

.agm-year-btn.active {
    background: var(--agm-header-bg-color, linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%)) !important;
    color: var(--agm-header-text-color, white) !important;
    border-color: var(--agm-header-bg-color, #6366f1);
}

.agm-year-btn:focus {
    outline: 2px solid #6366f1;
    outline-offset: 2px;
}

.agm-year-btn:focus:not(:focus-visible) {
    outline: none;
}

.agm-year-btn:focus-visible {
    outline: 2px solid #6366f1;
    outline-offset: 2px;
}

/* Legacy year link styling for backward compatibility */
span.year-link a {
    background: #f6f6f6;
    color: #000;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    display: inline-block;
    transition: all 0.2s ease;
    font-weight: 500;
    font-size: 0.875rem;
    border: 1px solid #d1d5db;
}

span.year-link a:hover {
    background: #e5e7eb;
    border-color: #9ca3af;
}

span.year-link.active a {
    background: var(--agm-header-bg-color, linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%)) !important;
    color: var(--agm-header-text-color, white) !important;
    border-color: var(--agm-header-bg-color, #6366f1);
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
    .agm-modal-content {
        width: 95%;
        margin: 10% auto;
        max-height: 85vh;
    }
    
    .agm-modal-header {
        padding: 16px 20px;
    }
    
    .agm-modal-title {
        font-size: 1.125rem;
    }
    
    .agm-modal-body {
        padding: 20px;
    }
    
    .agenda-minutes-documents-list {
        font-size: 0.875rem;
        border-radius: 8px;
    }
    
    .agenda-minutes-documents-list thead th,
    .agenda-minutes-documents-list tbody td {
        padding: 12px 8px;
    }
    
    .agm-year-nav {
        padding: 12px;
        gap: 6px;
        overflow-x: auto;
        flex-wrap: nowrap;
    }
    
    .agm-year-btn {
        padding: 8px 16px;
        font-size: 0.875rem;
        white-space: nowrap;
        flex-shrink: 0;
    }
    
    .agm-download-link {
        padding: 8px 12px;
        font-size: 0.875rem;
        display: inline-flex;
        align-items: center;
        gap: 6px;
    }
    
    .agm-supporting-docs-btn {
        padding: 8px 16px;
        font-size: 0.875rem;
    }
    
    /* Improve table readability on tablets */
    .agenda-minutes-documents-list {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 800px) {
    /* Tablet and mobile: Switch to card layout */
    .agenda-minutes-documents-list {
        display: block;
        width: 100%;
        border: none;
        box-shadow: none;
    }
    
    .agenda-minutes-documents-list thead {
        display: none;
    }
    
    .agenda-minutes-documents-list tbody {
        display: block;
    }
    
    .agenda-minutes-documents-list tr {
        display: block;
        background: white;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        margin-bottom: 16px;
        padding: 16px;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }
    
    .agenda-minutes-documents-list tr.highlight {
        border-left: 4px solid #f59e0b;
        background: #fef3c7;
    }
    
    .agenda-minutes-documents-list td {
        display: block;
        border: none;
        padding: 8px 0;
        text-align: left;
        position: relative;
        padding-left: 0;
    }
    
    .agenda-minutes-documents-list td:before {
        content: attr(data-label);
        font-weight: 600;
        color: #374151;
        display: block;
        margin-bottom: 4px;
        font-size: 0.875rem;
        text-transform: uppercase;
        letter-spacing: 0.05em;
    }
    
    .agenda-minutes-documents-list td:empty {
        display: none;
    }
    
    /* Style download links better on tablet/mobile */
    .agm-download-link {
        width: 100%;
        justify-content: flex-start;
        margin: 4px 0;
    }
    
    .agm-supporting-docs-btn {
        width: 100%;
        margin: 4px 0;
    }
	.home .flex_column.nextmeeting {
	    margin-bottom: 0 !important;
	}
}

@media (min-width: 641px) and (max-width: 800px) {
    /* Two-column layout for tablets */
    .agenda-minutes-documents-list tbody {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }
    
    .agenda-minutes-documents-list tr {
        margin-bottom: 0;
    }
    
    /* Ensure proper spacing between columns */
    .agenda-minutes-documents-list tr:nth-child(odd) {
        margin-right: 8px;
    }
    
    .agenda-minutes-documents-list tr:nth-child(even) {
        margin-left: 8px;
    }
}

@media (max-width: 640px) {
    /* Single column layout for mobile */
    .agenda-minutes-documents-list tbody {
        display: block;
    }
    
    .agenda-minutes-documents-list tr {
        margin-bottom: 16px;
        margin-left: 0;
        margin-right: 0;
    }
}

@media (max-width: 480px) {
    .agm-modal-content {
        width: 98%;
        margin: 5% auto;
        max-height: 90vh;
    }
    
    .agm-modal-header {
        padding: 12px 16px;
    }
    
    .agm-modal-title {
        font-size: 1rem;
    }
    
    .agm-modal-body {
        padding: 16px;
    }
    
    .agenda-minutes-documents-list tr {
        padding: 12px;
        margin-bottom: 12px;
    }
    
    .agenda-minutes-documents-list td {
        padding: 6px 0;
    }
    
    .agm-year-nav {
        padding: 8px;
        gap: 4px;
    }
    
    .agm-year-btn {
        padding: 6px 12px;
        font-size: 0.75rem;
    }
}

/* Screen Reader Only Text */
.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Loading States */
.agm-loading {
    opacity: 0.6;
    pointer-events: none;
}

.agm-loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 2px solid #6366f1;
    border-radius: 50%;
    border-top-color: transparent;
    animation: agm-spin 1s linear infinite;
}

@keyframes agm-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Document Status Styling 
.agm-approved-document {
    border-left: 4px solid #10b981 !important;
    background: #f0fdf4 !important;
}

.agm-draft-document {
    border-left: 4px solid #f59e0b !important;
    background: #fffbeb !important;
}

.agm-unapproved-document {
    border-left: 4px solid #ef4444 !important;
    background: #fef2f2 !important;
}

.agm-approved-document .agm-download-link {
    color: #059669;
    border-color: #10b981;
}

.agm-draft-document .agm-download-link {
    color: #d97706;
    border-color: #f59e0b;
}

.agm-unapproved-document .agm-download-link {
    color: #dc2626;
    border-color: #ef4444;
} */

span.browse-years.mobile,
label.browse-years.mobile {
    display: block;
}

.agm-year-link span.year-link:after {
    content: '';
}

.agm-year-nav.agm-year-link {
    margin-bottom: 15px;
}

.agm-year-link .agm-year-btn,
.agm-year-link span.year-link a,
.agm-year-nav .agm-year-btn {
    margin-right: 10px;
    min-width: 85px;
    text-align: center;
    margin-bottom: 10px;
    padding: 8px 10px;
}

/* Year Selector Responsive Display */
/* Show dropdown on mobile/small screens by default */
@media screen and (max-width: 990px) {
    .agm-year-select {
        display: block !important;
        margin-bottom: 15px;
    }
    .agm-year-link {
        display: none !important;
    }
}

/* Desktop display logic */
@media screen and (min-width: 991px) {
    /* Show dropdown on desktop only if dropdown setting is enabled */
    .agm-year-select.dropdown-enabled {
        display: block !important;
        margin-bottom: 15px;
    }
    .agm-year-select.mobile-show:not(.dropdown-enabled) {
        display: none !important;
    }
    
    /* Hide buttons on desktop if dropdown setting is enabled */
    .agm-year-link.dropdown-enabled {
        display: none !important;
    }
    /* Show buttons on desktop if dropdown setting is NOT enabled */
    .agm-year-link:not(.dropdown-enabled) {
        display: block !important;
        margin-bottom: 15px;
    }
}

/* Hide year links on very small screens */
@media screen and (max-width: 900px) {
    .agm-year-link {
        display: none !important;
    }
}

/* Keyboard Navigation Accessibility */
.agm-table td[tabindex="0"],
.agm-table th[tabindex="0"],
table td[tabindex="0"],
table th[tabindex="0"] {
    outline: 2px solid #3b82f6;
    outline-offset: 0px;
}

.agm-table td[tabindex="0"]:focus,
.agm-table th[tabindex="0"]:focus,
table td[tabindex="0"]:focus,
table th[tabindex="0"]:focus {
    background-color: #f0f9ff;
    border-radius: 4px;
}

/* Ensure year buttons are properly focusable */
.agm-year-link a:focus,
.agm-year-nav .agm-year-btn:focus-visible,
.agm-year-select select:focus {
    outline: 2px solid #3b82f6;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Hero Widget */

.meeting-cntanier {
    background: #353535;
    padding: 20px 20px 20px 20px;
    border-radius: 0 0 15px 15px;
}

.meeting-nfo {
    color: #FFF;
    display: flex;
    margin-top: 16px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9em;
    line-height: 1.5;
}

.nextmeeting .pcwt_codeblock.welcome {
    max-width: 600px;
    margin: -10px;
}

.nextmeeting .pcwt_codeblock.welcome h1 {
    background: #1b4b33d4;
    padding: 20px;
    color: #FFF;
    margin: 0;
}

.main_color .meeting-cntanier a,
.main_color .meeting-cntanier a:hover {
    color: #f5e850;
    text-transform: uppercase;
    font-size: 1.4em;
}

a span.nc,
a:hover span.nc {
    display: block;
	color:#FFF;
	text-transform: none;
	font-size: 0.8em;
}

.main_color .meeting-nfo a,
.main_color .meeting-nfo a:hover  {
    font-size: 0.9em;
    padding: 6px 20px;
    border-radius: 50px;
    border: 1px solid;
    min-width: 196px;
    margin-left: 22px;
    text-align: center;
}

@media screen and (max-width: 800px) {
	.meeting-cntanier a,
	.meeting-cntanier a:hover {
	    font-size: 1.1em;
	}	
	.meeting-nfo {
	    display: block;
	}	
	.meeting-nfo a,
	.meeting-nfo a:hover {
	    font-size: 0.8em;
	    display: table;
	    margin: 18px 0 0;
	}
	.nextmeeting .pcwt_codeblock.welcome h1 {
	    font-size: 1.2em;
	}
}

/* Custom Accordion Styles - No jQuery UI dependency */

.agenda-minutes-wrap {
    clear: both;
    margin-bottom: 2rem;
}

.agenda-minutes-wrap .agm-accordion-header:first-child {
    margin-top: 0;
}

.agenda-minutes-wrap .agm-accordion-header {
    display: flex;
    cursor: pointer;
    position: relative;
    margin: 0 0 1rem 0;
    padding: 1.25em 1.5em;
    font-size: 1.125em;
    font-weight: 600;
    line-height: 1.5;
    background: #f8fafc;
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    color: #1e293b;
    transition: all 0.2s ease;
    min-height: 3.5em;
    align-items: center;
    justify-content: space-between;
    text-align: left;
}

.agenda-minutes-wrap .agm-accordion-header:hover {
    background: #f1f5f9;
    border-color: #cbd5e1;
    color: #0f172a;
}

.agenda-minutes-wrap .agm-accordion-header:focus {
    outline: 3px solid #3b82f6;
    outline-offset: 2px;
    background: #eff6ff;
    border-color: #3b82f6;
}

.agenda-minutes-wrap .agm-accordion-header.agm-accordion-active {
    background: #e0e7ff;
    border-color: #6366f1;
    color: #1e1b4b;
    border-radius: 8px 8px 0 0;
    margin-bottom: 0;
}

.agenda-minutes-wrap .agm-accordion-header.agm-accordion-active:hover {
    background: #c7d2fe;
    border-color: #6366f1;
}

.agenda-minutes-wrap .agm-accordion-header.agm-accordion-active:focus {
    background: #c7d2fe;
    border-color: #6366f1;
    outline-color: #6366f1;
}

.agenda-minutes-wrap .agm-accordion-year-label {
    flex: 1;
    font-weight: 600;
}

.agenda-minutes-wrap .agm-accordion-icon {
    margin-left: 1em;
    flex-shrink: 0;
    font-size: 0.875em;
    transition: transform 0.2s ease;
}

.agenda-minutes-wrap .agm-accordion-header.agm-accordion-active .agm-accordion-icon {
    transform: rotate(0deg);
}

/* Accordion content */
.agenda-minutes-wrap .agm-accordion-content {
    border: 2px solid #e2e8f0;
    border-top: none;
    border-radius: 0 0 8px 8px;
    padding: 1.5rem;
    background: #ffffff;
    margin-top: -1rem;
    margin-bottom: 1rem;
    overflow: hidden;
}

.agenda-minutes-wrap .agm-accordion-content .agenda-minutes-inner {
    padding: 0;
}

/* Widget */

.single .pcw_event .document-wid-row.download-agenda span.download-agenda a {
    color: #000;
}

.document-wid-meeting.document-wid-meeting-additional {
    border-top: 1px solid;
    padding-top: 20px;
    margin-top: 20px;
}
/* ==========================================================================
   List layout (category setting "Layout: List", or [pc_documents layout="list"])
   Responds to the width of its own column (container queries), not the screen,
   so it adapts inside any theme or page builder column.
   ========================================================================== */

.agm-meetings-layout,
.agm-list-layout {
    container: agm-list / inline-size;
    --agm-accent: var(--agm-header-bg-color, #121a59);
    --agm-muted: #5a6478;
    --agm-rule: #e3e8f0;
    --agm-upcoming: #8a5a00;
}

.agm-list-layout .agm-meetings {
    --agm-dcol: 5.75em;   /* width of the date column; each date style sets its own */
    --agm-gap: 16px;
}

.agm-list-layout .agm-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Each meeting: date on the left; title, details and then documents on the right */
.agm-list-layout .agm-list > li.agm-item {
    display: grid;
    grid-template-columns: var(--agm-dcol) minmax(0, 1fr);
    column-gap: var(--agm-gap);
    row-gap: 8px;
    margin: 0;
    padding: 26px 0;
    border-bottom: 1px solid var(--agm-rule);
    list-style: none;
}

.agm-list-layout .agm-list > li.agm-item::before,
.agm-list-layout .agm-list > li.agm-item::marker {
    content: none;
}

.agm-list-layout .agm-list > li.agm-item.agm-no-date {
    grid-template-columns: minmax(0, 1fr);
}

.agm-list-layout .agm-list > li.agm-item.highlight {
    --agm-pad: 12px;
    background: #fef3c7;
    border-left: 4px solid #f59e0b;
    padding-left: var(--agm-pad);
    padding-right: 12px;
}

/* Date */
.agm-list-layout .agm-item-when {
    grid-row: span 2;
    align-self: start;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

.agm-list-layout .agm-item-when time {
    display: block;
}

.agm-list-layout .agm-item-day {
    display: block;
    font-weight: 700;
    color: var(--agm-accent);
    white-space: nowrap;
}

.agm-list-layout .agm-item-weekday {
    display: block;
    margin-top: 2px;
    font-size: 0.85em;
    color: var(--agm-muted);
}

.agm-list-layout .agm-item.is-upcoming .agm-item-day {
    color: var(--agm-upcoming);
}

/* Title, notes, time and venue */
.agm-list-layout .agm-item-info {
    min-width: 0;
}

.agm-list-layout .agm-item-info p {
    margin: 0;
}

.agm-list-layout .agm-item-title {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 10px;
    font-weight: 600;
    font-size: 1.05em;
    line-height: 1.35;
}

.agm-meetings-layout .agm-badge {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: #fff3d1;
    color: #6e4800;
    border-radius: 999px;
    padding: 2px 8px;
    white-space: nowrap;
}

.agm-list-layout .agm-item-info .agenda-minutes-desc,
.agm-list-layout .agm-item-meta,
.agm-list-layout .agm-item-link {
    margin-top: 4px;
    font-size: 0.9em;
}

.agm-list-layout .agm-item-meta {
    color: var(--agm-muted);
}

/* Documents: always on their own line under the meeting details */
.agm-list-layout .agm-item-docs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.agm-list-layout .agm-item-docs:empty {
    display: none;
}

.agm-meetings-layout .agm-doc .agm-download-link {
    padding: 6px 12px;
    font-size: 0.93em;
    line-height: 1.25;
}

.agm-meetings-layout .agm-pending,
.agm-meetings-layout .agm-doc-note {
    font-size: 0.9em;
    color: var(--agm-muted);
}

.agm-meetings-layout .agm-pending {
    font-style: italic;
}

.agm-meetings-layout .agm-list-empty {
    padding: 24px 0;
    color: var(--agm-muted);
}

/* Next meeting */
.agm-meetings-layout .agm-next {
    display: grid;
    gap: 4px;
    margin: 0 0 12px;
    padding: 12px 14px;
    background: #f0f5fc;
    border: 1px solid #cddaee;
    border-radius: 8px;
}

.agm-meetings-layout .agm-next p {
    margin: 0;
}

.agm-meetings-layout .agm-next-label {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--agm-accent);
}

.agm-meetings-layout .agm-next-body {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 14px;
}

/* ---- Date style: large number ---- */
.agm-list-layout .agm-date-numeral {
    --agm-dcol: 4.5em;
}

.agm-list-layout .agm-date-numeral .agm-item-day {
    font-size: 2.1em;
    font-weight: 300;
    line-height: 1;
    letter-spacing: -0.02em;
}

.agm-list-layout .agm-date-numeral .agm-item-weekday {
    margin-top: 5px;
    font-size: 0.68em;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

/* ---- Date style: above the title ---- */
.agm-list-layout .agm-item-dateline {
    margin-bottom: 2px !important;
    font-size: 0.88em;
    font-weight: 600;
    color: var(--agm-accent);
    font-variant-numeric: tabular-nums;
}

.agm-list-layout .agm-item.is-upcoming .agm-item-dateline {
    color: var(--agm-upcoming);
}

/* ---- Date style: grouped by month ---- */
.agm-list-layout .agm-date-months {
    --agm-dcol: 2.75em;
}

.agm-list-layout .agm-month {
    margin: 22px 0 0;
    padding: 0 0 6px;
    font-size: 0.78em;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--agm-muted);
    border-bottom: 1px solid #cfd8e6;
}

.agm-meetings-layout .agm-next + .agm-month {
    margin-top: 8px;
}

.agm-list-layout .agm-date-months .agm-item-day {
    font-size: 1.3em;
    line-height: 1;
}

.agm-list-layout .agm-date-months .agm-item-weekday {
    margin-top: 4px;
    font-size: 0.78em;
}

/* ---- Date style: timeline ---- */
.agm-list-layout .agm-date-timeline {
    --agm-dcol: 4.5em;
    --agm-gap: 30px;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item {
    position: relative;
    border-bottom: 0;
}

.agm-list-layout .agm-date-timeline .agm-item-when {
    text-align: right;
}

.agm-list-layout .agm-date-timeline .agm-item-day {
    white-space: normal;
}

/* The line runs down the middle of the gap between the dates and the meetings */
.agm-list-layout .agm-date-timeline .agm-list > li.agm-item::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(var(--agm-pad, 0px) + var(--agm-dcol) + (var(--agm-gap) / 2) - 1px);
    width: 2px;
    background: #dbe3ef;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item:first-child::before {
    top: 34px;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item:last-child::before {
    bottom: auto;
    height: 34px;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item:only-child::before {
    display: none;
}

/* A marker for each meeting: solid for past meetings, hollow amber for upcoming ones */
.agm-list-layout .agm-date-timeline .agm-list > li.agm-item::after {
    content: "";
    position: absolute;
    top: 30px;
    left: calc(var(--agm-pad, 0px) + var(--agm-dcol) + (var(--agm-gap) / 2) - 6px);
    width: 12px;
    height: 12px;
    box-sizing: border-box;
    border-radius: 50%;
    background: var(--agm-accent);
    box-shadow: 0 0 0 3px #fff;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item.is-upcoming::after {
    background: #fff;
    border: 2px solid #c98a0c;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item.highlight::after {
    box-shadow: 0 0 0 3px #fef3c7;
}

.agm-list-layout .agm-date-timeline .agm-list > li.agm-item.agm-no-date::before,
.agm-list-layout .agm-date-timeline .agm-list > li.agm-item.agm-no-date::after {
    display: none;
}

/* Narrow columns (phones, sidebars) */
@container agm-list (max-width: 420px) {
    .agm-list-layout .agm-meetings {
        --agm-dcol: 4.75em;
        --agm-gap: 12px;
    }

    .agm-list-layout .agm-date-numeral {
        --agm-dcol: 4em;
    }

    .agm-list-layout .agm-date-months {
        --agm-dcol: 2.5em;
    }

    .agm-list-layout .agm-date-timeline {
        --agm-dcol: 3.5em;
        --agm-gap: 24px;
    }

    .agm-list-layout .agm-date-numeral .agm-item-day {
        font-size: 1.75em;
    }
}

/* ---- List layout: year view (heading, year navigation, sidebar) ---- */
.agm-meetings-layout .agm-yv {
    display: grid;
    gap: 20px;
}

.agm-meetings-layout .agm-yv-main {
    min-width: 0;
}

.agm-meetings-layout .agm-yv-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 16px;
    margin: 0 0 14px;
    padding: 0 0 12px;
    border-bottom: 2px solid var(--agm-accent);
}

.agm-meetings-layout .agm-yv-heading {
    margin: 0;
    padding: 0;
    font-size: 1.4em;
    line-height: 1.2;
    color: var(--agm-accent);
    text-wrap: balance;
}

.agm-meetings-layout .agm-yv-heading:focus {
    outline: none !important;
}

.agm-meetings-layout .agm-yv-heading:focus-visible {
    outline: 2px solid var(--agm-accent);
    outline-offset: 4px;
}

.agm-meetings-layout .agm-yv-count {
    font-size: 0.68em;
    font-weight: 400;
    color: var(--agm-muted);
}

.agm-meetings-layout .agm-yv-nav {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
}

.agm-meetings-layout .agm-yv-step {
    display: inline-block;
    padding: 6px 8px;
    border-radius: 6px;
    font-weight: 600;
    white-space: nowrap;
    text-decoration: none;
    color: var(--agm-accent);
    font-variant-numeric: tabular-nums;
}

.agm-list-layout a.agm-yv-step:hover {
    background: #eef3fb;
}

.agm-meetings-layout .agm-yv-step.is-disabled {
    visibility: hidden;
}

.agm-meetings-layout .agm-yv-form {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
}

.agm-meetings-layout .agm-yv-form,
.agm-meetings-layout .agm-yv-select {
    margin-bottom: 0 !important;
}

.agm-meetings-layout .agm-yv-select {
    min-width: 6.5em;
    padding: 6px 28px 6px 10px;
    border: 1px solid #c3cddd;
    border-radius: 6px;
    background: #fff;
    color: inherit;
    font: inherit;
    font-variant-numeric: tabular-nums;
}

.agm-meetings-layout .agm-yv-go {
    padding: 6px 12px;
    border: 1px solid var(--agm-accent);
    border-radius: 6px;
    background: var(--agm-accent);
    color: #fff;
    font: inherit;
    cursor: pointer;
}

/* With JavaScript the dropdown changes the year straight away, so the Show button isn't needed */
.agm-js .agm-meetings-layout .agm-yv-go {
    display: none;
}

.agm-meetings-layout .agm-yv-sr {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.agm-meetings-layout .agm-yv a:focus-visible,
.agm-meetings-layout .agm-yv select:focus-visible,
.agm-meetings-layout .agm-yv button:focus-visible {
    outline: 2px solid var(--agm-accent);
    outline-offset: 2px;
}

.agm-meetings-layout[aria-busy="true"] .agm-yv-main {
    opacity: 0.6;
    transition: opacity 0.15s ease;
}

/* Sidebar of years: only on wide columns */
.agm-meetings-layout .agm-yv-side {
    display: none;
}

.agm-meetings-layout .agm-yv-side-title {
    margin: 4px 0 8px;
    font-size: 0.75em;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--agm-muted);
}

.agm-meetings-layout .agm-yv-side ul {
    display: grid;
    gap: 2px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.agm-meetings-layout .agm-yv-side li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.agm-meetings-layout .agm-yv-side li::before {
    content: none;
}

.agm-meetings-layout .agm-yv-side a {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 6px;
    text-decoration: none;
    color: inherit;
    font-variant-numeric: tabular-nums;
}

.agm-meetings-layout .agm-yv-side a:hover {
    background: #eef3fb;
}

.agm-meetings-layout .agm-yv-side a[aria-current="page"] {
    background: var(--agm-accent);
    color: #fff;
    font-weight: 600;
}

.agm-meetings-layout .agm-yv-side-count {
    opacity: 0.7;
    font-size: 0.88em;
}

@container agm-list (min-width: 860px) {
    .agm-list-layout .agm-yv {
        grid-template-columns: 11em minmax(0, 1fr);
        gap: 32px;
        align-items: start;
    }

    .agm-list-layout .agm-yv-side {
        display: block;
        position: sticky;
        top: 16px;
    }

    .agm-list-layout .agm-yv-nav {
        display: none;
    }
}

@container agm-list (min-width: 1100px) {
    .agm-cards-layout .agm-yv,
    .agm-table-layout .agm-yv {
        grid-template-columns: 11em minmax(0, 1fr);
        gap: 32px;
        align-items: start;
    }

    .agm-cards-layout .agm-yv-side,
    .agm-table-layout .agm-yv-side {
        display: block;
        position: sticky;
        top: 16px;
    }

    .agm-cards-layout .agm-yv-nav,
    .agm-table-layout .agm-yv-nav {
        display: none;
    }
}

/* ---- List layout: supporting documents ---- */
.agm-meetings-layout .agm-doc-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    border: 1px solid #dbeafe;
    border-radius: 6px;
    background: #eff6ff;
    color: #2563eb;
    font: inherit;
    font-size: 0.93em;
    font-weight: 500;
    line-height: 1.25;
    cursor: pointer;
    transition: background 0.2s ease;
}

.agm-meetings-layout .agm-doc-button:hover {
    background: #dbeafe;
    color: #1d4ed8;
}

.agm-meetings-layout .agm-doc-button:focus-visible {
    outline: 2px solid var(--agm-accent);
    outline-offset: 2px;
}

.agm-meetings-layout .agm-supp-count {
    font-variant-numeric: tabular-nums;
}

.agm-meetings-layout .agm-supp-chevron {
    transition: transform 0.15s ease;
}

.agm-meetings-layout .agm-supp-toggle[aria-expanded="true"] .agm-supp-chevron {
    transform: rotate(180deg);
}

@media (prefers-reduced-motion: reduce) {
    .agm-meetings-layout .agm-supp-chevron {
        transition: none;
    }
}

.agm-list-layout .agm-supp-panel {
    grid-column: 2 / -1;
}

.agm-meetings-layout .agm-supp-panel {
    padding: 10px 12px;
    border: 1px solid var(--agm-rule);
    border-radius: 8px;
    background: #f7f9fc;
}

.agm-list-layout .agm-item.agm-no-date .agm-supp-panel {
    grid-column: 1 / -1;
}

.agm-meetings-layout .agm-supp-panel[hidden] {
    display: none;
}

.agm-meetings-layout .agm-supp-list {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.agm-meetings-layout .agm-supp-item {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.agm-meetings-layout .agm-supp-item::before {
    content: none;
}

.agm-meetings-layout .agm-supp-link {
    display: inline-flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px 6px;
    min-width: 0;
    color: #174f96;
}

.agm-meetings-layout .agm-supp-file-icon {
    width: 16px;
    height: 16px;
    align-self: center;
    flex: none;
}

.agm-meetings-layout .agm-supp-meta {
    font-size: 0.85em;
    color: var(--agm-muted);
    font-variant-numeric: tabular-nums;
}

.agm-meetings-layout .agm-supp-download {
    display: inline-flex;
    padding: 4px;
    border-radius: 4px;
    color: var(--agm-muted);
}

.agm-meetings-layout .agm-supp-download:hover {
    color: var(--agm-accent);
    background: #eef3fb;
}

.agm-meetings-layout .agm-supp-zip {
    margin: 10px 0 0;
}

.agm-meetings-layout .agm-supp-zip button {
    padding: 6px 12px;
    border: 1px solid #c3cddd;
    border-radius: 6px;
    background: #fff;
    color: inherit;
    font: inherit;
    font-size: 0.9em;
    cursor: pointer;
}

.agm-meetings-layout .agm-supp-zip button:hover {
    background: #eef3fb;
}

/* ---- List layout: meeting type filter ---- */
.agm-meetings-layout .agm-yv-tools {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
}

.agm-meetings-layout .agm-yv-filter {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
}

.agm-meetings-layout .agm-yv-filter,
.agm-meetings-layout .agm-yv-type {
    margin-bottom: 0 !important;
}

.agm-meetings-layout .agm-yv-type {
    max-width: 100%;
    padding: 6px 40px 6px 10px !important;
    border: 1px solid #c3cddd;
    border-radius: 6px;
    background: #fff;
    color: inherit;
    font: inherit;
	line-height: 1.5;
}

.agm-meetings-layout .agm-yv-type:focus-visible {
    outline: 2px solid var(--agm-accent);
    outline-offset: 2px;
}

/* ---- Document file type and size (e.g. "PDF · 226 KB") ---- */
.agm-list-layout .agm-download-link-meta {
    color: var(--agm-muted);
    font-size: 0.85em;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* ---- Date style: calendar tile ---- */
.agm-list-layout .agm-date-tile {
    --agm-dcol: 3.75em;
}

.agm-list-layout .agm-tile {
    display: block;
    overflow: hidden;
    border: 1px solid #cddaee;
    border-radius: 8px;
    background: #fff;
    text-align: center;
    line-height: 1.1;
}

.agm-list-layout .agm-tile-month {
    display: block;
    padding: 3px 0;
    background: var(--agm-accent);
    color: #fff;
    font-size: 0.68em;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.agm-list-layout .agm-date-tile .agm-item-day {
    padding: 5px 0 0;
    font-size: 1.35em;
}

.agm-list-layout .agm-date-tile .agm-item-weekday {
    margin: 0;
    padding: 1px 0 6px;
    font-size: 0.72em;
}

.agm-list-layout .agm-date-tile .agm-item.is-upcoming .agm-tile {
    border-color: #e2b84a;
}

.agm-list-layout .agm-date-tile .agm-item.is-upcoming .agm-tile-month {
    background: var(--agm-upcoming);
}

@container agm-list (max-width: 420px) {
    .agm-list-layout .agm-date-tile {
        --agm-dcol: 3.25em;
    }

    .agm-list-layout .agm-date-tile .agm-item-day {
        font-size: 1.15em;
    }
}

/* ---- Year navigation on smaller screens ----
   920px and below: no previous/next links; the meeting type and year dropdowns sit side by side at
   equal widths (the year dropdown takes the full width when there is no type filter).
   500px and below: each dropdown on its own line at full width. */
@media (max-width: 920px) {
    .agm-meetings-layout .agm-yv {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .agm-meetings-layout .agm-yv-side {
        display: none !important;
    }

    .agm-meetings-layout .agm-yv-tools {
        flex: 1 1 100%;
        flex-wrap: nowrap;
        gap: 2%;
        width: 100%;
    }

    .agm-meetings-layout .agm-yv-step {
        display: none !important;
    }

    .agm-meetings-layout .agm-yv-nav {
        display: flex !important;
        flex: 0 0 49%;
        gap: 0;
    }

    .agm-meetings-layout .agm-yv-filter {
        flex: 0 0 49%;
    }

    .agm-meetings-layout .agm-yv-tools > .agm-yv-nav:only-child {
        flex-basis: 100%;
    }

    .agm-meetings-layout .agm-yv-form,
    .agm-meetings-layout .agm-yv-filter {
        display: flex;
        width: 100%;
        min-width: 0;
    }

    .agm-meetings-layout .agm-yv-select,
    .agm-meetings-layout .agm-yv-type {
        flex: 1 1 auto;
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 500px) {
    .agm-meetings-layout .agm-yv-tools {
        flex-wrap: wrap;
        row-gap: 8px;
    }

    .agm-meetings-layout .agm-yv-nav,
    .agm-meetings-layout .agm-yv-filter {
        flex-basis: 100%;
    }
}

/* ---- Widgets and event pages: document links ----
   An older rule gives every span in a widget row full width (.document-wid-row span { width: 100% }).
   Inside a document link that squeezes the link text and the file info against each other, which
   broke "(PDF, 142 KB)" across two lines. Let both size to their content, keep the file info in one
   piece, and only move it under the link text when there really isn't room. */
.document-wid-row .agm-download-link > span {
    display: inline;
    width: auto;
}

.widget .document-wid-row.download-agenda span.download-agenda {
    margin-top: 10px;
    display: block;
}

.widget .document-wid-row.download-agenda span {
    line-height: 1.5;
}

.document-wid-row .agm-download-link {
    flex-wrap: wrap;
    column-gap: 6px;
    row-gap: 2px;
}

.document-wid-row .agm-download-link-meta {
    white-space: nowrap;
}

/* ==========================================================================
   Cards layout (category setting "Layout: Cards", or [pc_documents layout="cards"])
   An even grid: as many equal columns as fit at about 250px, so a narrow site gets one or two
   and a wide theme three or four. Cards in a row share a height, and the documents sit at the
   foot of each card so their buttons line up across the row.
   ========================================================================== */

.agm-cards-layout .agm-next {
    margin-bottom: 16px;
}

.agm-cards-layout .agm-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 15.5rem), 1fr));
    gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.agm-cards-layout .agm-cards > li.agm-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    list-style: none;
    background: #fff;
    border: 1px solid #dfe5ee;
    border-radius: 10px;
}

.agm-cards-layout .agm-cards > li.agm-card::before,
.agm-cards-layout .agm-cards > li.agm-card::marker {
    content: none;
}

.agm-cards-layout .agm-cards > li.agm-card.highlight {
    background: #fffbeb;
    border-color: #f2cf74;
}

/* Date band */
.agm-cards-layout .agm-card-date {
    padding: 10px 16px;
    background: var(--agm-accent);
    color: #fff;
    font-variant-numeric: tabular-nums;
}

.agm-cards-layout .agm-card-date time {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 2px 8px;
}

.agm-cards-layout .agm-card-day {
    font-size: 1.35em;
    font-weight: 700;
    line-height: 1.1;
}

.agm-cards-layout .agm-card-weekday {
    font-size: 0.85em;
    opacity: 0.85;
}

.agm-cards-layout .agm-card.is-upcoming .agm-card-date {
    background: var(--agm-upcoming);
}

/* Body */
.agm-cards-layout .agm-card-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 6px;
    padding: 14px 16px 16px;
}

.agm-cards-layout .agm-card-body p {
    margin: 0;
}

.agm-cards-layout .agm-card-title {
    margin: 0;
    padding: 0;
    font-size: 1.08em;
    font-weight: 700;
    line-height: 1.3;
    text-wrap: balance;
}

.agm-cards-layout .agm-card-body .agm-badge {
    align-self: flex-start;
}

.agm-cards-layout .agm-card-meta,
.agm-cards-layout .agm-card-link,
.agm-cards-layout .agm-card-body .agenda-minutes-desc {
    font-size: 0.9em;
}

.agm-cards-layout .agm-card-meta {
    color: var(--agm-muted);
}

/* Documents: stacked full-width buttons at the foot of the card */
.agm-cards-layout .agm-card-docs {
    display: grid;
    gap: 6px;
    margin-top: auto;
    padding-top: 10px;
}

.agm-cards-layout .agm-card-docs:empty {
    display: none;
}

.agm-cards-layout .agm-doc {
    display: block;
}

.agm-cards-layout .agm-doc .agm-download-link {
    display: flex;
    box-sizing: border-box;
    width: 100%;
}

.agm-cards-layout .agm-download-link-meta {
    margin-left: auto;
    padding-left: 8px;
    color: var(--agm-muted);
    font-size: 0.85em;
    font-weight: 400;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.agm-cards-layout .agm-doc-button {
    box-sizing: border-box;
    width: 100%;
    text-align: left;
}

.agm-cards-layout .agm-supp-chevron {
    margin-left: auto;
}

/* ---- Year position "Above the meetings": no sidebar on wide screens, the year controls stay above ---- */
.agm-meetings-layout .agm-yv.agm-yv--top {
    grid-template-columns: minmax(0, 1fr);
}

.agm-meetings-layout .agm-yv--top .agm-yv-side {
    display: none;
}

.agm-meetings-layout .agm-yv--top .agm-yv-nav {
    display: inline-flex;
}
