
body   {
    font-family: Monserrat, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    color: var(--wp--preset--color--text-gray);
    background-color: var(--wp--preset--color--green);
}

.site-header, main {
    background-color: #fff;
}
main {
    padding-bottom: 1.44rem;
}
.page-template-apply-full main{
    padding-bottom:0
}
.site-header, main, .site-footer    {    
    padding-top: 0.8rem;
}
.site-header {
    padding-bottom: 0.8rem;
    transition: padding 0.3s ease-in-out;
}
.site-header.shrink {
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
    transition: padding 0.3s ease-in-out;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.site-header {
    position: fixed;
    top: 0;
    width: 100%;
    transition: top 0.3s ease-in-out;
    z-index: 99;
    background: white;
    box-shadow: none;
}
main {
    padding-top: 7rem;
}
.site-footer, .site-footer .bi, .site-footer h6, .site-footer a{
    color: var(--wp--preset--color--light-gray);
}
.page-title, .post-title {
    color: var(--wp--preset--color--lime);    
}
h1, h2, h3, h4, h5, h6 {
    color: var(--wp--preset--color--green);
    font-family: Gelasio, "Iowan Old Style", "Apple Garamond", Baskerville, "Times New Roman", "Droid Serif", Times, "Source Serif Pro", serif;
}

.site-footer a{
    text-decoration: none;
}
.site-footer a:hover{
    color: var(--wp--preset--color--white);
    text-decoration: underline;
}
.site-footer h6{
    font-size: clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.575), 1.22rem);
}
.wp-block-button .wp-block-button__link {
    border-radius: 3px;
};


.wpcf7-textarea {
    height: 200px !important;
}

body a {
    text-decoration: none !important;
}

body a:hover {
    text-decoration: underline !important;
}

body :where(.wp-site-blocks *:focus) {
    outline-color: var(--wp--preset--color--green);
}

:where(.wp-site-blocks) main {
    margin-top: 0;
}

.wp-block-quote {
    font-family: var(--bs-body-font-family);
    font-size: 1rem;
}

.wp-block-button .wp-element-button {
    color:#fff;
    background-color:  var(--wp--preset--color--green);
    border: 1px solid var(--wp--preset--color--green);
}

/*.wp-block-button .wp-block-button__link,*/
.wp-block-button .wp-element-button:hover {
    color: var(--wp--preset--color--green);
    background-color: #fff;    
}

.wp-block-button .wp-element-button.has-purple-background-color:hover {
    color: var(--wp--preset--color--purple);
    background-color: #fff !important;
}

.wp-block-button .wp-element-button.has-purple-background-color {
    border: 1px solid var(--wp--preset--color--purple);
    color: #fff;
}


.apply-columns, .apply-container {
    padding: 0;
}

.right-content {
/*
    overflow-y: auto;  
    max-height: 100vh; 
    box-shadow: inset 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
    border-start-start-radius: 3px;
    padding:0;
*/
    
    border-left: 1px solid #eee;

}
:root{
    --eabp-border-radius-small: 3px;
    --eabp-border-radius-medium: 6px;
    --eabp-opacity: 0.88;
}

h1.post-title-full{
    margin-bottom:var(--wp--preset--spacing--20);
    color:#fff;
    background:var(--wp--preset--color--green);
    padding:0.5rem 1rem;
    /*border-top-left-radius:3px;*/
    border-radius: var(--eabp-border-radius-medium);
    opacity: var(--eabp-opacity);
    /*opacity: 0.76;*/
}
.right-content .entry-content {
    padding: 0 0.5rem 1rem 1rem;
}

.full-sidebar{
    padding-top:1.2rem;
}

.apply-menu li::marker {
    color: var(--wp--preset--color--green);
}

.instructions a:hover, .apply-menu li:hover {
    background-color: #00756b22;
    /*color: var(--wp--preset--color--white);*/
    opacity:var(--eabp-opacity);
}

.instructions a, .apply-menu li a{
    display: block;
}
.instructions a:hover, .apply-menu li a:hover {
    text-decoration: none !important;
    /*color: var(--wp--preset--color--white);*/
}

.instructions a, .instructions-selected, .apply-menu li {    
    padding: 0.1rem 0.5rem;
    opacity: 0.76;
    border-radius: var(--eabp-border-radius-small);
    transition: 400ms;
    margin: 0.2rem 0;
}
.section-disabled{
    color: var(--wp--preset--color--light-gray);
    opacity: var(--eabp-opacity);
}

.apply-menu li {
    font-size: 1rem;
}   

/* 🌀 ★ 📂 ✐ ✎ ☜ ✍ ➢ ⮚ ⮘ ⮙ ⮕ ➜ ➠ ➤ ➦ ➔ ➥ ➣ ➢ */ 
/*.section-selected::after {
    content: "★";
    padding: 0.1rem 0.4rem;
    font-size: 0.9rem;
    color: #fff;
}*/

.instructions-selected, .apply-menu li.section-selected, .apply-menu li.section-selected:hover {
    background-color: #00756b;
    color: var(--wp--preset--color--eabp);
    color: #fff;
    opacity: var(--eabp-opacity)
}


@media (max-width: 781px) {
    h1.post-title-full{
        border-radius:var(--eabp-border-radius-medium);
    }    
    .apply-columns, .apply-container {
        padding: 0;
    }

    .full-sidebar{
        padding: 1rem 0.5rem;
        background: #00756c1f;
    }
    
    .right-content {
        overflow-y: visible;
        max-height: none; 
        box-shadow: none;
        padding:1rem;  
    }
}

/* buttons */
.wp-element-button {
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

body a.wp-element-button:hover, a.btn:hover, input.btn:hover {
    text-decoration: none !important;
}
#crm-container.crm-public .crm-section.recaptcha-section, .recaptcha-section {
    margin-top: 1.5rem;
    margin-bottom:1.5rem;
}

/* CiviCRM Forms */
.crm-container fieldset.crm-profile legend,
.crm-container fieldset.crm-group legend {
    display: block;
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    line-height: 1.2;
    font-size: 18px;
    color: var(--bs-heading-color);
}

.wp-site-blocks .crm-container a.button,
.wp-site-blocks .crm-container a.button:link,
.wp-site-blocks .crm-container a.button:visited,
.wp-site-blocks .crm-container .ui-dialog-buttonset .ui-button,
.wp-site-blocks .crm-container .crm-button ,
 a.btn-primary, button.btn-primary, button.button-primary,
    .crm-container a.btn-primary, .crm-container button.btn-primary {
    line-height: 1.5;
    text-shadow: none;
    font-size: var(--wp--preset--font-size--medium);
    font-style: normal;
    font-weight: 400;
    background-color: var(--wp--preset--color--green);
    border-radius: 3px;
    border: 1px solid var(--wp--preset--color--green);
    color: var(--wp--preset--color--white);
    font-family: var(--wp--preset--font-family--montserrat);
    padding: 0.5rem 1.4rem;
}

.crm-container a.btn-primary, .crm-container button.btn-primary, 
.crm-container button.button-primary,
    button.btn-primary:hover, a.btn-primary:hover, .crm-container button.button-primary:hover,
.wp-site-blocks .crm-container a.button:hover,
.wp-site-blocks .crm-container .ui-dialog-buttonset .ui-button:hover,
.wp-site-blocks .crm-container .crm-button:hover,
.wp-site-blocks .crm-container .crm-button:focus,
.wp-site-blocks .crm-container .ui-dialog-buttonset .ui-button:focus,
.wp-site-blocks .crm-container a.button:focus {
    color: var(--wp--preset--color--eabp);
    background-color: var(--wp--preset--color--white);
}
/*
.current-menu-item {
    border-bottom: 2px solid var(--wp--preset--color--green);
}
.wp-block-loginout {
    border-bottom: 2px solid var(--wp--preset--color--white);
}
*/
.wp-site-blocks .crm-title {
    display: none;
}



/*
fieldset .crm-section{
	background-color: transparent;
	transition-duration: 600ms;
}
fieldset .crm-section:hover{
	background-color:#d1dfb0;
}*/
fieldset .crm-profile h2 {
    display: block;
}

div.crm-container fieldset.crm-profile legend {
    font-size: 2em;
    color: #fff;
    background-color: #00756c;
    /*#cbd6d4;*/
    width: 100%;
    padding-left: 12px;
}


div.crm-container fieldset.crm-profile legend {
    font-size: 1.4rem;
    opacity: 1;
    margin-bottom: 1.5rem;
}



.red {
    color: #b01d1c;/*red*/
}
/*
h1.wp-block-post-title {
    margin-bottom: 0;
}*/
.crm-public .crm_user-group .help{
    display: none;
}
div.crm-container fieldset.crm-profile h2 {
    color: #00756c;
}

div.crm-container fieldset.crm-profile h4 {
    color: #00756c;
    margin-top: 20px;
}


.lt-gray {
    color: var(--wp--preset--color--light-gray) !important;
}

.gray {
    color: var(--wp--preset--color--gray);
}

.lime, body .text-info {
    color: var(--wp--preset--color--lime) !important;
}

.green, .green-75 {
    
    color: var(--wp--preset--color--green) !important;
}
.green-75 {opacity: 0.75;}

h6.profile-name {
    font-family: "Gelasio", "Times New Roman", Times, serif;
}

div.alert-primary{
    background-color: transparent;
    color:var(--wp--preset--color--lime);
    opacity: 0.8;
    border-color:  var(--wp--preset--color--lime);
}

div.alert-info{
    background-color:var(--wp--preset--color--green);
    color: #fff;
    
    border-color:  var(--wp--preset--color--green);
}
div.alert-info .btn-close {
    --bs-btn-close-info-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
    color: #fff;
    background: transparent var(--bs-btn-close-info-bg) center/1em auto no-repeat
}

.card-body,
.card-text,
.profile-label {
    color: var(--wp--preset--color--gray);
}

.profile-member-type {
    font-weight: 600;
    color: var(--wp--preset--color--green);
    margin: 0;
    font-family: var(--wp--preset--font-family--montserrat);
}

.profile-not-member-type {
    font-weight: 500;
    color: var(--bs-danger);
    color:#b01d1c;
    font-family: var(--wp--preset--font-family--montserrat);

}

.menu-badge img,
.badge-pic {
    width: 42px !important;
   /* height: auto !important;*/
   height: 42px !important;
}

p.lh-1{
    line-height: 1.2rem !important;
}

.menu-badge .profile-name,
.badge-profile-name {
    font-size: 0.9rem;
    text-transform: capitalize;
    font-weight: 400;
    text-align: right;
}

.menu-badge .profile-member-type,
.badge-profile-member-type {
    font-size: 0.8rem;
    font-family: Gelasio;
    font-family: var(--wp--preset--font-family--montserrat);

    font-weight: 400;
    text-transform: capitalize;
    text-align: right;
}

div.wp-block-group nav.wp-block-navigation {
    padding: 0.5rem 1rem 0.5rem 0.5rem;
    font-size: var(--wp--preset--font-size--small);
}

div.wp-block-group nav.wp-block-navigation.br1{
    border-right: 1px solid var(--wp--preset--color--grain);
}

div.wp-block-group div.top-badge {
    margin-top: -8px;
}

body>div>header>div>div>div.wp-block-group.is-content-justification-right.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-4.wp-block-group-is-layout-flex>nav,
div.wp-block-group nav.wp-block-navigation.top-nav {
    margin-top: -6px !important;
}

/*
.custom-logo {
    opacity: 0.76;
}*/

.menu-list {
    font-size: 1rem;
}

.menu-list li {
    line-height: 1.5;
    list-style: none;
    padding-bottom: 1.2rem;
}

.menu-list ul li {
    padding-bottom: 0.3rem;
}

#bootstrap-theme button.btn-primary,
#bootstrap-theme a.btn-primary
 {
    /*text-transform: uppercase;*/
    transition:
        color 0.15s ease-in-out,
        background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

/* Self Prmotion */
.crm-profile-name-Promotion .crm-container .crm-section .label {
    display: none;
}

.crm-profile-name-Promotion .crm-container .crm-section .content {
    margin-left: 0;
}

/*
#crm-container.crm-public .crm-profile-name-Promotion .crm-container .crm-section.form-item {

}*/

#crm-container.crm-public .crm-section.helprow-post { 
    margin-bottom: 1.2rem;
    margin-top: -5px;    
}

#crm-container.crm-public .crm-section.helprow-post .description{ 
    font-size: 0.9rem;
/*    color:var(--wp--preset--color--lime);*/
    color:var(--wp--preset--color--gray);
    opacity: 0.76;
}
#crm-container, .crm-container p{
    line-height: 1.5;
}

.messages.crm-error #errorList{
    margin-bottom:0.5rem;
}

.crm-container .crm-section .crm-error{
border-radius: 4px;
display: table-cell;
}
:root,
[data-bs-theme="light"] {
    --bs-border-radius: 3px !important;
    --bs-success: var(--wp--preset--color--eabp) !important;
}

.text-bg-success {
    color: #fff !important;
    /*background-color:RGBA(0, 117, 108, 0.8) !important;*/
    background-color: #00756c !important;
}

.alert,
div.card,div.card-header {
    border-radius: var(--bs-border-radius);
}

div.crm-container h6 {
font-size: 1.44rem;
display: inline;
}

.crm-container ol {
    list-style-position: inside;
    padding-left: 0;
}

.crm-container ol li .description{
    display: block;
}
.crm-container ol li::marker {

    color: #cecece;
    font-size: 1.67rem;
    color: #00756b5d;
    font-family: "Gelasio", "Times New Roman", Times, serif;
}

.membership-plans .card {
    /*border: 1px solid var(--wp--preset--color--custom-eabp-green);*/
    border: 1px solid var(--wp--preset--color--green);
    font-size: 0.86rem;
}

.membership-plans .associate .card {
    border: 1px solid var(--wp--preset--color--lime);
}

.membership-plans .associate .card-header h5 {
    color: var(--wp--preset--color--lime);
}

.membership-plans .card-body {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
}

.membership-plans .card li {
    margin-bottom: 0.5rem;
}

.membership-plans .card ul.benefits,
.membership-plans .card ul.conditions,
.membership-plans .card ul.notes,
.membership-plans .card ul.description {
    list-style: none;
    /* disable default bullets */
    padding-left: 0;
}

.membership-plans .card ul.benefits li,
.membership-plans .card ul.conditions {
    padding-left: 1.2em;
    /* adjust spacing as needed */
    text-indent: -1.2em;
    /* move text to the right */
}

.membership-plans .card ul.benefits li:before,
.membership-plans .card ul.conditions li:before {
    padding-right: 5px;
    /* adjust spacing as needed */
}

.membership-plans .card ul.benefits li:before {
    /*content: "•"; */
    /* or any other character you prefer */
    content: "★";
}

.membership-plans .card ul.conditions li:before {
    /*content: ✔ ✓ ☑ •"; */
    /* or any other character you prefer */
    content: "✔";
}

.membership-plans .card ul li:last-child {
    margin-bottom: 0;
}

.membership-plans .card-footer .wp-element-button {
    font-size: 0.8rem;
}

.crm-public-form-item .content textarea {
    width: 100%;
}
.crm-public-form-item fieldset.crm-profile legend {
    display: none;
}
.crm-public-form-item fieldset.crm-profile {
    margin: 0;
    padding: 0;
}

/* Member edit view inside /national-association: keep the same visual
   rhythm as the regular profile page and avoid oversized inherited text. */
.eabp-na-member-edit {
    font-size: 1rem;
    max-width: 860px;
    margin: 0 auto;
}
.eabp-na-member-edit p:first-child {
    margin-bottom: 1.2rem;
}

.crm-contribution-main-form-block #membership,
.crm-contribution-main-form-block .email-5-section,
.crm-not-you-message,
#Main>a {
    display: none;
}

#Main div.crm-block.crm-contribution-main-form-block fieldset {
    border-top: none;
    opacity: 0.9;
}


input.crm-form-text{
    width: 98%;
    box-sizing: border-box;
    display: block; /* Forces it to behave like a textarea */
}

/* The overlay that covers the entire page */
#overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*background: rgba(255, 255, 255, 0.6); /* White with 60% opacity */
    background: #fff;
    display: none; /* Hidden by default */
    z-index: 9999; /* Make sure it’s on top of everything */
    justify-content: center;
    align-items: center;
    opacity: 0.6;
}

/* Spinner (replace 'spinner.gif' with the actual path to your spinner image) */
#spinner {
    width: 154px;
    height: 154px;
    background-image: url('/wp-content/uploads/favicon.png'); /* Your spinner image */
    background-size: cover;
    animation: spin 2s linear infinite;
    transform-style: preserve-3d; /* Ensures 3D transformations are applied */
    transform-origin: center center; /* Makes sure it spins around the center */
}

/* Animation for the spinner */
@keyframes spin {
    /*
    0% { transform: rotateY(0deg)  }
    100% { transform: rotateY(360deg)}
    */
    0% { transform: rotateX(0deg)  }
    25% { transform: rotateX(180deg) rotateY(0deg)  }
    50% { transform: rotateY(180deg) rotateX(180deg)  }
    100% { transform: rotateY(360deg) rotateX('360deg')}
}

.wp-site-blocks .crm-container a,
.wp-site-blocks .crm-container a:link,
.wp-site-blocks .crm-container a:visited {
  color: var(--bs-secondary) !important;
  text-decoration: none;
}


.wp-site-blocks .crm-container a.button,
.wp-site-blocks .crm-container a.button :link,
.wp-site-blocks .crm-container a.button :visited {
  color: #fff !important;
  text-decoration: none;
}

.wp-site-blocks .crm-container a:hover {
  color: var(--wp--preset--color--purple) !important;
  text-decoration: none;
}



/* upload preview - File attachment styling */
.crm-attachment-wrapper {
    margin: 0 0 8px 0;
    background: #f3f6f9;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 3px;
}

.crm-attachment {
    display: flex;
    align-items: flex-start;
    gap: 15px;

    display: flex;
    align-items: center;
    background: #f8f9fa;
    padding: 0.75rem;
    border-radius: 4px;
    border: 1px solid #dee2e6;
    gap: 1rem;
    margin-bottom: 0.5rem;}

.crm-attachment img {
    max-width: 100px;
    max-height: 100px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 3px;
}
.rad3 img{
    border-radius: 3px;
}
.contact_panel{
    clear: both;
}
.crm-attachment-info {
/*    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
*/
    flex: 1;

}

.crm-attachment-name {
    font-weight: 600;
    color: #3e3e3e;
    word-break: break-word;
}

.crm-container .crm-attachment-info a.crm-attachment-link {
    display: block;

    color:var(--wp--preset--color--purple);
    font-size: 0.9em;
    opacity: var(--eabp-opacity);
    transition-duration: 2s;
}

.crm-container .crm-attachment-info a.crm-attachment-link:hover {
    text-decoration: underline;
    opacity: 1;
}

/* For non-image files, add some spacing */
.crm-attachment:not(:has(.crm-attachment img)) .crm-attachment-info {
    padding:
    0 0 0 10px;
      border-left: 1px solid #ddd;
}

.crm-attachment .delete-upload-btn {
    margin-top: 0.4rem;
    border-radius: 3px;
    cursor: pointer;
}

/* Bootstrap sets pointer-events:none on .modal-dialog; CiviCRM's jQuery UI
   dialogs carry that class, which blocks all interaction. Re-enable it. */
.ui-dialog .ui-dialog-content {
    pointer-events: auto;
}

/* CiviCRM Greenwich loads Bootstrap 3 (<span class="caret">); theme Bootstrap 5 also
   draws ::after on .dropdown-toggle — hide the BS5 duplicate inside Civi UI. */
#crm-container .dropdown-toggle::after,
.crm-container .dropdown-toggle::after {
    display: none !important;
}

/* SearchKit: Civi default min-width 86px is too wide; ~48px fits select-all + caret inline. */
#bootstrap-theme .crm-search-display-table > table.table > thead > tr > th.crm-search-result-select {
    min-width: 48px !important;
    white-space: nowrap;
}

#bootstrap-theme .crm-search-display-table td:is(.crm-search-col-type-buttons, .crm-search-col-type-menu) {
    width: 1px;
    white-space: nowrap;
}

/* Secretariat /members SearchKit — contact summary popup (iframe → wp-admin Civi). */
body.page-members .ui-dialog.crm-contact-dialog,
body.page-members .ui-dialog[class*="contact"] {
    width: min(96vw, 1280px) !important;
    max-width: 96vw;
}

body.page-members .ui-dialog .ui-dialog-content {
    padding: 0;
    overflow: hidden;
}

body.page-members .ui-dialog .ui-dialog-content iframe {
    display: block;
    width: 100%;
    min-height: 75vh;
    border: 0;
}

/* ── /national-association page layout ──────────────────────
   Two-column grid built entirely server-side in roles.php. The afform
   shortcode (logo upload + Change Logo button) is placed inside the
   right-hand .eabp-na-page__form wrapper, below the logo image, so
   the Form Builder GUI can stay focused on just the editable field. */
.eabp-na-page {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 1.5rem 2.5rem;
    align-items: start;
    margin-bottom: 1.5rem;
}

.eabp-na-page__member-role {
    color: rgba(0, 0, 0, 0.6);
    font-style: italic;
}

/* NA members roster — mirror Secretariat SearchKit table styling. */
.eabp-na-members-table {
    margin-top: 0.5rem;
    font-size: 0.875rem;
}

.eabp-na-members-table > table.table {
    border: 1px solid #d3dee2;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.07);
    margin-bottom: 0;
    font-size: inherit;
}

.eabp-na-members-table > table.table > thead > tr > th {
    background-color: #fff;
    border-bottom: 2px solid #cfcec3;
    color: #9a9a9a;
    font-weight: 600;
    font-size: 0.8125rem;
    padding: 0.5rem 0.75rem;
    vertical-align: bottom;
}

.eabp-na-members-table > table.table > tbody > tr > td {
    padding: 0.5rem 0.75rem;
    vertical-align: middle;
    font-size: inherit;
}

.eabp-na-members-table__col-id {
    width: 4.5rem;
    white-space: nowrap;
}

.eabp-na-members-table__id,
.eabp-na-members-table__membership {
    color: var(--wp--preset--color--lime);
}

.eabp-na-members-table__col-name {
    min-width: 12rem;
}

.eabp-na-members-table__name {
    color: var(--wp--preset--color--purple);
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.eabp-na-members-table__name .eabp-icon-user {
    color: var(--wp--preset--color--purple);
    flex-shrink: 0;
    opacity: 0.85;
}

.eabp-na-members-table__col-photo {
    width: 3.5rem;
    padding-left: 0.35rem !important;
    padding-right: 0.35rem !important;
}

.eabp-na-members-table__photo {
    display: block;
    width: 48px;
    height: 48px;
    object-fit: cover;
    border: 1px solid #d3dee2;
    border-radius: var(--eabp-border-radius-small, 3px);
}

.eabp-na-members-table td.crm-search-col-type-buttons {
    width: 1px;
    white-space: nowrap;
    text-align: right;
    vertical-align: middle;
}

.eabp-na-members-table .eabp-na-member-edit-link {
    align-items: center;
    background: #fff;
    border: 1px solid #c5ccd3;
    border-radius: var(--eabp-border-radius-small, 3px);
    color: #464354 !important;
    display: inline-flex;
    font-size: 0.75rem;
    font-weight: 500;
    gap: 0.2rem;
    line-height: 1.2;
    margin-left: 0.2rem;
    padding: 0.1rem 0.38rem;
    text-decoration: none;
    vertical-align: middle;
    white-space: nowrap;
}

.eabp-na-members-table .eabp-na-member-edit-link:first-child {
    margin-left: 0;
}

.eabp-na-members-table .eabp-na-member-edit-link:hover {
    background: #f8f9fa;
    border-color: #a8b0b8;
    color: var(--wp--preset--color--purple) !important;
}

.eabp-na-members-table .eabp-na-member-edit-link .eabp-icon-pencil {
    flex-shrink: 0;
    opacity: 0.9;
}

/* Context banner on /national-member and /national-promotion ([eabp_na_member_context]). */
.eabp-na-member-context {
    background: #f8f9fa;
    border: 1px solid #e2e6ea;
    border-radius: var(--eabp-border-radius-small, 3px);
    margin: 0 0 1.25rem;
    padding: 0.65rem 0.85rem;
    font-size: 0.875rem;
}

.eabp-na-member-context__label {
    color: #9a9a9a;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    margin: 0 0 0.45rem;
    text-transform: uppercase;
}

.eabp-na-member-context__body {
    align-items: center;
    display: flex;
    gap: 0.75rem;
}

.eabp-na-member-context__photo {
    border: 1px solid #d3dee2;
    border-radius: var(--eabp-border-radius-small, 3px);
    display: block;
    flex-shrink: 0;
    height: 48px;
    object-fit: cover;
    width: 48px;
}

.eabp-na-member-context__meta {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.eabp-na-member-context__name {
    color: var(--wp--preset--color--purple);
    font-weight: 600;
    line-height: 1.3;
}

.eabp-na-member-context__id {
    color: var(--wp--preset--color--lime);
    font-size: 0.8125rem;
}

/* Fixed-size slot so logos with wildly different aspect ratios (square,
   banner, tall) all occupy the same visual footprint. The image scales
   inside the slot via max-width/max-height + flex centering. */
.eabp-na-page__logo {
    width: 250px;
    max-width: 100%;
    /*aspect-ratio: 25 / 18;*/
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
/* Separator between consecutive NA blocks (only relevant when the user
   is president of more than one National Association — rare). */
.eabp-na-page + .eabp-na-page {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.eabp-na-page__logo img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.eabp-na-page__website {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0.75rem 0 0 0;
    word-break: break-word;
}
.eabp-na-page__website-icon {
    flex: 0 0 auto;
    color: rgba(0, 0, 0, 0.55);
}
.eabp-na-page__website a {
    text-decoration: none;
}
.eabp-na-page__website a:hover {
    text-decoration: underline;
}
/* Single-column fallback on narrow viewports so the logo doesn't get
   crushed next to a long member list. */
@media (max-width: 720px) {
    .eabp-na-page {
        grid-template-columns: 1fr;
    }
}

/* NA president toolbar + CSV import: compact block buttons (roles.php), outline vs filled */
.eabp-na-toolbar.wp-block-buttons,
.eabp-na-import__actions.wp-block-buttons {
    flex-wrap: wrap;
    align-items: center;
}
.eabp-na-toolbar .wp-block-button.my-2,
.eabp-na-import .wp-block-button.my-2 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
}
/* Match compact teal controls (smaller than theme default block buttons). */
.eabp-na-toolbar .wp-block-button .wp-block-button__link,
.eabp-na-import .wp-block-button .wp-block-button__link,
.eabp-main-back-nav .wp-block-button .wp-block-button__link {
    padding: 0.375rem 0.75rem;
    min-height: 0;
    font-size: 0.875rem;
    line-height: 1.35;
}
.eabp-na-toolbar .wp-block-button .wp-block-button__link,
.eabp-na-import .wp-block-button .wp-block-button__link {
    appearance: none;
    -webkit-appearance: none;
    text-decoration: none !important;
    box-sizing: border-box;
    cursor: pointer;
    font-family: inherit;
}
.eabp-na-toolbar .wp-block-button.is-style-outline .wp-element-button,
.eabp-na-import .wp-block-button.is-style-outline .wp-element-button {
    color: var(--wp--preset--color--green);
    background-color: #fff;
    border: 1px solid var(--wp--preset--color--green);
}
.eabp-na-toolbar .wp-block-button.is-style-outline .wp-element-button:hover:not(:disabled),
.eabp-na-import .wp-block-button.is-style-outline .wp-element-button:hover:not(:disabled) {
    color: #fff;
    background-color: var(--wp--preset--color--green);
    border-color: var(--wp--preset--color--green);
    text-decoration: none !important;
}
.eabp-na-toolbar .wp-block-button .wp-element-button:disabled,
.eabp-na-toolbar .wp-block-button .wp-element-button:disabled:hover,
.eabp-na-import .wp-block-button .wp-element-button:disabled,
.eabp-na-import .wp-block-button .wp-element-button:disabled:hover {
    opacity: 0.55;
    cursor: not-allowed;
}
.eabp-na-toolbar .wp-block-button.is-style-outline .wp-element-button:disabled,
.eabp-na-toolbar .wp-block-button.is-style-outline .wp-element-button:disabled:hover,
.eabp-na-import .wp-block-button.is-style-outline .wp-element-button:disabled,
.eabp-na-import .wp-block-button.is-style-outline .wp-element-button:disabled:hover {
    color: var(--wp--preset--color--green);
    background-color: #fff;
    border-color: var(--wp--preset--color--green);
}

