/*
 * ELAB Members — front-end stiilid.
 * Sõltub UI Kit'ist (elab-ui.css), mis pakub design tokenid (--elab-*).
 */

/* ============================================================
 * Nav konteiner — sisse logimata: Sisene/Registreeru nupud
 * ============================================================ */
.elab-members-nav {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
    font-family: var(--elab-font-body);
}

.elab-members-nav--guest .elab-members-nav__login,
.elab-members-nav--guest .elab-members-nav__register {
    padding-inline: var(--elab-space-4);
}

/* ============================================================
 * Nav konteiner — sisse logitud: avatar + nimi trigger
 * ============================================================ */
.elab-members-nav--user {
    position: relative;
}

.elab-members-nav__trigger {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
    padding: var(--elab-space-1) var(--elab-space-2);
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--elab-radius-full);
    color: var(--elab-text);
    font-family: inherit;
    font-size: var(--elab-fs-base);
    cursor: pointer;
    line-height: 1;
    transition: background-color .15s ease, border-color .15s ease;
}

.elab-members-nav__trigger:hover,
.elab-members-nav__trigger[aria-expanded="true"] {
    background: var(--elab-bg-hover);
    border-color: var(--elab-border);
}

.elab-members-nav__trigger:focus-visible {
    outline: none;
    box-shadow: var(--elab-shadow-focus);
}

.elab-members-nav__name {
    font-weight: 600;
}

.elab-members-nav__avatar img,
.elab-members-user-menu__avatar img {
    display: block;
    border-radius: 50%;
}

.elab-members-nav__avatar img {
    width: 36px;
    height: 36px;
}

/* ============================================================
 * Dropdown menüü
 * ============================================================ */
.elab-members-user-menu {
    position: absolute;
    top: calc(100% + var(--elab-space-2));
    right: 0;
    min-width: 240px;
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    box-shadow: var(--elab-shadow-lg);
    z-index: 1000;
    /* overflow ei tohi olla hidden — __settings-btn data-tooltip jääks peitu.
       __list vertikaalne padding (space-2) hoiab hover-tausta ümaratest nurkadest eemal. */
    overflow: visible;
}

.elab-members-user-menu[hidden] {
    display: none;
}

.elab-members-user-menu__header {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3);
    padding: var(--elab-space-4);
    border-bottom: 1px solid var(--elab-border-soft);
}

/* Hammasratta-ikoon header'i paremas servas — kiir-link konto seadetele */
.elab-members-user-menu__settings-btn {
    margin-left: auto;
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--elab-text-muted);
    background: transparent;
    border: 1px solid transparent;
    border-radius: 50%;
    text-decoration: none !important;
    transition: background var(--elab-trans-fast), color var(--elab-trans-fast);
}

.elab-members-user-menu__settings-btn:hover,
.elab-members-user-menu__settings-btn:focus-visible {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
    outline: none;
}
.elab-members-user-menu__settings-btn i { font-size: 18px; line-height: 1; }

/* Sub-link menüüs (Minu ELAB alamkirjed) — pisut sissetõmmatud + väiksem kiri */
.elab-members-user-menu__item--sub .elab-members-user-menu__link {
    padding-left: var(--elab-space-6);
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-sm);
}

.elab-members-user-menu__avatar img {
    width: 48px;
    height: 48px;
}

.elab-members-user-menu__id {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.elab-members-user-menu__name {
    font-weight: 600;
    color: var(--elab-text);
    font-size: var(--elab-fs-md);
    overflow: hidden;
    text-overflow: ellipsis;
}

.elab-members-user-menu__handle {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
    overflow: hidden;
    text-overflow: ellipsis;
}

.elab-members-user-menu__list {
    list-style: none;
    margin: 0;
    padding: var(--elab-space-2) 0;
}

.elab-members-user-menu__item {
    margin: 0;
}

.elab-members-user-menu__link {
    display: block;
    padding: var(--elab-space-2) var(--elab-space-4);
    color: var(--elab-text);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    line-height: 1.4;
    transition: background-color .12s ease;
}

.elab-members-user-menu__link:hover,
.elab-members-user-menu__link:focus-visible {
    background: var(--elab-green-soft2);
    color: var(--elab-text);
    outline: none;
}

.elab-members-user-menu__item--divider {
    margin-top: var(--elab-space-2);
    border-top: 1px solid var(--elab-border-soft);
    padding-top: var(--elab-space-2);
}

.elab-members-user-menu__item--logout {
    margin-top: var(--elab-space-2);
    border-top: 1px solid var(--elab-border-soft);
    padding-top: var(--elab-space-2);
}

.elab-members-user-menu__item--logout .elab-members-user-menu__link {
    color: var(--elab-danger);
}

.elab-members-user-menu__item--logout .elab-members-user-menu__link:hover {
    background: var(--elab-danger-soft);
}

/* ============================================================
 * Modaalide kohandused (Sisene / Registreeru)
 * ============================================================ */
.elab-members-modal .elab-modal__dialog {
    max-width: 460px;
}

.elab-members-modal__notice {
    margin: 0;
    padding: var(--elab-space-4);
    background: var(--elab-warning-soft);
    border: 1px solid var(--elab-warning-border);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text);
    font-size: var(--elab-fs-base);
}

.elab-members-modal__switch {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-base);
}

/* Login-modaali footer kahepoolne — vasakul "Unustasid parooli?", paremal switch. */
.elab-members-modal__footer {
    justify-content: space-between;
}

.elab-members-modal__footer-left {
    display: inline-flex;
    align-items: center;
}

.elab-members-modal__lostpass {
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    font: inherit;
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-modal__lostpass:hover,
.elab-members-modal__lostpass:focus-visible {
    color: var(--elab-text, #1a1a1a);
    outline: none;
    background: transparent !important;
}

main button.elab-members-modal__lostpass,
.elab-members-modal__lostpass {
    background: transparent !important;
}

/* Lost-password vormi intro-tekst (juhend kuidas täita) */
.elab-members-form__intro {
    margin: 0;
    color: var(--elab-text-secondary, #4b5563);
    font-size: var(--elab-fs-sm, 13px);
    line-height: 1.5;
}

/* =========================================================
 * Account-saki subtab-ide ühine kaart + kaks-tulpa layout
 * ========================================================= */
.elab-members-account {
    margin: 0;
}

.elab-members-account .elab-members-subhead {
    margin-bottom: 0;
}

.elab-members-account__card {
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-lg, 12px);
    padding: 24px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

/* Konto-saki vertikaalne rütm: header → info-card → two-col-card */
.elab-members-account {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.elab-members-account__two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}

.elab-members-account__col {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3, 12px);
    min-width: 0;
}

.elab-members-account__col-title {
    margin: 0 0 4px;
    font-size: 16px;
    font-weight: 600;
    color: var(--elab-text, #1a1a1a);
    line-height: 1.3;
}

/* Salvesta nupp viimaseks — full-width row pärast two-col grid'i */
.elab-members-account__actions-row {
    grid-column: 1 / -1;
    margin-top: 16px;
    border-top: 1px solid var(--elab-border, #e5e7eb);
    padding-top: 16px;
}

/* Read-only info — kompaktne, oma kaardis. BeTheme dl/dt/dd borderid maha. */
.elab-members-account__info--inline {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 12px 24px;
    margin: 0;
    padding: 0;
    border: none !important;
}
.elab-members-account__info,
.elab-members-account__info dt,
.elab-members-account__info dd {
    border: none !important;
}

/* =========================================================
 * Profile-saki sektsioonide laiendus — single-value + social
 * ========================================================= */
.elab-members-profile__single-value {
    font-size: var(--elab-fs-base, 14px);
    line-height: 1.6;
    color: var(--elab-text, #1a1a1a);
}

.elab-members-profile__single-value a {
    color: var(--elab-blue, #2563eb);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-profile__single-value p {
    margin: 0 0 8px;
}

.elab-members-profile__single-value p:last-child {
    margin-bottom: 0;
}

/* Social-lingid — iga rida "[Nimi] on Facebookis: [ikoon] handle" */
.elab-ui ul.elab-members-profile__social-list,
main ul.elab-members-profile__social-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.elab-members-profile__social-list li {
    margin: 0;
    padding: 0;
}

.elab-members-profile__social-prefix {
    color: var(--elab-text-secondary, #4b5563);
}

.elab-members-profile__social-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    font-size: var(--elab-fs-base, 14px);
    line-height: 1.5;
    color: var(--elab-text-secondary, #4b5563);
}

.elab-members-profile__social-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--elab-blue, #2563eb);
    text-decoration: none;
    font-weight: 600;
}

.elab-members-profile__social-link:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-profile__social-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

/* =========================================================
 * Privaatsuse subtabid — sektsioonide loend ühes kaardis
 * ========================================================= */
.elab-members-privacy {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 0;
}

.elab-members-privacy .elab-members-subhead {
    margin-bottom: 0;
}

.elab-members-privacy__list {
    display: flex;
    flex-direction: column;
}

.elab-members-privacy__row {
    display: grid;
    grid-template-columns: 1fr 200px;
    gap: 16px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid var(--elab-border, #e5e7eb);
}

.elab-members-privacy__row:first-child {
    padding-top: 0;
}

.elab-members-privacy__row:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.elab-members-privacy__row-info {
    min-width: 0;
}

.elab-members-privacy__row-label {
    font-size: var(--elab-fs-base, 14px);
    font-weight: 600;
    color: var(--elab-text, #1a1a1a);
    line-height: 1.3;
}

.elab-members-privacy__row-desc {
    margin-top: 4px;
    font-size: var(--elab-fs-sm, 13px);
    color: var(--elab-text-muted, #6b7280);
    line-height: 1.4;
}

.elab-members-privacy__row-control {
    min-width: 0;
}

@media (max-width: 600px) {
    .elab-members-privacy__row {
        grid-template-columns: 1fr;
        gap: 8px;
    }
}

.elab-members-account__info--inline dt {
    margin: 0;
    font-size: var(--elab-fs-sm, 13px);
    color: var(--elab-text-muted, #6b7280);
    font-weight: 500;
}

.elab-members-account__info--inline dd {
    margin: 2px 0 0;
    font-size: var(--elab-fs-base, 14px);
    color: var(--elab-text, #1a1a1a);
    font-weight: 600;
}

@media (max-width: 900px) {
    .elab-members-account__two-col {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    .elab-members-account__card {
        padding: 16px;
    }
}

/* Flatpickr — kuu-valija kõrval olev aasta numInputWrapper jääb default
 * `display: inline-block`-iga peidule. `body` prefix lisab specificity'i,
 * et override flatpickr.min.css'i samanimelist reeglit. */
body .flatpickr-current-month {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Kuu-select vasakul (default), aasta-input paremas servas */
body .flatpickr-current-month select.flatpickr-monthDropdown-months {
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: 4px;
    padding: 0 4px;
    height: 24px;
    font-size: 16px;
    background-color: transparent;
}
body .flatpickr-current-month .numInputWrapper {
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: 4px;
    padding: 0 2px;
    background-color: transparent;
    text-align: left;
    margin-left: auto;
}

/* Flatpickr aasta number-input — BeTheme global input-stiil peidab selle.
 * Force nähtavale + UI Kit'iga ühilduv stiil. */
body .flatpickr-current-month .numInputWrapper input.cur-year {
    display: inline-block !important;
    width: 50px !important;
    height: auto !important;
    padding: 2px 4px 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: inherit !important;
    font-size: 16px !important;
    font-weight: inherit !important;
    line-height: 1.2 !important;
    text-align: left !important;
    box-shadow: none !important;
    -moz-appearance: textfield;
    opacity: 1 !important;
    visibility: visible !important;
}
body .flatpickr-current-month .numInputWrapper input.cur-year::-webkit-outer-spin-button,
body .flatpickr-current-month .numInputWrapper input.cur-year::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
body .flatpickr-current-month .numInputWrapper input.cur-year:focus {
    outline: none !important;
    border: 0 !important;
}

/* Flatpickr altInput peab matchima meie vormi-input stiili */
main .flatpickr-input.elab-members-form__input + input.flatpickr-input,
.elab-members-modal .flatpickr-input.elab-members-form__input + input.flatpickr-input,
.flatpickr-input.elab-members-form__input + input.flatpickr-input {
    width: 100%;
    padding: 10px 12px !important;
    font-size: var(--elab-fs-base, 14px);
    line-height: 1.4;
    color: var(--elab-text, #1a1a1a);
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border, #e5e7eb) !important;
    border-radius: var(--elab-radius-md, 8px) !important;
    box-sizing: border-box;
    height: auto !important;
}
main .flatpickr-input.elab-members-form__input + input.flatpickr-input:focus,
.flatpickr-input.elab-members-form__input + input.flatpickr-input:focus {
    outline: none;
    border-color: var(--elab-blue, #2563eb) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important;
}

/* =========================================================
 * Parooli-taastamise standalone page (/parooli-taastamine)
 * ========================================================= */
.elab-members-page-wrap {
    padding: 40px 16px;
    min-height: 60vh;
    background: var(--elab-bg-soft, #f9fafb);
}

.elab-members-page {
    max-width: 480px;
    margin: 0 auto;
}

.elab-members-page__card {
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border, #e5e7eb);
    border-radius: var(--elab-radius-lg, 12px);
    padding: 32px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3, 12px);
}

.elab-members-page__header {
    text-align: center;
    margin-bottom: var(--elab-space-2, 8px);
}

.elab-members-page__title {
    margin: 0;
    font-size: 22px;
    line-height: 1.3;
    color: var(--elab-text, #1a1a1a);
}

.elab-members-page__help {
    margin: var(--elab-space-3, 12px) 0 0;
    text-align: center;
}

@media (max-width: 480px) {
    .elab-members-page-wrap { padding: 24px 12px; }
    .elab-members-page__card { padding: 20px; }
}

.elab-members-modal__switch-btn {
    background: transparent;
    border: 0;
    padding: 0;
    color: var(--elab-green-dark);
    font: inherit;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-modal__switch-btn:hover,
.elab-members-modal__switch-btn:focus-visible {
    color: var(--elab-green-darker);
    outline: none;
    background: transparent !important;
}

main button.elab-members-modal__switch-btn,
.elab-members-modal__switch-btn {
    background: transparent !important;
}

/* ============================================================
 * Dashboard — vasak user-card + parem tile grid
 * ============================================================ */
.elab-members-dashboard {
    display: grid;
    grid-template-columns: minmax(0, 280px) minmax(0, 1fr);
    gap: var(--elab-space-6);
    align-items: start;
    margin-block: var(--elab-space-6);
    color: var(--elab-text);
}

@media (max-width: 768px) {
    .elab-members-dashboard {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* --- Sidebar / user card --- */

.elab-members-dashboard__user-card {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-6);
    text-align: center;
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-dashboard__avatar {
    margin-bottom: var(--elab-space-4);
}

.elab-members-dashboard__avatar img {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    display: inline-block;
    border: 3px solid var(--elab-bg);
    box-shadow: var(--elab-shadow-md);
}

.elab-members-dashboard__name {
    margin: 0 0 var(--elab-space-1);
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
    line-height: 1.2;
}

.elab-members-dashboard__handle {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
    margin-bottom: var(--elab-space-3);
}

.elab-members-dashboard__meta {
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-sm);
    margin-bottom: var(--elab-space-4);
}

.elab-members-dashboard__actions {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2);
}

/* --- Main / heading --- */

.elab-members-dashboard__heading {
    margin-bottom: var(--elab-space-5);
}

.elab-members-dashboard__heading h1 {
    margin: 0 0 var(--elab-space-2);
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
}

.elab-members-dashboard__lead {
    margin: 0;
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-md);
}

/* --- Tiles grid --- */

main .elab-members-dashboard__tiles,
.elab-members-dashboard__tiles {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: var(--elab-space-4);
    align-items: stretch;
}

main .elab-members-tile,
.elab-members-tile {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3);
    padding: 20px var(--elab-space-5);
    min-height: 96px;
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    box-shadow: var(--elab-shadow-sm);
    color: var(--elab-text);
    text-decoration: none;
    transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    box-sizing: border-box;
}


.elab-members-tile--has-link {
    cursor: pointer;
}

.elab-members-tile--has-link:hover,
.elab-members-tile--has-link:focus-visible {
    transform: translateY(-2px);
    border-color: var(--elab-green);
    box-shadow: var(--elab-shadow-md);
    outline: none;
}

.elab-members-tile__icon {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: var(--elab-radius-md);
    background: var(--elab-green-soft);
    color: var(--elab-green-dark);
    display: flex;
    align-items: center;
    justify-content: center;
}

.elab-members-icon {
    width: 22px;
    height: 22px;
}

.elab-members-tile__body {
    flex: 1 1 auto;
    min-width: 0;
}

.elab-members-tile__count {
    font-family: var(--elab-font-display);
    font-size: 24px;
    line-height: 1.1;
    font-weight: 600;
    color: var(--elab-text);
}

.elab-members-tile__label {
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-sm);
    margin-top: 2px;
}

.elab-members-tile__arrow {
    flex: 0 0 auto;
    color: var(--elab-text-soft);
    font-size: var(--elab-fs-lg);
    transition: color .15s ease, transform .15s ease;
}

.elab-members-tile--has-link:hover .elab-members-tile__arrow {
    color: var(--elab-green);
    transform: translateX(2px);
}

/* --- Guest variant --- */

.elab-members-dashboard--guest {
    grid-template-columns: minmax(0, 1fr);
    place-items: center;
    text-align: center;
}

.elab-members-dashboard__guest-card {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    max-width: 520px;
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-dashboard__guest-card h2 {
    margin: 0 0 var(--elab-space-3);
    font-family: var(--elab-font-display);
}

.elab-members-dashboard__guest-card p {
    color: var(--elab-text-secondary);
    margin: 0 0 var(--elab-space-5);
}

.elab-members-dashboard__guest-actions {
    display: inline-flex;
    gap: var(--elab-space-3);
    justify-content: center;
}

/* ============================================================
 * Profiili leht — banner + avatar + sektsiooni-kaardid
 * ============================================================ */
.elab-members-profile {
    margin-block: var(--elab-space-6);
    color: var(--elab-text);
}

/* --- Header (banner + identity + tabs) --- */

/* Tume CPT-hero: cover-foto tuhmilt taustal + tume gradient overlay,
 * avatar + nimi + statistika valgena peal. */
.elab-members-profile__header {
    position: relative;
    border-radius: var(--elab-radius-lg);
    overflow: hidden;
    margin-bottom: var(--elab-space-5);
    background: #1b1714;
    color: #fff;
    box-shadow: var(--elab-shadow-sm);
    isolation: isolate;
}

/* Foto-kiht: default banner; cover-pilt antakse inline background-image'na.
 * z-index puudub teadlikult (jääb auto), et overlay (::after) jääks PEALE,
 * aga cover-muutmise nupp (z-index 3) jääks overlay'st kõrgemale. */
.elab-members-profile__banner {
    position: absolute;
    inset: 0;
    background-color: #1b1714;
    background-image: url('../img/profile-banner-default.jpg');
    background-size: cover;
    background-position: center;
}

.elab-members-profile__banner--empty {
    background-image: none;
}

/* Tume gradient loetavuse jaoks (sõltumatu cover-pildi inline-stiilist). */
.elab-members-profile__header::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(155deg, rgba(20, 18, 16, .35) 0%, rgba(20, 18, 16, .84) 72%);
    pointer-events: none;
}

.elab-members-profile__identity {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: var(--elab-space-5);
    padding: var(--elab-space-7) var(--elab-space-6) var(--elab-space-4);
}

.elab-members-profile__avatar {
    flex: 0 0 auto;
    position: relative;
}

.elab-members-profile__avatar img {
    width: 112px;
    height: 112px;
    border-radius: 50%;
    border: 4px solid rgba(255, 255, 255, .92);
    box-shadow: var(--elab-shadow-md);
    display: block;
    background: var(--elab-bg);
}

/* === Cover/avatar muutmise nupud (omanikule, Faas 4.0) ============= */

/* Cover-banner peal: paremas alumises nurgas. Hover'iga ilmub label. */
.elab-members-profile__media-edit {
    position: absolute;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    border: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: background var(--elab-trans-fast), opacity var(--elab-trans-fast);
}

.elab-members-profile__media-edit:hover {
    background: rgba(0, 0, 0, 0.78);
}

.elab-members-profile__media-edit:focus-visible {
    outline: 2px solid var(--elab-blue);
    outline-offset: 2px;
}

.elab-members-profile__media-edit:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Cover-nupp paremas ÜLEMISES nurkas (alumine kaetud `__identity` overlap'iga,
 * `margin-top: -80px`). Z-index 3 (kõrgemal kui identity z-index 2). */
.elab-members-profile__media-edit--cover {
    right: var(--elab-space-3);
    top: var(--elab-space-3);
    padding: 8px 12px;
    border-radius: var(--elab-radius-md);
    font-size: var(--elab-fs-sm);
    font-weight: 500;
    z-index: 3;
}

.elab-members-profile__media-edit-label {
    line-height: 1;
}

/* Avatar-nupp avatari paremas alumises ringikujuline */
.elab-members-profile__media-edit--avatar {
    right: 4px;
    bottom: 4px;
    width: 38px;
    height: 38px;
    padding: 0;
    border-radius: 50%;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.elab-members-profile__name-block {
    min-width: 0;
}

.elab-members-profile__name {
    margin: 0 0 var(--elab-space-1);
    font-family: var(--elab-font-display);
    font-size: 32px;
    line-height: 1.1;
    color: #fff;
}

.elab-members-profile__meta {
    color: rgba(255, 255, 255, .8);
    font-size: var(--elab-fs-sm);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.elab-members-profile__handle {
    font-weight: 600;
    color: #fff;
}

.elab-members-profile__meta-sep {
    opacity: .5;
}

/* Statistika-rida hero all */
.elab-members-profile__stats {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: var(--elab-space-7);
    padding: 0 var(--elab-space-6) var(--elab-space-6);
}

.elab-members-profile__stat {
    line-height: 1.1;
}

.elab-members-profile__stat-n {
    font-family: var(--elab-font-display);
    font-size: 26px;
    font-weight: 700;
    color: #fff;
}

.elab-members-profile__stat-l {
    margin-top: 3px;
    font-size: 12px;
    color: rgba(255, 255, 255, .7);
}

/* Tabid hero alaribal */
.elab-members-profile__tabs {
    position: relative;
    z-index: 2;
    display: flex;
    gap: var(--elab-space-6);
    padding: 0 var(--elab-space-6);
    background: rgba(255, 255, 255, .05);
    border-top: 1px solid rgba(255, 255, 255, .12);
}

.elab-members-profile__tab {
    display: inline-block;
    padding: var(--elab-space-3) 0;
    color: rgba(255, 255, 255, .72);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    font-weight: 500;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: color .15s ease, border-color .15s ease;
}

a.elab-members-profile__tab:hover {
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, .4);
}

.elab-members-profile__tab--active {
    color: #fff;
    border-bottom-color: var(--elab-green);
    font-weight: 600;
}

@media (max-width: 640px) {
    .elab-members-profile__identity {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding-top: var(--elab-space-6);
    }
    .elab-members-profile__meta {
        justify-content: center;
    }
    .elab-members-profile__avatar img {
        width: 100px;
        height: 100px;
    }
    .elab-members-profile__name {
        font-size: 24px;
    }
    .elab-members-profile__stats {
        gap: var(--elab-space-5);
        justify-content: center;
        text-align: center;
    }
    .elab-members-profile__tabs {
        justify-content: flex-start;
        overflow-x: auto;
    }
}

/* --- Body (sektsioonid) --- */

.elab-members-profile__body {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

/* Profiili-esilehe kaheveeruline layout (timeline+nimekirjad | tutvustus) */
.elab-members-pgrid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: var(--elab-space-5);
    align-items: start;
}

.elab-members-pgrid__main {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
    min-width: 0;
}

.elab-members-pgrid__aside {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
    min-width: 0;
}

@media (max-width: 900px) {
    .elab-members-pgrid {
        grid-template-columns: 1fr;
    }
}

/* Avalikud nimekirjad — kaardigrid */
.elab-members-pubcoll__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--elab-space-3);
}

@media (max-width: 520px) {
    .elab-members-pubcoll__grid {
        grid-template-columns: 1fr;
    }
}

.elab-members-coll {
    display: block;
    padding: var(--elab-space-4);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-md);
    background: var(--elab-bg);
    text-decoration: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.elab-members-coll:hover {
    border-color: var(--elab-green);
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-coll__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-base);
    line-height: 1.3;
    color: var(--elab-text);
}

.elab-members-coll__title small {
    font-weight: 400;
    color: var(--elab-text-muted);
}

.elab-members-coll__meta {
    margin-top: var(--elab-space-1);
    font-size: 12px;
    color: var(--elab-text-muted);
}

.elab-members-profile__section {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-5) var(--elab-space-6);
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-profile__section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--elab-space-3);
    padding-bottom: var(--elab-space-3);
    margin-bottom: var(--elab-space-4);
    border-bottom: 1px solid var(--elab-border-soft);
}

.elab-members-profile__section-title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
    line-height: 1.2;
}

.elab-members-profile__rows {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: var(--elab-space-3) var(--elab-space-4);
    margin: 0;
}

@media (max-width: 480px) {
    .elab-members-profile__rows {
        grid-template-columns: 1fr;
        gap: var(--elab-space-2);
    }
    .elab-members-profile__row {
        display: block;
    }
}

.elab-members-profile__row {
    display: contents;
}

.elab-members-profile__row-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-base);
    margin: 0;
}

.elab-members-profile__row-note {
    color: var(--elab-text-faint, #9ca3af);
    font-size: 12px;
    margin-left: 4px;
    font-weight: 400;
}

.elab-members-profile__row-value {
    color: var(--elab-text);
    font-size: var(--elab-fs-base);
    margin: 0;
    word-break: break-word;
}

.elab-members-profile__row-empty {
    color: var(--elab-text-soft);
}

.elab-members-profile__empty {
    color: var(--elab-text-secondary);
    margin: 0;
    font-style: italic;
}

/* --- Missing / not-found --- */

.elab-members-profile--missing {
    display: flex;
    justify-content: center;
}

.elab-members-profile__missing-card {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    max-width: 520px;
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-profile__missing-card h2 {
    margin: 0 0 var(--elab-space-3);
    font-family: var(--elab-font-display);
}

.elab-members-profile__missing-card p {
    color: var(--elab-text-secondary);
    margin: 0 0 var(--elab-space-4);
}

/* ============================================================
 * Profiili subtab nav (Ülevaade | Arvustused | Hinnangud | ...)
 * ============================================================ */
.elab-members-profile__subtabs {
    display: flex;
    flex-wrap: wrap;
    gap: var(--elab-space-2) var(--elab-space-4);
    margin-bottom: var(--elab-space-5);
    padding: var(--elab-space-3) var(--elab-space-4);
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-profile__subtab {
    display: inline-block;
    padding: var(--elab-space-1) var(--elab-space-3);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    font-weight: 500;
    border-radius: var(--elab-radius-full);
    transition: background-color .12s ease, color .12s ease;
}

.elab-members-profile__subtab:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-profile__subtab--active {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
}

.elab-members-profile__subtab--active:hover {
    background: var(--elab-green-dark);
    color: var(--elab-text-inverse);
}

/* ============================================================
 * Arvustused alamleht
 * ============================================================ */
.elab-members-reviews {
    color: var(--elab-text);
}

.elab-members-reviews__flash {
    background: var(--elab-green-soft);
    border: 1px solid var(--elab-green);
    color: var(--elab-green-darker);
    padding: var(--elab-space-3) var(--elab-space-4);
    border-radius: var(--elab-radius-md);
    margin-bottom: var(--elab-space-4);
}

.elab-members-reviews__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-4);
}

.elab-members-reviews__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
}

/* Filter-vorm hoiab otsingut + sorteerimist samal real header'is. */
.elab-members-reviews__filter {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    margin: 0;
}

.elab-members-reviews__search {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
    position: relative;
}

.elab-members-reviews__sort {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
	margin-bottom: 0;
}

.elab-members-reviews__sort-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-reviews__sort-select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    color: var(--elab-text);
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-reviews__sort-select:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.18) !important;
}

/* !important väärtused on tahtlikud — vajalikud BeTheme'i default input stiili
   ülekirjutamiseks. Kõrgus 38px matchib otsingu nupu kõrgust. */
.elab-members-reviews__search input.elab-members-reviews__search-input {
    margin: 0 !important;
    padding: 6px 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    min-width: 240px;
    height: 38px !important;
    line-height: 1.4 !important;
    background: var(--elab-bg-elevated) !important;
    color: var(--elab-text);
    box-shadow: none !important;
}

.elab-members-reviews__search input.elab-members-reviews__search-input:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.18) !important;
}

/* Otsingu nupp — ühildatud elab-ai-search stiiliga */
.elab-members-reviews__search .elab-btn {
    height: 38px;
    margin: 0;
    padding: 0 14px;
    border: none;
    border-radius: 8px;
    background: var(--elab-dark-blue);
    color: #fff;
    font-weight: 500;
}

.elab-members-reviews__search .elab-btn:hover,
.elab-members-reviews__search .elab-btn:focus {
    background: var(--elab-dark-blue-hover);
    color: #fff;
    box-shadow: none;
    outline: none;
}

.elab-members-reviews__search-clear {
    position: absolute;
    right: 88px;
    color: var(--elab-text-muted);
    font-size: 18px;
    line-height: 1;
    text-decoration: none;
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.elab-members-reviews__search-clear:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-reviews__empty {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    color: var(--elab-text-secondary);
    box-shadow: var(--elab-shadow-sm);
}

/* Loendi reset — teemi/BeTheme bullet- ja indent-vaiketingimuste eemaldamine. */
.elab-members-reviews__list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-reviews__list > li {
    list-style: none !important;
}

.elab-members-reviews__list > li::before,
.elab-members-reviews__list > li::marker {
    content: none !important;
    list-style: none !important;
}

/* Kaardi visuaal ja layout — sama element kui list-item, kogu kujundus ühes plokis,
   et vältida vastuolulisi reegleid mitmes kohas. */
.elab-members-reviews__list > li.elab-members-reviews__item {
    margin: 0;
    padding: 20px;
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    box-shadow: var(--elab-shadow-sm);
    display: grid;
    grid-template-columns: 96px 1fr;
    gap: var(--elab-space-5);
    transition: box-shadow .15s ease;
}

.elab-members-reviews__list > li.elab-members-reviews__item:hover {
    box-shadow: var(--elab-shadow-md);
}

.elab-members-reviews__thumb {
    flex: 0 0 auto;
    width: 96px;
    height: 144px;
    border-radius: var(--elab-radius-md);
    overflow: hidden;
    background: var(--elab-bg-soft);
    display: block;
}

.elab-members-reviews__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.elab-members-reviews__content {
    min-width: 0;
}

.elab-members-reviews__item-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-1);
    flex-wrap: wrap;
}

/* Star SVG — ühisalt kasutatav (lavastuse rating + kasutaja rating) */
.elab-members-reviews__star {
    color: var(--elab-green);
    flex: 0 0 auto;
}

.elab-members-reviews__rating-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--elab-text);
    font-weight: 600;
    font-size: var(--elab-fs-lg);
	background: var(--elab-green-soft);
    padding: 2px 4px;
    border-radius: 8px;
}

.elab-members-reviews__user-rating {
    margin: var(--elab-space-2) 0;
    color: var(--elab-text);
    font-size: var(--elab-fs-base);
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}

.elab-members-reviews__user-rating-stars {
    color: var(--elab-text);
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 2px;
	font-family: var(--elab-font-display);
}

.elab-members-reviews__user-rating-stars small {
    color: var(--elab-text-muted);
    font-size: 0.85em;
    font-weight: 500;
}

.elab-members-reviews__user-rating-title {
    color: var(--elab-text);
    font-weight: 600;
}

.elab-members-reviews__meta-sep {
    color: var(--elab-text-soft);
    margin: 0 4px;
}

.elab-members-reviews__read-more {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin-top: var(--elab-space-2);
    color: var(--elab-green-dark) !important;
    text-decoration: none;
    font-weight: 500;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    cursor: pointer;
    display: inline-block;
    box-shadow: none !important;
}

.elab-members-reviews__read-more:hover,
.elab-members-reviews__read-more:focus-visible {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--elab-green-darker) !important;
    text-decoration: underline;
    outline: none;
    box-shadow: none !important;
}

.elab-members-reviews__item-title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-2xl);
    line-height: 1.2;
    display: flex;
    align-items: center;
    gap: var(--elab-space-2);
    flex-wrap: wrap;
}

.elab-members-reviews__item-title-link {
    color: var(--elab-text);
    text-decoration: none;
}

.elab-members-reviews__item-title-link:hover {
    color: var(--elab-green-dark);
}

.elab-members-reviews__item-meta {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
    flex: 0 0 auto;
}

.elab-members-reviews__item-meta a {
    color: inherit;
    text-decoration: none;
}

.elab-members-reviews__item-meta a:hover {
    color: var(--elab-text);
}

.elab-members-reviews__item-body {
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-base);
    line-height: 1.55;
    margin-top: var(--elab-space-2);
}

.elab-members-reviews__item-body-text {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.elab-members-reviews__item--expanded .elab-members-reviews__item-body-text {
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
}

.elab-members-reviews__item-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--elab-space-3);
    flex-wrap: wrap;
    margin-top: var(--elab-space-3);
    padding-top: var(--elab-space-2);
    border-top: 1px solid var(--elab-border-soft);
}

.elab-members-reviews__vote {
    margin: 0;
}

.elab-members-reviews__delete-form {
    margin: 0;
    margin-left: auto;
}

.elab-members-reviews__delete-btn {
    background: transparent;
    border: 0;
    padding: 0;
    color: var(--elab-danger);
    font: inherit;
    font-size: var(--elab-fs-sm);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-reviews__delete-btn:hover {
    color: #8b1c1c;
}

.elab-members-reviews__pagination {
    display: flex;
    justify-content: center;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-5);
    flex-wrap: wrap;
}

.elab-members-reviews__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 var(--elab-space-3);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    border: 1px solid var(--elab-border);
    background: var(--elab-bg-elevated);
}

.elab-members-reviews__pagination .page-numbers:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-reviews__pagination .page-numbers.current {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}

.elab-members-reviews__pagination .page-numbers.dots {
    border: 0;
    background: transparent;
}

/* ============================================================
 * Hinnangud — Minu ELAB > Hinnangud (Faas 4.2)
 * Kasutab jagatud .elab-production-card komponenti igal real.
 * ============================================================ */

.elab-members-ratings {
    margin: 0 0 var(--elab-space-5);
}

.elab-members-ratings__flash {
    margin-bottom: var(--elab-space-4);
    padding: var(--elab-space-3) var(--elab-space-4);
    background: var(--elab-success-soft, var(--elab-green-soft2));
    border: 1px solid var(--elab-green-soft);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text);
}

.elab-members-ratings__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-4);
}

.elab-members-ratings__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
}

.elab-members-ratings__filter {
    margin: 0;
}

.elab-members-ratings__sort {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
}

.elab-members-ratings__sort-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-ratings__sort-select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    color: var(--elab-text);
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-ratings__sort-select:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.18) !important;
}

.elab-members-ratings__empty {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    color: var(--elab-text-muted);
}

.elab-members-ratings__list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-ratings__list > li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elab-members-ratings__list > li::marker,
.elab-members-ratings__list > li::before {
    content: none !important;
    display: none !important;
}

.elab-members-ratings__item {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2);
}

.elab-members-ratings__item-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--elab-space-3);
    flex-wrap: wrap;
    padding: 0 var(--elab-space-5);
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-ratings__date {
    color: var(--elab-text-muted);
}

.elab-members-ratings__delete-form {
    margin: 0;
}

.elab-members-ratings__delete-btn {
    background: transparent;
    border: 0;
    padding: 0;
    color: var(--elab-danger);
    font: inherit;
    font-size: var(--elab-fs-sm);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-ratings__delete-btn:hover {
    color: #8b1c1c;
}

.elab-members-ratings__pagination {
    display: flex;
    justify-content: center;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-5);
    flex-wrap: wrap;
}

.elab-members-ratings__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 var(--elab-space-3);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    border: 1px solid var(--elab-border);
    background: var(--elab-bg-elevated);
}

.elab-members-ratings__pagination .page-numbers:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-ratings__pagination .page-numbers.current {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}

.elab-members-ratings__pagination .page-numbers.dots {
    border: 0;
    background: transparent;
}

/* === Activities (Tegevused) subtab — Faas 4.5a === */

.elab-members-activities {
    margin-top: 0; /* __subtabs juba annab alumise margini, väldime topelt-vahet */
    margin-bottom: var(--elab-space-5);
}

.elab-members-activities__flash {
    margin-bottom: var(--elab-space-4);
    padding: var(--elab-space-3) var(--elab-space-4);
    background: var(--elab-success-soft, var(--elab-green-soft2));
    border: 1px solid var(--elab-green-soft);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text);
}

/* Segment pillid (Nähtud · Plaksutatud · ...) */
.elab-members-activities__segments {
    display: flex;
    flex-wrap: wrap;
    gap: var(--elab-space-2);
    margin-bottom: var(--elab-space-4);
}

.elab-members-activities__segment {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 var(--elab-space-4);
    border-radius: 999px;
    background: var(--elab-bg-elevated);
    color: var(--elab-text-secondary);
    text-decoration: none !important;
    font-size: var(--elab-fs-sm);
    font-weight: var(--elab-fw-medium);
    border: 1px solid var(--elab-border);
    transition: background var(--elab-trans-base), color var(--elab-trans-base), border-color var(--elab-trans-base);
}

.elab-members-activities__segment:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-activities__segment.is-active {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}

.elab-members-activities__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-4);
}

.elab-members-activities__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
}

.elab-members-activities__filter {
    margin: 0;
}

.elab-members-activities__sort {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
}

.elab-members-activities__sort-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-activities__sort-select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    color: var(--elab-text);
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-activities__sort-select:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.18) !important;
}

.elab-members-activities__empty {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    color: var(--elab-text-muted);
}

.elab-members-activities__list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-activities__list > li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elab-members-activities__list > li::marker,
.elab-members-activities__list > li::before {
    content: none !important;
    display: none !important;
}

.elab-members-activities__item {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2);
}

.elab-members-activities__date {
    color: var(--elab-text-muted);
}

.elab-members-activities__delete-form {
    margin: 0;
}

.elab-members-activities__delete-btn {
    background: transparent;
    border: 0;
    padding: 0;
    color: var(--elab-danger);
    font: inherit;
    font-size: var(--elab-fs-sm);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-activities__delete-btn:hover {
    color: #8b1c1c;
}

.elab-members-activities__pagination {
    display: flex;
    justify-content: center;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-5);
    flex-wrap: wrap;
}

.elab-members-activities__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 var(--elab-space-3);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    border: 1px solid var(--elab-border);
    background: var(--elab-bg-elevated);
}

.elab-members-activities__pagination .page-numbers:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-activities__pagination .page-numbers.current {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}

.elab-members-activities__pagination .page-numbers.dots {
    border: 0;
    background: transparent;
}


/* === Nimekirjad subtab — Faas 4.3a (loend) ============================ */

.elab-members-lists {
    margin: 0 0 var(--elab-space-5);
}

.elab-members-lists__error {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-6);
    color: var(--elab-text-muted);
    text-align: center;
}

.elab-members-lists__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-4);
}

.elab-members-lists__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
}

.elab-members-lists__filter { margin: 0; }

.elab-members-lists__sort {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
}

.elab-members-lists__sort-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-lists__sort-select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    color: var(--elab-text);
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-lists__empty {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    color: var(--elab-text-muted);
}

/* Grid: kaardid kõrvuti — auto-fill, minimaalne laius 320px (poster + body) */
.elab-members-lists__grid {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: var(--elab-space-4);
}

.elab-members-lists__grid > li {
    list-style: none !important;
    margin: 0 !important;
    padding: 20px !important;
}

/* Kaart: 2-veerg grid [poster 120px] [body 1fr] — sama struktuur kui CPT kaardid. */
.elab-members-lists__card {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: var(--elab-space-4);
    align-items: stretch;
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    box-shadow: var(--elab-shadow-sm);
    transition: box-shadow var(--elab-trans-fast), border-color var(--elab-trans-fast);
    padding: 20px;
    position: relative;
}

.elab-members-lists__card:hover {
    box-shadow: var(--elab-shadow-md);
    border-color: var(--elab-border-strong);
}

.elab-members-lists__card--top {
    border-left: 3px solid var(--elab-green);
}

/* Cover (UI Kit .elab-poster--sm = 120px laius, 2:3 ratio = 180px kõrgus) */
.elab-members-lists__card-cover {
    align-self: start;
    text-decoration: none !important;
}

.elab-members-lists__card-cover-fallback {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    background: var(--elab-bg-soft, #f5f5f5);
    color: var(--elab-text-muted);
}

.elab-members-lists__card-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2);
}

.elab-members-lists__card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--elab-space-2);
}

.elab-members-lists__card-title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
    font-weight: var(--elab-fw-medium);
    line-height: 1.2;
    color: var(--elab-text);
    flex: 1;
    min-width: 0;
}

.elab-members-lists__card-title a {
    color: inherit;
    text-decoration: none;
}

.elab-members-lists__card-title a:hover {
    color: var(--elab-blue);
}

.elab-members-lists__card-meta {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

/* Avalike nimekirjade ([elab_nimekirjad]) — count + author */
.elab-members-public-lists .elab-members-lists__count {
    margin: 0 0 20px;
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-lists__card-author {
    color: var(--elab-text-muted);
}

.elab-members-lists__card-author a {
    color: inherit;
    text-decoration: none;
}

.elab-members-lists__card-author a:hover {
    color: var(--elab-blue, #2563eb);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-lists__card-sep {
    margin: 0 0.3em;
    opacity: 0.6;
}

.elab-members-lists__card-description {
    margin: 0;
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-sm);
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.elab-members-lists__card-badges {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.elab-members-lists__card-actions {
    display: flex;
    gap: var(--elab-space-2);
    margin-top: auto;
    padding-top: var(--elab-space-2);
    justify-content: flex-end;
}

.elab-members-lists__action-btn {
    width: 32px;
    height: 32px;
    padding: 0;
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-md);
    background: transparent;
    color: var(--elab-text-secondary);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background var(--elab-trans-fast), color var(--elab-trans-fast), border-color var(--elab-trans-fast);
}

.elab-members-lists__action-btn:hover:not(:disabled) {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
    border-color: var(--elab-border-strong);
}

.elab-members-lists__action-btn:disabled,
.elab-members-lists__action-btn[aria-disabled="true"] {
    opacity: 0.45;
    cursor: not-allowed;
}

.elab-members-lists__action-btn--danger:hover:not(:disabled) {
    color: var(--elab-danger);
    border-color: var(--elab-danger);
}

@media (max-width: 600px) {
    .elab-members-lists__card {
        grid-template-columns: 80px 1fr;
        gap: var(--elab-space-3);
        padding: var(--elab-space-3);
    }
}

.elab-members-lists__badge {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 8px;
    border-radius: var(--elab-radius-full);
    font-size: var(--elab-fs-xs);
    font-weight: var(--elab-fw-semibold);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.elab-members-lists__badge--top {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
}

.elab-members-lists__badge--private {
    background: var(--elab-bg-soft2, #eaeaea);
    color: var(--elab-text-secondary);
    padding: 0;
    width: 22px;
    justify-content: center;
}

.elab-members-lists__pagination {
    display: flex;
    justify-content: center;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-5);
    flex-wrap: wrap;
}

.elab-members-lists__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 var(--elab-space-3);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    border: 1px solid var(--elab-border);
    background: var(--elab-bg-elevated);
}

.elab-members-lists__pagination .page-numbers:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-lists__pagination .page-numbers.current {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}


/* === Nimekirjad subtab — Faas 4.3b (üksik nimekiri) =================== */

.elab-members-list-single {
    margin: 0 0 var(--elab-space-5);
}

.elab-members-list-single__header {
    margin-bottom: var(--elab-space-5);
}

.elab-members-list-single__back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
    text-decoration: none;
    margin-bottom: var(--elab-space-3);
}

.elab-members-list-single__back:hover {
    color: var(--elab-blue);
    text-decoration: underline;
}

.elab-members-list-single__title-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-2);
}

.elab-members-list-single__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-3xl);
    font-weight: var(--elab-fw-medium);
    line-height: 1.15;
}

.elab-members-list-single__badges {
    display: flex;
    gap: var(--elab-space-2);
}

.elab-members-list-single__description {
    margin: 0 0 var(--elab-space-3);
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-base);
    line-height: 1.5;
}

.elab-members-list-single__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--elab-space-3);
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-list-single__filter { margin: 0; }

.elab-members-list-single__sort {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
}

.elab-members-list-single__sort-select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-list-single__empty {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    color: var(--elab-text-muted);
}

.elab-members-list-single__items {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-list-single__items > li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elab-members-list-single__item {
    display: grid;
    /* default: [position] [card] [actions] — kõige laiem variant. CSS :has()
     * peidab puuduvad veerud allpool. */
    grid-template-columns: auto 1fr auto;
    gap: var(--elab-space-3);
    align-items: start;
}

/* Position-number TOP-nimekirjas */
.elab-members-list-single__position {
    width: 48px;
    flex-shrink: 0;
    padding-top: var(--elab-space-5);
    font-family: var(--elab-font-display);
    font-size: 36px;
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text-muted);
    line-height: 1;
    text-align: center;
}

/* Kui pole TOP, kaart algab vasakult */
.elab-members-list-single__item:not(:has(.elab-members-list-single__position)) {
    grid-template-columns: 1fr auto;
}

/* Kui pole owner (puudub action-sidebar), pole paremat veergu */
.elab-members-list-single__item:not(:has(.elab-members-list-single__item-actions)) {
    grid-template-columns: auto 1fr;
}

/* Pole TOP ega owner — kaart võtab kogu laiuse */
.elab-members-list-single__item:not(:has(.elab-members-list-single__position)):not(:has(.elab-members-list-single__item-actions)) {
    grid-template-columns: 1fr;
}

.elab-members-list-single__card-wrap {
    min-width: 0;
}

/* === Item-action sidebar (omanikule) ============================ */

.elab-members-list-single__item-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding-top: var(--elab-space-3);
}

.elab-members-list-single__order-btn,
.elab-members-list-single__drag-handle,
.elab-members-list-single__remove-btn {
    width: 28px;
    height: 28px;
    padding: 0;
    border: 1px solid transparent;
    border-radius: var(--elab-radius-md);
    background: transparent;
    color: var(--elab-text-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background var(--elab-trans-fast), color var(--elab-trans-fast), border-color var(--elab-trans-fast);
}

.elab-members-list-single__order-btn:hover:not(:disabled),
.elab-members-list-single__remove-btn:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
    border-color: var(--elab-border);
}

.elab-members-list-single__order-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.elab-members-list-single__drag-handle {
    cursor: grab;
}

.elab-members-list-single__drag-handle:active {
    cursor: grabbing;
}

.elab-members-list-single__drag-handle:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
    border-color: var(--elab-border);
}

.elab-members-list-single__remove-btn:hover {
    color: var(--elab-danger);
    border-color: var(--elab-danger);
}

/* Dragging-state visuaal (SortableJS lisab `is-dragging` klassi) */
.elab-members-list-single__items.is-saving {
    opacity: 0.6;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

.elab-members-list-single__item.is-dragging {
    opacity: 0.4;
}

.elab-members-list-single__pagination {
    display: flex;
    justify-content: center;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-5);
    flex-wrap: wrap;
}

.elab-members-list-single__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 var(--elab-space-3);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    border: 1px solid var(--elab-border);
    background: var(--elab-bg-elevated);
}

.elab-members-list-single__pagination .page-numbers:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-list-single__pagination .page-numbers.current {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}

/* === BeTheme `be.css` globaalsed override'id Members-i kontekstis ======
 *
 * BeTheme rakendab tüütusvärki `label { margin-bottom: 5px }` ja
 * `input/select/textarea { margin-bottom: 20px }` mis lõhuvad meie tihket
 * vormi-paigutust. Override AINULT meie Members-ploki sisus (et mitte
 * mõjutada BeTheme'i muid vorme).
 */
.elab-members-profile label,
.elab-modal label,
.elab-members-archive label,
.elab-members-account label,
.elab-members-privacy label,
.elab-members-lists-form label,
.elab-members-lists-add label,
.elab-members-review-edit-form label,
.elab-members-subhead label {
    margin-bottom: 0 !important;
}

.elab-members-profile input,
.elab-members-profile select,
.elab-members-profile textarea,
.elab-modal input,
.elab-modal select,
.elab-modal textarea,
.elab-members-archive input,
.elab-members-archive select,
.elab-members-account input,
.elab-members-account select,
.elab-members-account textarea,
.elab-members-privacy input,
.elab-members-lists-form input,
.elab-members-lists-form select,
.elab-members-lists-form textarea,
.elab-members-lists-add input,
.elab-members-review-edit-form input,
.elab-members-review-edit-form select,
.elab-members-review-edit-form textarea,
.elab-members-subhead input,
.elab-members-subhead select {
    margin-bottom: 0 !important;
}


/* === Jagatud subtab-header (Faas 5D — visualne ühtlustamine) ==========
 *
 * Iga liikme-alamleht (Arvustused, Hinnangud, Nimekirjad, Tegevused,
 * Privaatsus, Konto, jne) kasutab sama header-konteinerit:
 *
 *   .elab-members-subhead
 *     ├── h2.elab-members-subhead__title         — heledal taustal, servast-servani
 *     ├── p.elab-members-subhead__intro          — kirjeldus (kui on), padding 20px (+20 alla bari)
 *     └── div.elab-members-subhead__bar          — count + filter, padding 20px
 *
 * Värvi-token'id (UI Kit): --elab-page-header-bg, --elab-page-header-border
 */

/* Alamlehe pealkiri — ELAB section-stiil (ilma box/taust/raam). Filter
 * läheb title-reale paremale (absolute), count-bar title-joone alla. */
.elab-members-subhead {
    position: relative;
    margin-bottom: var(--elab-space-4, 16px);
}

.elab-members-subhead__title {
    margin: 0 0 12px;
    padding: 0 240px 12px 0;
    border-bottom: 1px solid var(--elab-border, #e5e7eb);
    font-family: var(--elab-font-display, "Fraunces", serif);
    font-size: 23px;
    font-weight: 600;
    color: var(--elab-text, #1a1a1a);
    line-height: 1.1;
}

.elab-members-subhead__intro {
    margin: 0 0 10px;
    padding: 0;
    color: var(--elab-text-secondary, #4b5563);
    font-size: 14px;
    line-height: 1.5;
}

.elab-members-subhead__intro + .elab-members-subhead__bar { padding-top: 0; }
.elab-members-subhead__intro:last-child { padding-bottom: 0; }

.elab-members-subhead__bar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--elab-space-3, 12px);
    padding: 0;
}

.elab-members-subhead__count {
    color: var(--elab-text-muted, #6b7280);
    font-size: 14px;
}

.elab-members-subhead__actions {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2, 8px);
    margin-left: auto;
}

/* Filter title-reale paremale */
.elab-members-subhead__filter {
    position: absolute;
    top: -7px;
    right: 0;
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2, 8px);
}

@media (max-width: 600px) {
    .elab-members-subhead__title { padding-right: 0; }
    .elab-members-subhead__filter { position: static; margin-top: 10px; }
}

.elab-members-subhead__filter label {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
}

.elab-members-subhead__filter select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    color: var(--elab-text);
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-subhead__filter-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}


/* === "Muuda" / "Eemalda" globaalsed link-nupud (ikoonidega) ============
 *
 * Kasutusel iga liikme-alamlehe kaardi action-real (Arvustused, Hinnangud,
 * Tegevused, Nimekirjad jne). Ühtne stiil: ilma taustata, allajoonitud link,
 * pliiats/x ikoon vasakul, hover muudab AINULT värvi (mitte tausta). */

.elab-members-action-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0;
    color: var(--elab-blue);
    font: inherit;
    font-size: var(--elab-fs-sm);
    line-height: 1.2;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
    box-shadow: none !important;
}

.elab-members-action-link:hover,
.elab-members-action-link:focus-visible {
    background: transparent !important;
    color: var(--elab-blue-hover);
    text-decoration: underline;
    outline: none;
    box-shadow: none !important;
}

.elab-members-action-link--danger {
    color: var(--elab-danger, #b32424);
}

.elab-members-action-link--danger:hover,
.elab-members-action-link--danger:focus-visible {
    color: #8b1c1c;
}

.elab-members-action-link svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
}


/* === Arvustuse "Muuda" + delete grupp ================================ */

.elab-members-reviews__owner-actions {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

.elab-members-reviews__edit-btn {
    background: transparent;
    border: 0;
    padding: 0;
    color: var(--elab-blue);
    font: inherit;
    font-size: var(--elab-fs-sm);
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-reviews__edit-btn:hover {
    color: var(--elab-blue-hover);
}

.elab-members-reviews__action-sep {
    color: var(--elab-text-muted);
    opacity: 0.6;
}

/* Review edit modal */
#elab-members-review-edit-modal .elab-modal__dialog {
    position: relative;
    width: 560px;
    max-width: 100%;
    background: var(--elab-bg-elevated, #fff);
    color: var(--elab-text);
    border-radius: var(--elab-radius-lg);
    padding: 0;
}

#elab-members-review-edit-modal .elab-modal__header {
    padding: 18px 28px;
    background: var(--elab-page-header-bg);
    border-bottom: 1px solid var(--elab-page-header-border);
}

#elab-members-review-edit-modal .elab-modal__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
    font-weight: var(--elab-fw-medium);
}

#elab-members-review-edit-modal .elab-modal__close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 32px;
    height: 32px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 999px;
    color: var(--elab-text-muted);
    cursor: pointer;
}

#elab-members-review-edit-modal .elab-modal__close:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-review-edit-form {
    padding: 24px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-review-edit-form__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.elab-members-review-edit-form__field label {
    font-size: var(--elab-fs-sm);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
}

.elab-members-review-edit-form__field input[type="text"],
.elab-members-review-edit-form__field textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--elab-border) !important;
    border-radius: var(--elab-radius-md) !important;
    background: var(--elab-bg-elevated) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.5;
    box-shadow: none !important;
    box-sizing: border-box;
}

.elab-members-review-edit-form__field input[type="text"] {
    height: 40px;
}

.elab-members-review-edit-form__field textarea {
    min-height: 160px;
    resize: vertical;
}

.elab-members-review-edit-form__field input:focus,
.elab-members-review-edit-form__field textarea:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.18) !important;
}

.elab-members-review-edit-form__hint {
    margin: 0;
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-xs);
}

/* Hindamise tärnid review-edit modaalis */
.elab-members-review-edit-form__stars {
    display: inline-flex;
    gap: 2px;
    align-items: center;
}

.elab-members-review-edit-form__star {
    background: transparent;
    border: 0;
    padding: 2px;
    cursor: pointer;
    line-height: 0;
    border-radius: 4px;
}

.elab-members-review-edit-form__star:hover,
.elab-members-review-edit-form__star:focus {
    background: transparent !important;
    outline: none;
    box-shadow: none !important;
}

.elab-members-review-edit-form__star svg {
    fill: none;
    stroke: var(--elab-text-muted);
    stroke-width: 1.6;
    transition: fill 0.12s ease, stroke 0.12s ease;
}

.elab-members-review-edit-form__star.is-active svg {
    fill: var(--elab-blue);
    stroke: var(--elab-blue);
}

.elab-members-review-edit-form__error {
    padding: var(--elab-space-3);
    background: var(--elab-danger-soft, #fee);
    color: var(--elab-danger, #b91c1c);
    border: 1px solid var(--elab-danger, #b91c1c);
    border-radius: var(--elab-radius-md);
    font-size: var(--elab-fs-sm);
}

.elab-members-review-edit-form__actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--elab-space-2);
}


/* === Profiili Cover/Avatar valija (ELAB-modaal) ======================= */

#elab-members-profile-media-modal .elab-modal__dialog {
    position: relative;
    width: 720px;
    max-width: 100%;
    background: var(--elab-bg-elevated, #fff);
    color: var(--elab-text);
    border-radius: var(--elab-radius-lg);
    padding: 0;
    display: flex;
    flex-direction: column;
    max-height: 85vh;
}

#elab-members-profile-media-modal .elab-modal__header {
    padding: 18px 28px;
    background: var(--elab-page-header-bg);
    border-bottom: 1px solid var(--elab-page-header-border);
}

#elab-members-profile-media-modal .elab-modal__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
    font-weight: var(--elab-fw-medium);
}

#elab-members-profile-media-modal .elab-modal__close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 32px;
    height: 32px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 999px;
    color: var(--elab-text-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#elab-members-profile-media-modal .elab-modal__close:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

#elab-members-profile-media-modal .elab-modal__close svg { width: 16px; height: 16px; }

.elab-profile-media__body {
    padding: var(--elab-space-4) 28px;
    overflow-y: auto;
    flex: 1;
    min-height: 200px;
}

.elab-profile-media__toolbar {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3);
    margin-bottom: var(--elab-space-4);
}

.elab-profile-media__upload-btn {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 38px;
    padding: 0 14px;
}

.elab-profile-media__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: var(--elab-space-3);
    position: relative;
    min-height: 100px;
}

.elab-profile-media__item {
    aspect-ratio: 1 / 1;
    padding: 0;
    border: 2px solid transparent;
    border-radius: var(--elab-radius-md);
    background: var(--elab-bg-soft, #f5f5f5);
    cursor: pointer;
    overflow: hidden;
    transition: border-color var(--elab-trans-fast), transform var(--elab-trans-fast);
    position: relative;
}

.elab-profile-media__item:hover {
    border-color: var(--elab-border-strong);
    transform: translateY(-1px);
}

.elab-profile-media__item.is-selected {
    border-color: var(--elab-green);
    box-shadow: 0 0 0 3px rgba(74, 159, 4, 0.18);
}

.elab-profile-media__item.is-selected::after {
    content: '';
    position: absolute;
    top: 4px;
    right: 4px;
    width: 22px;
    height: 22px;
    background: var(--elab-green);
    border-radius: 50%;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'><polyline points='20 6 9 17 4 12'/></svg>");
    background-size: 14px;
    background-position: center;
    background-repeat: no-repeat;
}

.elab-profile-media__item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

.elab-profile-media__loading {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

/* `hidden` HTML-atribuut peab elemendi DOM-ist visuaalselt eemaldama, kuid
 * `position: absolute` reegel võidab `display: none`-i specificity'is.
 * Force-override `!important`-iga. */
.elab-profile-media__loading[hidden] {
    display: none !important;
}

.elab-profile-media__spinner {
    width: 32px;
    height: 32px;
    border: 3px solid var(--elab-border);
    border-top-color: var(--elab-green);
    border-radius: 50%;
    animation: elab-spin 0.8s linear infinite;
}

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

.elab-profile-media__empty {
    padding: var(--elab-space-8) var(--elab-space-4);
    text-align: center;
    color: var(--elab-text-muted);
}

.elab-profile-media__load-more-wrap {
    margin-top: var(--elab-space-4);
    text-align: center;
}

.elab-profile-media__error {
    margin-top: var(--elab-space-3);
    padding: var(--elab-space-3);
    background: var(--elab-danger-soft, #fee);
    border: 1px solid var(--elab-danger, #b91c1c);
    border-radius: var(--elab-radius-md);
    color: var(--elab-danger, #b91c1c);
    font-size: var(--elab-fs-sm);
}

.elab-profile-media__footer {
    display: flex;
    justify-content: flex-end;
    gap: var(--elab-space-2);
    padding: var(--elab-space-4) 28px var(--elab-space-4);
    border-top: 1px solid var(--elab-border-soft);
}

.elab-profile-media__remove-btn {
    margin-right: auto;
    color: var(--elab-danger, #b91c1c);
}


/* === Konto seaded (Faas 6) ============================================ */

.elab-members-account {
    margin: 0 0 var(--elab-space-5);
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-5);
}

.elab-members-account__flash {
    padding: var(--elab-space-3) var(--elab-space-4);
    border-radius: var(--elab-radius-md);
    font-size: var(--elab-fs-base);
}

.elab-members-account__flash--success {
    background: var(--elab-success-soft, var(--elab-green-soft2));
    border: 1px solid var(--elab-green-soft);
    color: var(--elab-text);
}

.elab-members-account__flash--error {
    background: var(--elab-danger-soft, #fee);
    border: 1px solid var(--elab-danger, #b91c1c);
    color: var(--elab-danger, #b91c1c);
}

.elab-members-account__section {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-5);
}

.elab-members-account__section--danger {
    border-color: var(--elab-danger, #b91c1c);
    background: var(--elab-danger-soft, #fff5f5);
}

.elab-members-account__section-title {
    margin: 0 0 var(--elab-space-3);
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
    font-weight: var(--elab-fw-medium);
}

.elab-members-account__info {
    display: grid;
    grid-template-columns: 200px 1fr;
    margin: 0;
    border-top: 1px solid var(--elab-border-soft);
}

.elab-members-account__info dt,
.elab-members-account__info dd {
    padding: var(--elab-space-3) 0;
    border-bottom: 1px solid var(--elab-border-soft);
    line-height: 1.4;
    margin: 0;
    display: flex;
    align-items: center;
}

.elab-members-account__info dt {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
    white-space: nowrap;
    padding-right: var(--elab-space-3);
}

.elab-members-account__info dd {
    color: var(--elab-text);
    font-size: var(--elab-fs-base);
}

/* ARMember sisu wrapper — valge taust + ümarad nurgad + padding */
.elab-members-account__armember-wrap {
    background: var(--elab-bg-elevated, #fff);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-5);
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-account__form {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3);
}

.elab-members-account__field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.elab-members-account__field label {
    font-size: var(--elab-fs-sm);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
}

.elab-members-account__field input,
.elab-members-account__field select {
    height: 40px;
    padding: 8px 12px;
    border: 1px solid var(--elab-border) !important;
    border-radius: var(--elab-radius-md) !important;
    background: var(--elab-bg, #fff) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4;
    box-shadow: none !important;
    box-sizing: border-box;
    margin: 0 !important;
    max-width: 320px;
}

.elab-members-account__field input:focus,
.elab-members-account__field select:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(0, 42, 56, 0.18) !important;
}

.elab-members-account__hint {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-xs);
}

.elab-members-account__danger-warning {
    margin: 0 0 var(--elab-space-3);
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-sm);
    line-height: 1.5;
}

.elab-members-account__delete-btn {
    background: var(--elab-danger, #b91c1c) !important;
    color: #fff !important;
    border-color: var(--elab-danger, #b91c1c) !important;
}

.elab-members-account__delete-btn:hover {
    background: #8b1c1c !important;
}


/* === Privaatsuse seaded (Faas 5) ====================================== */

.elab-members-privacy {
    margin: 0 0 var(--elab-space-5);
}

.elab-members-privacy__flash {
    margin-bottom: var(--elab-space-4);
    padding: var(--elab-space-3) var(--elab-space-4);
    background: var(--elab-success-soft, var(--elab-green-soft2));
    border: 1px solid var(--elab-green-soft);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text);
}

.elab-members-privacy__header {
    margin-bottom: var(--elab-space-5);
}

.elab-members-privacy__title {
    margin: 0 0 var(--elab-space-2);
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
}

.elab-members-privacy__intro {
    margin: 0;
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-sm);
    line-height: 1.5;
}

.elab-members-privacy__list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-privacy__item {
    list-style: none !important;
    margin: 0 !important;
    padding: var(--elab-space-5);
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
}

.elab-members-privacy__item-info {
    margin-bottom: var(--elab-space-3);
}

.elab-members-privacy__item-label {
    margin: 0 0 4px;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
}

.elab-members-privacy__item-description {
    margin: 0;
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-privacy__levels {
    border: 0;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: var(--elab-space-2);
}

.elab-members-privacy__level {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: var(--elab-space-3) var(--elab-space-3) var(--elab-space-3) 36px;
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-md);
    cursor: pointer;
    position: relative;
    transition: border-color var(--elab-trans-fast), background var(--elab-trans-fast);
}

.elab-members-privacy__level:hover {
    border-color: var(--elab-border-strong);
}

/* Selected state — CSS-only `:has()` (moodsad brauserid, 2024+) */
.elab-members-privacy__level:has(input[type="radio"]:checked),
.elab-members-privacy__level.is-selected {
    border-color: var(--elab-green);
    background: var(--elab-green-soft2, #f0f9f0);
}

.elab-members-privacy__level input[type="radio"] {
    position: absolute;
    top: 12px;
    left: 12px;
    margin: 0;
}

.elab-members-privacy__level-label {
    font-size: var(--elab-fs-base);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
}

.elab-members-privacy__level-desc {
    font-size: var(--elab-fs-xs);
    color: var(--elab-text-muted);
    line-height: 1.4;
}

.elab-members-privacy__actions {
    margin-top: var(--elab-space-5);
    display: flex;
    justify-content: flex-end;
}


/* === Members archive `/liikmed/` ====================================== */

.elab-members-archive {
    margin-block: var(--elab-space-6);
}

.elab-members-archive__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--elab-space-4);
    margin-bottom: var(--elab-space-5);
}

.elab-members-archive__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
}

.elab-members-archive__filter {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3);
    flex-wrap: wrap;
    margin: 0;
}

.elab-members-archive__search {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.elab-members-archive__search-input {
    height: 38px !important;
    width: 240px;
    padding: 0 36px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base) !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
    margin: 0 !important;
}

.elab-members-archive__search-btn {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: 0;
    color: var(--elab-text-muted);
    padding: 4px;
    cursor: pointer;
    display: inline-flex;
}

.elab-members-archive__search-clear {
    position: absolute;
    right: 32px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--elab-text-muted);
    text-decoration: none;
    font-size: 20px;
    line-height: 1;
    padding: 0 4px;
}

.elab-members-archive__sort {
    display: inline-flex;
    align-items: center;
    gap: var(--elab-space-2);
}

.elab-members-archive__sort-label {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-archive__sort-select {
    height: 38px !important;
    margin: 0 !important;
    padding: 0 28px 0 12px !important;
    border: 1px solid #d4d4d4 !important;
    border-radius: 8px !important;
    background: var(--elab-bg-elevated) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4 !important;
    box-shadow: none !important;
    cursor: pointer;
}

.elab-members-archive__empty {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    padding: var(--elab-space-10) var(--elab-space-6);
    text-align: center;
    color: var(--elab-text-muted);
}

.elab-members-archive__grid {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: var(--elab-space-3);
}

.elab-members-archive__grid > li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elab-members-archive__card {
    background: var(--elab-bg-elevated);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-lg);
    box-shadow: var(--elab-shadow-sm);
    transition: box-shadow var(--elab-trans-fast), border-color var(--elab-trans-fast);
}

.elab-members-archive__card:hover {
    box-shadow: var(--elab-shadow-md);
    border-color: var(--elab-border-strong);
}

.elab-members-archive__card-link {
    display: flex;
    align-items: center;
    gap: var(--elab-space-3);
    padding: var(--elab-space-4);
    color: inherit;
    text-decoration: none !important;
}

.elab-members-archive__card-avatar {
    flex-shrink: 0;
}

.elab-members-archive__card-avatar img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: block;
    border: 2px solid var(--elab-bg);
    box-shadow: var(--elab-shadow-sm);
}

.elab-members-archive__card-body {
    min-width: 0;
    flex: 1;
}

.elab-members-archive__card-name {
    margin: 0 0 2px;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-base);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.elab-members-archive__card-joined {
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-xs);
    margin-bottom: 4px;
}

.elab-members-archive__card-stats {
    color: var(--elab-text-secondary);
    font-size: var(--elab-fs-xs);
    line-height: 1.3;
}

.elab-members-archive__card-stat-sep {
    margin: 0 4px;
    opacity: 0.6;
}

.elab-members-archive__pagination {
    display: flex;
    justify-content: center;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-5);
    flex-wrap: wrap;
}

.elab-members-archive__pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 var(--elab-space-3);
    border-radius: var(--elab-radius-md);
    color: var(--elab-text-secondary);
    text-decoration: none;
    font-size: var(--elab-fs-base);
    border: 1px solid var(--elab-border);
    background: var(--elab-bg-elevated);
}

.elab-members-archive__pagination .page-numbers:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

.elab-members-archive__pagination .page-numbers.current {
    background: var(--elab-green);
    color: var(--elab-text-inverse);
    border-color: var(--elab-green);
}


/* === Nimekirja modaal: "Lisa kirjeid" sektsioon (Faas 4.3d AJAX search) === */

.elab-members-lists-add {
    border-top: 1px solid var(--elab-border-soft);
    padding: var(--elab-space-4) 28px 28px;
}

.elab-members-lists-add__title {
    margin: 0 0 var(--elab-space-3);
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-lg);
    font-weight: var(--elab-fw-medium);
}

.elab-members-lists-add__search {
    margin-bottom: var(--elab-space-3);
}

.elab-members-lists-add__input {
    width: 100% !important;
    display: block;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid var(--elab-border) !important;
    border-radius: var(--elab-radius-md) !important;
    background: var(--elab-bg-elevated) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    box-shadow: none !important;
    box-sizing: border-box;
}

/* "3 täppi" loading-indikaator input'i ja result'i vahel — kaob kui otsing lõppeb */
.elab-members-lists-add__spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    height: 16px;
    margin: var(--elab-space-2) 0;
}

/* `hidden` atribuut peab `display: flex`-i võitma — vajalik specificity-vastane !important */
.elab-members-lists-add__spinner[hidden] {
    display: none !important;
}

.elab-members-lists-add__spinner::before,
.elab-members-lists-add__spinner::after,
.elab-members-lists-add__spinner span {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--elab-text-muted);
    animation: elab-dots 1.2s ease-in-out infinite;
}

.elab-members-lists-add__spinner::before { animation-delay: 0s; }
.elab-members-lists-add__spinner span    { animation-delay: 0.2s; }
.elab-members-lists-add__spinner::after  { animation-delay: 0.4s; }

@keyframes elab-dots {
    0%, 60%, 100% { opacity: 0.3; transform: scale(0.8); }
    30%           { opacity: 1;   transform: scale(1); }
}

.elab-members-lists-add__results {
    max-height: 320px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-2);
}

.elab-members-lists-add__hint,
.elab-members-lists-add__error {
    padding: var(--elab-space-3);
    text-align: center;
    color: var(--elab-text-muted);
    font-size: var(--elab-fs-sm);
}

.elab-members-lists-add__error {
    color: var(--elab-danger, #b91c1c);
}

.elab-members-lists-add__result {
    display: grid;
    grid-template-columns: 48px 1fr auto;
    gap: var(--elab-space-3);
    align-items: center;
    padding: 8px;
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border);
    border-radius: var(--elab-radius-md);
}

.elab-members-lists-add__result-thumb {
    width: 48px;
    height: 64px;
    overflow: hidden;
    border-radius: var(--elab-radius-sm);
    background: var(--elab-bg-soft, #f5f5f5);
}

.elab-members-lists-add__result-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
}

.elab-members-lists-add__result-body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    line-height: 1.3em;
}

.elab-members-lists-add__result-type {
    font-size: var(--elab-fs-xs);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--elab-blue);
    font-weight: var(--elab-fw-semibold);
}

.elab-members-lists-add__result-title {
    font-size: var(--elab-fs-base);
    color: var(--elab-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.elab-members-lists-add__result-meta {
    font-size: var(--elab-fs-xs);
    color: var(--elab-text-muted);
}

.elab-members-lists-add__add-btn {
    height: 32px;
    padding: 0 12px;
    border: 1px solid var(--elab-green);
    border-radius: var(--elab-radius-md);
    background: var(--elab-green);
    color: #fff;
    font: inherit;
    font-size: var(--elab-fs-sm);
    cursor: pointer;
    white-space: nowrap;
}

.elab-members-lists-add__add-btn:hover:not(:disabled) {
    background: var(--elab-green-hover);
    border-color: var(--elab-green-hover);
}

.elab-members-lists-add__add-btn.is-added,
.elab-members-lists-add__add-btn:disabled {
    background: var(--elab-bg-soft, #f5f5f5);
    color: var(--elab-text-muted);
    border-color: var(--elab-border);
    cursor: default;
}


/* === Nimekirjade CRUD (Faas 4.3c) ===================================== */

/* "Loo uus nimekiri" CTA — pealkirja kõrval, sortimisest vasakul (paremale joondatud) */
.elab-members-lists__create-btn {
    height: 38px;
    padding: 0 16px;
    gap: 6px;
    margin-left: auto; /* lükkab CTA paremale */
}

/* Sort jääb kõige paremale CTA järele */
.elab-members-lists__header .elab-members-lists__filter {
    margin-left: 0;
}

/* Modaali vorm */
.elab-members-lists-form {
    padding: 24px 28px 28px;
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-4);
}

.elab-members-lists-form__field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.elab-members-lists-form__field label {
    font-size: var(--elab-fs-sm);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
}

.elab-members-lists-form__field input[type="text"],
.elab-members-lists-form__field textarea {
    width: 100%;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid var(--elab-border) !important;
    border-radius: var(--elab-radius-md) !important;
    background: var(--elab-bg-elevated) !important;
    font-family: inherit;
    font-size: var(--elab-fs-base);
    line-height: 1.4;
    box-shadow: none !important;
    box-sizing: border-box;
}

.elab-members-lists-form__field textarea {
    height: auto;
    min-height: 70px;
    resize: vertical;
}

.elab-members-lists-form__field input[type="text"]:focus,
.elab-members-lists-form__field textarea:focus {
    outline: none !important;
    border-color: var(--elab-dark-blue) !important;
    box-shadow: 0 0 0 3px rgba(29, 158, 117, 0.18) !important;
}

.elab-members-lists-form__fieldset {
    border: 0;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.elab-members-lists-form__fieldset legend {
    font-size: var(--elab-fs-sm);
    font-weight: var(--elab-fw-medium);
    color: var(--elab-text);
    margin-bottom: 4px;
    padding: 0;
}

.elab-members-lists-form__radio {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: var(--elab-fs-base);
    color: var(--elab-text-secondary);
    cursor: pointer;
}

.elab-members-lists-form__radio input[type="radio"] {
    margin: 0;
    flex-shrink: 0;
}

.elab-members-lists-form__error {
    padding: var(--elab-space-3);
    background: var(--elab-danger-soft, #fee);
    color: var(--elab-danger, #b91c1c);
    border: 1px solid var(--elab-danger, #b91c1c);
    border-radius: var(--elab-radius-md);
    font-size: var(--elab-fs-sm);
}

.elab-members-lists-form__actions {
    display: flex;
    justify-content: flex-end;
    gap: var(--elab-space-2);
    margin-top: var(--elab-space-2);
}

/* Members-modaalide jagatud baas:
 *   - max-height 85vh + scroll terve dialogi peal (header sees, scroll dialog'is)
 *   - header --elab-page-header-bg (#EDF1F3) + border-bottom #DAE1E5
 */
.elab-modal__dialog:has(.elab-members-modal-body),
#elab-members-lists-modal .elab-modal__dialog,
#elab-members-review-edit-modal .elab-modal__dialog,
#elab-members-profile-media-modal .elab-modal__dialog {
    max-height: 85vh;
    overflow-y: auto;
}

#elab-members-lists-modal .elab-modal__dialog {
    position: relative; /* close-nupp on `position: absolute` — vajab positsioneeritud parent'i */
    width: 560px;
    max-width: 100%;
    background: var(--elab-bg-elevated, #fff);
    color: var(--elab-text);
    border-radius: var(--elab-radius-lg);
    padding: 0;
}

#elab-members-lists-modal .elab-modal__header {
    padding: 18px 28px;
    background: var(--elab-page-header-bg);
    border-bottom: 1px solid var(--elab-page-header-border);
}

#elab-members-lists-modal .elab-modal__title {
    margin: 0;
    font-family: var(--elab-font-display);
    font-size: var(--elab-fs-xl);
    font-weight: var(--elab-fw-medium);
}

#elab-members-lists-modal .elab-modal__close {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 32px;
    height: 32px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 999px;
    color: var(--elab-text-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

#elab-members-lists-modal .elab-modal__close:hover {
    background: var(--elab-bg-hover);
    color: var(--elab-text);
}

#elab-members-lists-modal .elab-modal__close svg { width: 16px; height: 16px; }

/* Üksiku nimekirja vaate header'i action-nupud paigutus */
.elab-members-list-single__badges .elab-members-lists__action-btn {
    margin-left: 4px;
}

/* =========================================================
 * ELAB Members — Login + Register vormid (modaalis)
 * Asendab ARMember-i [arm_form] shortcode rendering'u.
 * ========================================================= */

.elab-members-form {
    display: flex;
    flex-direction: column;
    gap: var(--elab-space-3);
}

.elab-members-form__row {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.elab-members-form__row--split {
    flex-direction: row;
    gap: var(--elab-space-3);
}

.elab-members-form__col {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.elab-members-form__label {
    font-size: var(--elab-fs-sm);
    font-weight: 600;
    color: var(--elab-text);
    line-height: 1.3;
}

.elab-members-form__req {
    color: var(--elab-red, #d83d3d);
    margin-left: 2px;
}

/* Kasvatame spetsifikat #main + tema laste, et BeTheme global input-CSS ei
 * override'iks meie vormi stiile. !important hoiame minimaalsena. */
main input.elab-members-form__input,
.elab-members-modal .elab-members-form__input,
.elab-members-form__input {
    width: 100%;
    padding: 10px 12px !important;
    font-size: var(--elab-fs-base, 14px);
    line-height: 1.4;
    color: var(--elab-text, #1a1a1a);
    background: var(--elab-bg, #fff);
    border: 1px solid var(--elab-border, #e5e7eb) !important;
    border-radius: var(--elab-radius-md, 8px) !important;
    transition: border-color 120ms ease, box-shadow 120ms ease;
    box-sizing: border-box;
    box-shadow: none;
    margin: 0 !important;
    height: auto !important;
}

main input.elab-members-form__input:focus,
.elab-members-modal .elab-members-form__input:focus,
.elab-members-form__input:focus {
    outline: none;
    border-color: var(--elab-blue, #2563eb) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important;
}

.elab-members-form__row--check {
    flex-direction: row;
}

.elab-members-form__check {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: var(--elab-fs-sm);
    color: var(--elab-text-secondary);
    cursor: pointer;
}

.elab-members-form__check input[type="checkbox"] {
    margin: 0;
    width: 16px;
    height: 16px;
    accent-color: var(--elab-blue, #2563eb);
}

.elab-members-form__actions {
    margin-top: var(--elab-space-2);
}

.elab-members-form__actions .elab-btn--block {
    width: 100%;
    justify-content: center;
}

.elab-members-form__help {
    margin: 0;
    text-align: center;
    font-size: var(--elab-fs-sm, 13px);
    color: var(--elab-text-muted, #6b7280);
}

.elab-members-form__help a {
    color: var(--elab-text-muted, #6b7280);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.elab-members-form__help a:hover {
    color: var(--elab-text, #1a1a1a);
}

/* Error + success flash-banners modaali ülaosas */
.elab-members-form__error,
.elab-members-form__success {
    padding: 10px 12px;
    border-radius: var(--elab-radius-md);
    font-size: var(--elab-fs-sm);
    line-height: 1.4;
}

.elab-members-form__error {
    background: var(--elab-error-soft, #fef2f2);
    border: 1px solid var(--elab-error-border, #fca5a5);
    color: var(--elab-error-text, #991b1b);
}

.elab-members-form__error ul {
    margin: 0;
    padding-left: 18px;
}

.elab-members-form__error li + li {
    margin-top: 3px;
}

.elab-members-form__success {
    background: var(--elab-success-soft, #ecfdf5);
    border: 1px solid var(--elab-success-border, #86efac);
    color: var(--elab-success-text, #065f46);
}

/* Parooli-tugevuse mõõtja (JS init'b — vt elab-members.js) */
.elab-members-form__password-strength {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 4px;
}

.elab-members-form__password-strength-bar {
    height: 4px;
    background: var(--elab-border, #e5e7eb);
    border-radius: 999px;
    overflow: hidden;
}

.elab-members-form__password-strength-bar span {
    display: block;
    height: 100%;
    width: 0;
    background: var(--elab-red, #d83d3d);
    transition: width 160ms ease, background-color 160ms ease;
}

.elab-members-form__password-strength.is-weak .elab-members-form__password-strength-bar span    { width: 25%; background: #d83d3d; }
.elab-members-form__password-strength.is-fair .elab-members-form__password-strength-bar span    { width: 50%; background: #e89d3d; }
.elab-members-form__password-strength.is-good .elab-members-form__password-strength-bar span    { width: 75%; background: #4caf50; }
.elab-members-form__password-strength.is-strong .elab-members-form__password-strength-bar span  { width: 100%; background: #2e7d32; }

.elab-members-form__password-strength-label {
    font-size: 11px;
    color: var(--elab-text-muted);
}

@media (max-width: 480px) {
    .elab-members-form__row--split {
        flex-direction: column;
    }
}

/* Textarea — sama stiil kui input, aga resize vertikaalne */
main textarea.elab-members-form__textarea,
.elab-members-modal .elab-members-form__textarea,
.elab-members-form__textarea {
    min-height: 80px;
    resize: vertical;
    font-family: inherit;
}

/* Select — sama border + chevron-ikoon */
main select.elab-members-form__select,
.elab-members-modal .elab-members-form__select,
.elab-members-form__select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 36px !important;
    cursor: pointer;
}

/* Radio-group — vertikaalne valikute-loend */
.elab-members-form__radio-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.elab-members-form__radio {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: var(--elab-fs-base, 14px);
    color: var(--elab-text, #1a1a1a);
    cursor: pointer;
    line-height: 1.4;
}

.elab-members-form__radio input[type="radio"] {
    margin: 0;
    width: 16px;
    height: 16px;
    accent-color: var(--elab-blue, #2563eb);
    flex-shrink: 0;
}

/* Inline-variant: kui Sugu-stiilis 3 valikut, võivad olla ühe rea peal */
.elab-members-form__row--radio[data-inline] .elab-members-form__radio-group {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px 20px;
}

/* Social Fields — iga network eraldi rida (label + URL input) */
.elab-members-form__social-fields {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.elab-members-form__social-row {
    display: grid;
    grid-template-columns: 110px 1fr;
    align-items: center;
    gap: 12px;
}

.elab-members-form__social-label {
    font-size: var(--elab-fs-sm, 13px);
    font-weight: 500;
    color: var(--elab-text-secondary, #4b5563);
}

@media (max-width: 480px) {
    .elab-members-form__social-row {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}

/* Field kirjeldus (description) — väike abitekst alla */
.elab-members-form__desc {
    margin: 4px 0 0;
    font-size: var(--elab-fs-sm, 13px);
    color: var(--elab-text-muted, #6b7280);
    line-height: 1.4;
}

/* =========================================================
 * Social Connect ([arm_social_login]) — override ARMember'i img-nuppude
 * UI Kit-stiilis full-width nuppudeks (ikoon + tekst). Scope: modaali sees.
 * ========================================================= */
.elab-members-form__social {
    display: block;
    margin: 0;
}

.elab-members-form__social--top {
    margin-bottom: 0;
}

.elab-members-form__social--bottom {
    margin-top: 0;
}

/* ARMember wrapper'id — block-laotusele */
.elab-members-modal .arm_social_login_content_wrapper,
.elab-members-modal .arm_social_login_main_container {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.elab-members-modal .arm_social_link_container {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

/* Peida ARMember-i `<img>` — asendame SVG-iga ::before kaudu */
.elab-members-modal .arm_social_login_custom_image {
    display: none !important;
}

/* Põhi-nupp — UI Kit secondary-stiilis, full-width, ikoon + tekst */
.elab-members-modal .arm_social_link {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 9px 14px !important;
    border: 1px solid var(--elab-border, #e5e7eb) !important;
    border-radius: var(--elab-radius-md, 8px) !important;
    background: var(--elab-bg, #fff) !important;
    color: var(--elab-text, #1a1a1a) !important;
    font-size: var(--elab-fs-base, 14px) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    transition: border-color 120ms ease, background 120ms ease !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
}

.elab-members-modal .arm_social_link:hover {
    border-color: var(--elab-text-muted, #6b7280) !important;
    background: var(--elab-bg-soft, #f9fafb) !important;
    color: var(--elab-text, #1a1a1a) !important;
}

/* Ikoon — SVG pseudo-element */
.elab-members-modal .arm_social_link::before {
    content: '';
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    background: center/contain no-repeat;
}

/* Tekst — pseudo-element pärast ikooni */
.elab-members-modal .arm_social_link::after {
    flex: 0 0 auto;
}

/* === Facebook === */
.elab-members-modal .arm_social_link_facebook::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231877F2'><path d='M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z'/></svg>");
}
.elab-members-modal .arm_social_link_facebook::after {
    content: 'Sisene Facebookiga';
}

/* === Twitter / X === */
.elab-members-modal .arm_social_link_twitter::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000000'><path d='M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z'/></svg>");
}
.elab-members-modal .arm_social_link_twitter::after {
    content: 'Sisene X-iga';
}

/* === Google === */
.elab-members-modal .arm_social_link_google::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%234285F4' d='M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z'/><path fill='%2334A853' d='M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z'/><path fill='%23FBBC05' d='M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z'/><path fill='%23EA4335' d='M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z'/></svg>");
}
.elab-members-modal .arm_social_link_google::after {
    content: 'Sisene Google-ga';
}

/* Title-attribute peita (ARMember lisab "Login With X" tooltipi inglise keeles) */
.elab-members-modal .arm_social_link[title] {
    /* title atribuut näeb brauser tooltip'is — me ei saa CSS-iga peita */
}

/* Divider "või ..." — vorm-väljade ja social-nuppude vahel.
 * Margin 0 — vorm-row gap (var(--elab-space-3)) annab piisava õhu. */
.elab-members-form__divider {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: var(--elab-text-muted, #6b7280);
    font-size: var(--elab-fs-sm, 13px);
}

.elab-members-form__divider::before,
.elab-members-form__divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--elab-border, #e5e7eb);
}

.elab-members-form__divider span {
    flex: 0 0 auto;
    padding: 0 4px;
    text-transform: lowercase;
}

/* Hiljutine tegevus (timeline) — profiili-esileht */
.elab-members-feed-section { margin: 0 0 var(--elab-space-5, 20px); }
.elab-members-feed-section__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 12px; }
.elab-members-feed-section__title { font-family: var(--elab-font-display, "Fraunces", serif); font-weight: 600; font-size: 20px; margin: 0; }
.elab-members-feed-section__action { font-size: 13px; font-weight: 600; color: var(--elab-green); text-decoration: none; white-space: nowrap; }
.elab-members-feed-section__action:hover { text-decoration: underline; }
/* Timeline-feed — valged kaardid (mockup .feed__item) */
.elab-members-feed { display: flex; flex-direction: column; gap: 12px; }
.elab-members-feed__item { display: flex; width: 100%; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--elab-border, #e5e7eb); border-radius: var(--elab-radius-lg, 12px); box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0,0,0,.06)); padding: 14px 16px; }
.elab-members-feed__poster { flex: 0 0 auto; width: 44px; aspect-ratio: 2 / 3; border-radius: var(--elab-radius-xs, 4px); overflow: hidden; background: var(--elab-bg-soft, #f5f6f7); display: block; }
.elab-members-feed__poster img { width: 100%; height: 100%; object-fit: cover; display: block; }
.elab-members-feed__ic { flex: 0 0 auto; width: 44px; height: 44px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--elab-green-soft, #eaf3e2); color: var(--elab-green, #4a9f04); }
.elab-members-feed__ic svg { width: 20px; height: 20px; }
.elab-members-feed__ic--blue { background: var(--elab-blue-soft, #e3f3fb); color: var(--elab-blue, #009ce2); }
.elab-members-feed__body { flex: 1; min-width: 0; }
.elab-members-feed__text { font-size: 14px; line-height: 1.4; color: var(--elab-text, #1a1a1a); }
.elab-members-feed__text a { color: var(--elab-text, #1a1a1a); font-weight: 600; text-decoration: none; }
.elab-members-feed__text a:hover { color: var(--elab-blue, #009ce2); }
.elab-members-feed__review-link { padding: 0; border: 0; background: none; font: inherit; color: var(--elab-text, #1a1a1a); font-weight: 600; cursor: pointer; }
.elab-members-feed__review-link:hover { color: var(--elab-blue, #009ce2); }
.elab-members-feed__time { font-size: 12px; color: var(--elab-text-muted, #6b7280); margin-top: 2px; }
.elab-members-feed__item .elab-members-feed__rate { flex: 0 0 auto; margin-left: auto; min-width: 0; display: inline-flex; flex-direction: row; align-items: center; gap: 3px; color: var(--elab-green); font-weight: 700; }
.elab-members-feed__empty { padding: 18px; color: var(--elab-text-muted, #6b7280); }
.elab-members-feed__more { display: flex; justify-content: center; margin-top: 16px; }
.elab-members-loadmore { display: inline-flex; align-items: center; gap: 8px; padding: 10px 22px; background: #fff; border: 1px solid var(--elab-border, #e5e7eb); border-radius: var(--elab-radius-full, 999px); color: var(--elab-text-secondary, #4b5563); font-size: 14px; font-weight: 600; cursor: pointer; transition: border-color .15s, color .15s, background .15s; }
.elab-members-loadmore:hover { border-color: var(--elab-green, #4a9f04); color: var(--elab-green-dark, #2f6a02); background: var(--elab-green-soft, #eaf3e2); }
.elab-members-loadmore:disabled { opacity: .6; cursor: default; }

/* Timeline: arvustuse "loe"-nupp + review-view modaal */
.elab-members-feed__read { flex: 0 0 auto; margin-left: auto; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid var(--elab-border, #e5e7eb); border-radius: 999px; background: #fff; color: var(--elab-text-secondary, #4b5563); cursor: pointer; transition: border-color .15s, color .15s; }
.elab-members-feed__read svg { width: 16px; height: 16px; }
.elab-members-feed__read:hover { border-color: var(--elab-blue, #009ce2); color: var(--elab-blue, #009ce2); }
.elab-members-review-view__dialog { max-width: 560px; position: relative; }
.elab-members-review-view__dialog .elab-modal__close { position: absolute; top: 14px; right: 14px; z-index: 3; font-size: 22px; line-height: 1; }
.elab-members-review-view__prod { display: inline-block; font-size: 12px; font-weight: 700; color: var(--elab-text-link, #00698c); text-decoration: none; text-transform: uppercase; letter-spacing: .5px; }
.elab-members-review-view__title { font-family: var(--elab-font-display, "Fraunces", serif); font-weight: 600; font-size: 22px; line-height: 1.2; margin: 6px 0 10px; }
.elab-members-review-view__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-size: 13px; color: var(--elab-text-muted, #6b7280); margin-bottom: 14px; padding-bottom: 14px; border-bottom: 1px solid var(--elab-border-soft, #f0f0f0); }
.elab-members-review-view__meta .elab-rating--avg { min-width: auto; margin-top: -3px; flex-direction: row; align-items: center; gap: 3px; }
.elab-members-review-view__rmax { margin-left: -7px; }
.elab-members-review-view__body { font-size: 15px; line-height: 1.65; color: var(--elab-text, #1a1a1a); }
.elab-members-review-view__votebar { margin-top: 16px; }
.elab-members-review-view__foot { display: flex; gap: 10px; justify-content: flex-end; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--elab-border-soft, #f0f0f0); }
.elab-members-review-view__loading { padding: 36px; text-align: center; color: var(--elab-text-muted, #6b7280); }

/* ============================================================
   PROFIILI REDESIGN — teema-mall (page-liikmed.php) chrome.
   Hero = .elab-arch-hero (teema); siia phead + pstats + edit-nupud.
   Body = .elab-teema-grid (teema); siia section-head + subnav + aside.
   ============================================================ */

/* --- Hero: phead (avatar + nimi) --- */
.elab-members-hero .elab-arch-hero__wrap { position: relative; z-index: 2; }
.elab-members-phead { display: flex; align-items: flex-end; gap: 24px; }
.elab-members-phead__av { position: relative; flex: 0 0 auto; }
.elab-members-phead__av img,
.elab-members-phead__av .avatar { width: 112px; height: 112px; border-radius: 50%; border: 4px solid rgba(255, 255, 255, .9); box-shadow: 0 10px 30px rgba(0, 0, 0, .35); display: block; background: #0b1a20; object-fit: cover; }
.elab-members-phead__main { min-width: 0; padding-bottom: 4px; }
.elab-members-phead__name { font-family: var(--elab-font-display, "Fraunces", serif); font-weight: 600; font-size: clamp(26px, 3.4vw, 34px); line-height: 1.1; margin: 0; color: #fff; }
.elab-members-phead__sub { color: rgba(255, 255, 255, .72); font-size: 14px; margin-top: 6px; }
.elab-members-phead__handle { font-weight: 600; color: #fff; }

/* Hero edit-nupud (omanik) */
.elab-members-hero__cover-edit { position: absolute; top: 16px; right: 16px; z-index: 3; display: inline-flex; align-items: center; gap: 6px; background: rgba(0, 0, 0, .5); color: #fff; border: 0; border-radius: var(--elab-radius-md, 8px); padding: 8px 12px; font-size: 13px; font-weight: 500; cursor: pointer; transition: background .15s; }
.elab-members-hero__cover-edit:hover { background: rgba(0, 0, 0, .72); }
.elab-members-phead__av-edit { position: absolute; right: 2px; bottom: 2px; width: 34px; height: 34px; border-radius: 50%; background: rgba(0, 0, 0, .6); color: #fff; border: 2px solid rgba(255, 255, 255, .85); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background .15s; }
.elab-members-phead__av-edit:hover { background: rgba(0, 0, 0, .8); }

/* --- Hero: statistika-rida --- */
.elab-members-pstats { display: flex; flex-wrap: wrap; gap: 30px; margin-top: 22px; position: relative; z-index: 2; }
.elab-members-pstats__item { line-height: 1; }
a.elab-members-pstats__item { text-decoration: none; transition: opacity .15s, transform .15s; }
a.elab-members-pstats__item:hover { opacity: .82; transform: translateY(-1px); }
.elab-members-pstats__n { font-family: var(--elab-font-display, "Fraunces", serif); font-weight: 600; font-size: 26px; color: #fff; }
.elab-members-pstats__l { font-size: 12.5px; color: rgba(255, 255, 255, .6); margin-top: 4px; }

/* --- Tab-nav: aliase olemasolevale .elab-cpt-nav-section'ile --- */
.elab-members-nav-section { position: sticky; top: 0; z-index: 20; }

/* --- Body grid: padding 0 (teema .elab-teema-grid annab muidu 32px) --- */
.elab-teema-grid.elab-members-grid { padding: 0; }

/* --- Body: sektsioonid (mockup .section) --- */
.elab-members-main { min-width: 0; }
.elab-members-main--full { width: 100%; }
.elab-members-section { margin: 0 0 36px; }
.elab-members-section:last-child { margin-bottom: 0; }
.elab-members-section__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin: 0 0 18px; padding-bottom: 12px; border-bottom: 1px solid var(--elab-border, #e5e7eb); }
.elab-members-section__title { display: flex; align-items: center; gap: 11px; font-family: var(--elab-font-display, "Fraunces", serif); font-weight: 600; font-size: 23px; line-height: 1.1; margin: 0; color: var(--elab-text, #1a1a1a); }
.elab-members-section__title svg { width: 21px; height: 21px; color: var(--elab-green, #4a9f04); flex: 0 0 auto; }
.elab-members-section__action { font-size: 13px; font-weight: 600; color: var(--elab-green, #4a9f04); text-decoration: none; white-space: nowrap; }
.elab-members-section__action:hover { text-decoration: underline; }

/* --- Avalikud nimekirjad: kaardigrid --- */
.elab-members-pubcoll__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
@media (max-width: 560px) { .elab-members-pubcoll__grid { grid-template-columns: 1fr; } }
.elab-members-coll { display: flex; gap: 14px; align-items: center; background: #fff; border: 1px solid var(--elab-border, #e5e7eb); border-radius: var(--elab-radius-lg, 12px); box-shadow: var(--elab-shadow-sm, 0 1px 3px rgba(0,0,0,.06)); padding: 12px 14px; text-decoration: none; transition: border-color .15s, box-shadow .15s, transform .15s; }
.elab-members-coll:hover { border-color: var(--elab-green, #4a9f04); box-shadow: var(--elab-shadow-md, 0 4px 14px rgba(0,0,0,.1)); transform: translateY(-1px); }
.elab-members-coll__thumb { position: relative; flex: 0 0 auto; width: 52px; aspect-ratio: 2 / 3; border-radius: var(--elab-radius-sm, 6px); overflow: hidden; background: var(--elab-bg-soft, #eef0f2); }
.elab-members-coll__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.elab-members-coll__thumb--empty { background: linear-gradient(150deg, #2a4d3a, #13241a); }
.elab-members-coll__badge { position: absolute; top: 4px; left: 4px; background: rgba(0, 0, 0, .62); color: #fff; font-size: 9px; font-weight: 700; letter-spacing: .4px; padding: 2px 5px; border-radius: var(--elab-radius-full, 999px); }
.elab-members-coll__body { min-width: 0; flex: 1; }
.elab-members-coll__title { font-family: var(--elab-font-display, "Fraunces", serif); font-weight: 600; font-size: 16px; line-height: 1.25; margin: 0; color: var(--elab-text, #1a1a1a); }
.elab-members-coll__title small { font-weight: 400; color: var(--elab-text-muted, #6b7280); }
.elab-members-coll__meta { margin-top: 4px; font-size: 12px; color: var(--elab-text-muted, #6b7280); }

/* --- Sekundaarne subtab-nav (Konto) --- */
.elab-members-subnav { display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 24px; border-bottom: 1px solid var(--elab-border, #e5e7eb); }
.elab-members-subnav__item { padding: 10px 14px; font-size: 13.5px; font-weight: 600; color: var(--elab-text-muted, #6b7280); text-decoration: none; border-bottom: 2px solid transparent; margin-bottom: -1px; white-space: nowrap; transition: color .15s, border-color .15s; }
.elab-members-subnav__item:hover { color: var(--elab-text, #1a1a1a); }
.elab-members-subnav__item.is-active { color: var(--elab-green-dark, #2f6a02); border-bottom-color: var(--elab-green, #4a9f04); }

/* --- Aside: Tutvustus-widget (.elab-search-widget peal) --- */
/* Profiil alamlehel: Tutvustus-widget põhiveerus → margin-bottom (dashboard'i kaartide eel) */
.elab-members-profile-detail .elab-search-widget.elab-members-widget { margin-bottom: 20px; }
.elab-members-widget__title { display: flex; align-items: center; gap: 9px; }
.elab-members-widget__title svg { width: 17px; height: 17px; color: var(--elab-green, #4a9f04); flex: 0 0 auto; }
.elab-members-wdl { margin: 0; display: flex; flex-direction: column; gap: 0; }
.elab-members-wdl__row { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--elab-border-soft, #f0f0f0); font-size: 13.5px; }
.elab-members-wdl__row:last-child { border-bottom: 0; }
.elab-members-wdl__k { margin: 0; color: var(--elab-text-muted, #6b7280); }
.elab-members-wdl__v { margin: 0; color: var(--elab-text, #1a1a1a); font-weight: 600; text-align: right; min-width: 0; word-break: break-word; }
.elab-members-wdl__v a { color: var(--elab-blue, #009ce2); text-decoration: none; }
.elab-members-wdl__row--text { flex-direction: column; align-items: stretch; gap: 4px; }
.elab-members-wdl__row--text .elab-members-wdl__v { text-align: left; font-weight: 400; line-height: 1.6; }
.elab-members-wdl__v--clamp { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.elab-members-wdl__more { display: inline-block; margin-top: 2px; font-size: 13px; font-weight: 600; color: var(--elab-green, #4a9f04); text-decoration: none; }
.elab-members-wdl__more:hover { text-decoration: underline; }
.elab-members-widget__empty { font-size: 13.5px; color: var(--elab-text-muted, #6b7280); line-height: 1.6; margin: 0; }
.elab-members-widget__edit { display: inline-block; margin-top: 12px; font-size: 13px; font-weight: 600; color: var(--elab-green, #4a9f04); text-decoration: none; }
.elab-members-widget__edit:hover { text-decoration: underline; }

@media (max-width: 720px) {
    .elab-members-phead { gap: 16px; }
    .elab-members-phead__av img,
    .elab-members-phead__av .avatar { width: 92px; height: 92px; }
    .elab-members-pstats { gap: 22px; }
}
