.password-auth-page {
    display: flex;
    justify-content: center;
    padding: 2.5rem 1rem 3rem;
}

.password-auth-content {
    width: 100%;
}

@media (min-width: 40rem) {
    .password-auth-page {
        padding-top: 4rem;
        padding-bottom: 5rem;
    }
}

@media (min-width: 64rem) {
    .password-auth-page {
        padding-top: 4.5rem;
        padding-bottom: 6rem;
    }
}

.team-suggestion-dialog {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    border: 0;
    background: transparent;
}

.team-suggestion-dialog[open] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.team-suggestion-panel {
    width: min(36rem, 100%);
    max-height: 90vh;
    overflow-y: auto;
}

.team-suggestion-dialog::backdrop {
    background: rgb(3 31 73 / 55%);
}

.contact-admin-modal-dialog {
    width: 100%;
    max-width: 700px;
    max-height: calc(100vh - 2rem);
    margin: auto;
    overflow-x: hidden;
    overflow-y: auto;
}

.bg-green-50{
   background-color: rgb(7, 170, 7);
  color: #fff;
  font-size: 16px;
}

.active-membership-panel {
    border-color: #b9e4c8;
    background: linear-gradient(135deg, #f2fbf5 0%, #f8fdf9 100%);
}

.active-membership-icon {
    background-color: #159447;
    color: #fff;
}

.active-membership-details {
    border-color: #d7eee0;
}

.active-membership-details dt {
    color: #53627a;
    font-size: 0.6875rem;
}

.active-membership-details dd {
    margin-top: 0.25rem;
    color: #062b63;
    font-size: 0.75rem;
    font-weight: 700;
}

.active-member-badge {
    background-color: #e7f7ec;
    color: #137a3d;
}

.inactive-member-badge {
    background-color: #eef2f7;
    color: #062b63;
}

.banned-status-panel {
    border-color: #f0b8b8;
    background: linear-gradient(135deg, #fff4f4 0%, #fffafa 100%);
}

.banned-status-icon,
.banned-contact-button {
    background-color: #b42318;
    color: #fff;
}

.banned-contact-button:hover {
    background-color: #912018;
}

.banned-reason {
    max-width: 48rem;
    color: #8f1d18;
    line-height: 1.25rem;
}

.banned-member-badge {
    background-color: #feeceb;
    color: #b42318;
}

.banned-restriction-icon {
    background-color: #feeceb;
    color: #b42318;
    font-weight: 700;
}

.active-stat-card {
    min-width: 0;
    border: 1px solid #eef1f5;
    border-radius: 0.5rem;
    background-color: #fafbfd;
    padding: 1rem 0.75rem;
    text-align: center;
}

.active-stat-card dt {
    color: #53627a;
    font-size: 0.625rem;
    line-height: 1rem;
}

.active-stat-card dd {
    margin-top: 0.375rem;
    color: #159447;
    font-size: 1.25rem;
    font-weight: 700;
}

.active-stat-card .active-stat-date {
    font-size: 0.875rem;
}

.active-empty-state,
.dashboard-help-banner {
    background-color: #fafbfd;
}

.dashboard-help-banner {
    border-color: #dce5f0;
}

.bg-blue-600 { background-color: #2563eb; }
.bg-indigo-600 { background-color: #4f46e5; }
.bg-violet-600 { background-color: #7c3aed; }
.bg-purple-600 { background-color: #9333ea; }
.bg-rose-600 { background-color: #e11d48; }
.bg-red-600 { background-color: #dc2626; }
.bg-orange-600 { background-color: #ea580c; }
.bg-amber-700 { background-color: #b45309; }
.bg-emerald-600 { background-color: #059669; }
.bg-teal-700 { background-color: #0f766e; }
.bg-cyan-700 { background-color: #0e7490; }
.bg-slate-600 { background-color: #475569; }

.profile-success-message {
    border: 1px solid #b9e4c8;
    background-color: #f2fbf5;
    color: #137a3d;
}

.profile-readonly-input {
    cursor: not-allowed;
    background-color: #f6f8fb;
    color: #68758a;
}

.thread-detail-page { overflow-x: clip; }
.thread-detail-page .thread-breadcrumb ol { display:flex; min-width:0; flex-wrap:wrap; align-items:center; gap:.5rem; color:#53627a; font-size:.6875rem; }
.thread-detail-page .thread-breadcrumb a { color:inherit; }
.thread-detail-page .thread-breadcrumb a:hover { color:#f97316; }
.thread-detail-page .thread-breadcrumb li[aria-current="page"] { min-width:0; max-width:100%; overflow:hidden; color:#8290a4; text-overflow:ellipsis; white-space:nowrap; }

/* Backend-managed static pages, based on the root About Us middle-content design. */
.content-page-body { color:#253247; font-size:.8125rem; line-height:1.75rem; }
.content-page-body > * + * { margin-top:1.5rem; }
.content-page-body > section { padding-bottom:1.5rem; }
.content-page-body > section + section { border-top:1px solid #dfe4eb; padding-top:1.5rem; }
.content-page-body h2 { color:#102b4e; font-size:1.25rem; font-weight:700; line-height:1.75rem; }
.content-page-body h3 { color:#102b4e; font-size:1rem; font-weight:700; line-height:1.5rem; }
.content-page-body h4,
.content-page-body strong { color:#102b4e; font-weight:700; }
.content-page-body p + p { margin-top:.5rem; }
.content-page-body ul,
.content-page-body ol { margin-top:1rem; padding-left:1.25rem; }
.content-page-body ul { list-style:disc; }
.content-page-body ol { list-style:decimal; }
.content-page-body li + li { margin-top:.5rem; }
.content-page-body a { color:#f97316; text-decoration:underline; text-underline-offset:2px; }
.content-page-body blockquote { border-left:3px solid #f97316; padding-left:1rem; }
.content-page-body img { height:auto; max-width:100%; border-radius:.75rem; }
.content-page-body table { display:block; max-width:100%; overflow-x:auto; }
.content-page-body th,
.content-page-body td { border:1px solid #dfe4eb; padding:.5rem .75rem; text-align:left; }

.contact-form-container {
    width: calc(100% - 2rem);
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.my-activity-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-width: 0;
}

.my-activity-pagination__summary {
    color: #53627a;
    flex-shrink: 0;
    font-size: 0.6875rem;
}

.my-activity-pagination__summary strong {
    color: #062b63;
    font-weight: 700;
}

.my-activity-pagination__controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.375rem;
    min-width: 0;
}

.my-activity-pagination__button,
.my-activity-pagination__ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.375rem;
    height: 2.375rem;
    flex: 0 0 2.375rem;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    line-height: 1;
}

.my-activity-pagination__button {
    border: 1px solid #e5eaf2;
    background: #fff;
    color: #062b63;
    font-weight: 600;
    transition: border-color 0.15s, background-color 0.15s, color 0.15s;
}

a.my-activity-pagination__button:hover {
    border-color: #a66300;
    background: #fff7e8;
    color: #8f5500;
}

a.my-activity-pagination__button:focus-visible {
    outline: 2px solid #a66300;
    outline-offset: 2px;
}

.my-activity-pagination__button.is-active {
    border-color: #062b63;
    background: #062b63;
    color: #fff;
}

.my-activity-pagination__button.is-disabled {
    border-color: #eef1f5;
    background: #fafbfd;
    color: #a6afbd;
    cursor: not-allowed;
}

.my-activity-pagination__button svg {
    display: block;
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.my-activity-pagination__ellipsis {
    color: #7b879b;
}

@media (max-width: 39.999rem) {
    .my-activity-pagination {
        flex-direction: column;
        align-items: flex-start;
    }

    .my-activity-pagination__summary {
        flex-shrink: 1;
    }

    .my-activity-pagination__controls {
        justify-content: flex-start;
        width: 100%;
    }
}

.header-search {
    position: relative;
    min-width: 0;
}

.header-search__control {
    display: flex;
    width: 100%;
    overflow: hidden;
    border: 1px solid #e5eaf2;
    border-radius: 0.375rem;
    background: #fff;
}

.header-search__control:focus-within {
    border-color: #a66300;
    box-shadow: 0 0 0 2px rgb(166 99 0 / 18%);
}

.header-search__dropdown {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    left: 0;
    z-index: 100;
    max-height: min(24rem, calc(100vh - 8rem));
    overflow-x: hidden;
    overflow-y: auto;
    border: 1px solid #e5eaf2;
    border-radius: 0.5rem;
    background: #fff;
    box-shadow: 0 12px 30px rgb(3 31 73 / 16%);
}

.header-search__dropdown[hidden] {
    display: none;
}

.header-search__result {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-width: 0;
    padding: 0.75rem 0.875rem;
    color: #102d5c;
    transition: background-color 0.15s, color 0.15s;
}

.header-search__result + .header-search__result {
    border-top: 1px solid #eef1f5;
}

.header-search__result:hover,
.header-search__result.is-selected {
    background: #fff7e8;
    color: #8f5500;
}

.header-search__result:focus-visible {
    position: relative;
    outline: 2px solid #a66300;
    outline-offset: -3px;
}

.header-search__result-content {
    display: block;
    min-width: 0;
}

.header-search__result-content strong,
.header-search__meta {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.header-search__result-content strong {
    font-size: 0.75rem;
    font-weight: 600;
}

.header-search__meta {
    margin-top: 0.2rem;
    color: #7b879b;
    font-size: 0.625rem;
}

.header-search__badge {
    flex-shrink: 0;
    border-radius: 9999px;
    background: #edf4ff;
    color: #062b63;
    padding: 0.25rem 0.5rem;
    font-size: 0.5625rem;
    font-weight: 700;
}

.header-search__state {
    padding: 1rem;
    color: #53627a;
    text-align: center;
    font-size: 0.6875rem;
}

.header-search__state.is-error {
    color: #c83232;
}

@media (max-width: 63.999rem) {
    .header-search__dropdown {
        max-height: min(18rem, calc(100vh - 10rem));
    }
}
.thread-detail-page .thread-summary-card { display:grid; gap:1.5rem; align-items:center; padding:1.25rem; border:1px solid #dce1e8; border-radius:.75rem; background:#fff; box-shadow:0 3px 15px rgb(15 35 65 / 7%); }
.thread-detail-page .thread-summary-icon { display:flex; width:5.5rem; height:5.5rem; align-items:center; justify-content:center; overflow:hidden; border-radius:9999px; background:#edf4ff; }
.thread-detail-page .thread-summary-icon img { width:4rem; height:4rem; object-fit:contain; }
.thread-detail-page .thread-summary-copy { min-width:0; }
.thread-detail-page .thread-team-badge { display:inline-flex; padding:.25rem .75rem; border-radius:9999px; background:#e5f1ff; color:#1769b0; font-size:.625rem; font-weight:500; }
.thread-detail-page .thread-summary-copy h1 { margin-top:.75rem; color:#062b63; font-size:1.25rem; font-weight:700; line-height:1.25; overflow-wrap:anywhere; }
.thread-detail-page .thread-description { position:relative; margin-top:.75rem; max-height:5.5rem; overflow:hidden; color:#53627a; font-size:.75rem; line-height:1.5rem; transition:max-height .3s ease; }
.thread-detail-page .thread-description.is-expanded { max-height:100rem; }
.thread-detail-page .thread-description-content > :first-child { margin-top:0; }
.thread-detail-page .thread-description-content > :last-child { margin-bottom:0; }
.thread-detail-page .thread-description-content p { margin:.4rem 0; }
.thread-detail-page .thread-read-more { margin-top:.65rem; color:#0875df; font-size:.75rem; font-weight:600; }
.thread-detail-page .thread-read-more:hover { text-decoration:underline; }
.thread-detail-page .thread-read-more:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.thread-detail-page .thread-stats { display:grid; grid-template-columns:repeat(3,1fr); padding-top:1.25rem; border-top:1px solid #edf0f4; }
.thread-detail-page .thread-stats > div { text-align:center; }
.thread-detail-page .thread-stats > div + div { border-left:1px solid #dce1e8; }
.thread-detail-page .thread-stats img,.thread-detail-page .thread-stats svg { width:1.5rem; height:1.5rem; margin:auto; color:#062b63; }
.thread-detail-page .thread-stats dd { margin-top:.75rem; color:#062b63; font-size:1.25rem; font-weight:700; }
.thread-detail-page .thread-stats dt { margin-top:.25rem; color:#53627a; font-size:.625rem; }
.thread-detail-page .thread-like-stat { position:relative; }
.thread-detail-page .thread-like-stat > a,.thread-detail-page .thread-like-stat > button { display:block; width:100%; color:inherit; text-align:center; }
.thread-detail-page .thread-like-stat > a:hover dt,.thread-detail-page .thread-like-stat > button:hover dt,.thread-detail-page .thread-like-stat > button[aria-pressed="true"] dt { color:#0875df; font-weight:700; }
.thread-detail-page .thread-like-stat > button[aria-pressed="true"] svg { color:#0875df; fill:#e5f1ff; }
.thread-detail-page .thread-like-stat > button:disabled { cursor:not-allowed; opacity:.65; }
.thread-detail-page .thread-like-stat > a:focus-visible,.thread-detail-page .thread-like-stat > button:focus-visible { border-radius:.25rem; outline:2px solid #f97316; outline-offset:3px; }
.thread-detail-page .thread-like-error { position:absolute; top:100%; right:0; left:0; margin-top:.25rem; color:#b42318; font-size:.5625rem; line-height:.75rem; }
.thread-detail-page .thread-replies-panel { margin-top:1rem; padding:1rem; border:1px solid #dce1e8; border-radius:.75rem; background:#fff; box-shadow:0 3px 15px rgb(15 35 65 / 7%); }
.thread-detail-page .thread-replies-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.thread-detail-page .thread-replies-header h2 { color:#062b63; font-size:1.25rem; font-weight:700; }
.thread-detail-page .thread-replies-header label { position:relative; flex-shrink:0; }
.thread-detail-page .thread-replies-header select { height:2.5rem; appearance:none; border:1px solid #dce1e8; border-radius:.375rem; background:#fff; padding:0 2.5rem 0 1rem; color:#062b63; font-size:.75rem; font-weight:600; }
.thread-detail-page .thread-replies-header label img { position:absolute; top:50%; right:.75rem; width:.75rem; transform:translateY(-50%); pointer-events:none; }
.thread-detail-page .thread-reply-list { display:grid; gap:.75rem; margin-top:1rem; }
.thread-detail-page .thread-reply-card { display:grid; grid-template-columns:3rem minmax(0,1fr); gap:1rem; padding:1rem; border:1px solid #e1e5eb; border-radius:.625rem; background:#fff; }
.thread-detail-page .thread-reply-card > img,.thread-detail-page .thread-reply-card > span { width:3rem!important; height:3rem!important; }
.thread-detail-page .thread-reply-body { min-width:0; }
.thread-detail-page .thread-reply-meta { display:flex; align-items:flex-start; justify-content:space-between; gap:.75rem; }
.thread-detail-page .thread-reply-body h3 { color:#062b63; font-size:.8125rem; font-weight:700; }
.thread-detail-page .thread-reply-body time { display:block; margin-top:.15rem; color:#8290a4; font-size:.625rem; }
.thread-detail-page .thread-reply-actions { display:flex; flex-shrink:0; gap:.35rem; }
.thread-detail-page .thread-reply-actions button { border:1px solid #dce1e8; border-radius:.3rem; background:#fff; padding:.25rem .5rem; color:#53627a; font-size:.625rem; font-weight:600; }
.thread-detail-page .thread-reply-actions button:hover { border-color:#062b63; color:#062b63; }.thread-detail-page .thread-reply-actions button[data-delete-reply]:hover { border-color:#b42318; color:#b42318; }
.thread-detail-page .thread-reply-actions button:focus-visible { outline:2px solid #f97316; outline-offset:2px; }
.thread-detail-page .thread-reply-content { margin-top:.65rem; color:#344258; font-size:.75rem; line-height:1.35rem; overflow-wrap:anywhere; }
.thread-detail-page .thread-reply-content p { margin:.45rem 0; }
.thread-detail-page .thread-reply-content ul,.thread-detail-page .thread-reply-content ol { margin:.5rem 0; padding-left:1.4rem; }
.thread-detail-page .thread-reply-content ul { list-style:disc; }.thread-detail-page .thread-reply-content ol { list-style:decimal; }
.thread-detail-page .thread-reply-content blockquote { margin:.65rem 0; padding:.25rem 0 .25rem .75rem; border-left:3px solid #f97316; color:#53627a; }
.thread-detail-page .thread-reply-content a { color:#0875df; font-weight:600; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.thread-detail-page .thread-reply-content a:hover { text-decoration-thickness:2px; }
.thread-detail-page .thread-reply-content a:focus-visible { outline:2px solid currentColor; outline-offset:3px; }
.thread-detail-page .thread-reply-content img { display:block; max-width:100%; height:auto; margin:.75rem 0; border:1px solid #dce1e8; border-radius:.625rem; }
.thread-detail-page .thread-empty-state,.thread-detail-page .thread-request-error { margin:1.25rem 0 .25rem; text-align:center; color:#53627a; font-size:.75rem; }
.thread-detail-page .thread-request-error { color:#b42318; }
.thread-detail-page .thread-load-more-wrap { margin-top:1.25rem; text-align:center; }
.thread-detail-page .thread-load-more-wrap button { display:inline-flex; width:100%; max-width:27.5rem; height:2.75rem; align-items:center; justify-content:center; gap:1.25rem; border:1px dashed rgb(6 43 99 / 35%); border-radius:.375rem; color:#062b63; font-size:.75rem; font-weight:600; }
.thread-detail-page .thread-load-more-wrap button:hover { background:#f6f8fb; }.thread-detail-page .thread-load-more-wrap button:disabled { cursor:wait; opacity:.6; }
.thread-detail-page .thread-load-more-wrap img { width:.75rem; }
.thread-detail-page .thread-reply-panel { margin-top:1.25rem; padding:1.25rem; border:1px solid #bdddf8; border-radius:.75rem; background:#f4faff; }
.thread-detail-page .thread-reply-panel h2 { display:flex; align-items:center; gap:.5rem; color:#062b63; font-size:.875rem; font-weight:700; }
.thread-detail-page .thread-alert { margin-top:1rem; padding:.75rem 1rem; border-radius:.375rem; font-size:.75rem; }
.thread-detail-page .thread-alert-error { border:1px solid #f5b6b6; background:#fff0f0; color:#d52d2d; }.thread-detail-page .thread-alert-warning { border:1px solid #f1d49d; background:#fff9ea; color:#8a5a00; }
.thread-detail-page .thread-alert-success { border:1px solid #b9e4c8; background:#f2fbf5; color:#137a3d; }
.thread-detail-page .thread-state-copy { margin-top:1.5rem; text-align:center; color:#25354a; font-size:.75rem; }
.thread-detail-page .thread-state-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; margin-top:1rem; }
.thread-detail-page .thread-state-actions a,.thread-detail-page .thread-reply-submit button { display:inline-flex; min-width:6rem; height:2.5rem; align-items:center; justify-content:center; border:1px solid rgb(6 43 99 / 35%); border-radius:.375rem; background:#fff; color:#062b63; font-size:.75rem; font-weight:600; }
.thread-detail-page .thread-state-actions a.primary,.thread-detail-page .thread-reply-submit button { border-color:#f97316; background:#f97316; color:#fff; }
.thread-detail-page form[data-reply-form] { margin-top:1rem; }.thread-detail-page .thread-reply-submit { display:flex; justify-content:flex-end; margin-top:1rem; }
.thread-detail-page .thread-reply-submit button { padding:0 1.25rem; }.thread-detail-page .thread-reply-submit button:disabled { cursor:wait; opacity:.65; }
.thread-detail-page .thread-reply-submit button[data-cancel-edit] { margin-right:.5rem; border-color:rgb(6 43 99 / 35%); background:#fff; color:#062b63; }
.thread-detail-page .thread-editor-error { margin-top:.5rem; color:#b42318; font-size:.75rem; }
.thread-detail-page .tox-tinymce { max-width:100%; border-color:#bdd1e4; border-radius:.5rem; }

@media (min-width:40rem) {
  .thread-detail-page .thread-summary-card { padding:1.75rem; }.thread-detail-page .thread-summary-copy h1 { font-size:1.5rem; }
  .thread-detail-page .thread-replies-panel,.thread-detail-page .thread-reply-panel { padding:1.25rem; }
}
@media (min-width:64rem) {
  .thread-detail-page .thread-summary-card { grid-template-columns:7rem minmax(0,1fr) 21.25rem; }.thread-detail-page .thread-summary-icon { width:6.5rem; height:6.5rem; }
  .thread-detail-page .thread-stats { padding-top:0; border-top:0; }
}
@media (max-width:39.99rem) {
  .thread-detail-page .thread-replies-header { align-items:flex-start; flex-direction:column; }.thread-detail-page .thread-replies-header label,.thread-detail-page .thread-replies-header select { width:100%; }
  .thread-detail-page .thread-reply-card { grid-template-columns:2.5rem minmax(0,1fr); gap:.75rem; padding:.875rem; }.thread-detail-page .thread-reply-card > img,.thread-detail-page .thread-reply-card > span { width:2.5rem!important; height:2.5rem!important; }
}

.checkout-page .checkout-payment-image {
  width: auto;
  height: auto;
  max-width: min(100%, 18.5rem);
 
}
