/*
 * Standard-Template 1.0.0
 * Die vorhandenen Styles der Basis-Software bleiben unverändert aktiv.
 * Diese Datei ist der templateeigene Einstiegspunkt für spätere Designs.
 */

/* Template-Optionen ab Basis-Software 1.6.4 */

html,
body {
    font-family: var(--template-font, system-ui, sans-serif);
}

.container,
.content-container,
.members-topbar__inner,
.members-footer__inner {
    max-width: var(--template-container-width, 1200px);
}

a,
.site-navigation-link:hover,
.site-navigation-link.is-active,
.members-nav__link:hover,
.members-nav__link.is-active {
    color: var(--template-primary, #2FBF71);
}

.button-primary,
.btn-primary,
.progress-bar,
.members-brand__mark {
    background: var(--template-primary, #2FBF71);
}

.site-header,
.site-footer,
.members-topbar,
.members-footer {
    border-color: color-mix(in srgb, var(--template-secondary, #0f172a) 18%, transparent);
}

.site-footer-powered, .members-footer__powered {
    margin: .45rem 0 0;
    font-size: .82rem;
    opacity: .68;
}

.site-footer-powered a, .members-footer__powered a {
    color: inherit;
    text-decoration: none;
}

.site-footer-powered a:hover, .site-footer-powered a:focus-visible, .members-footer__powered a:hover, .members-footer__powered a:focus-visible {
    text-decoration: underline;
}

/* Social-Profile im Footer */

.site-footer-social,
.members-footer-social {
    width: 100%;
    margin: 0 0 1rem;
}

.site-footer-social__list,
.members-footer-social__list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .7rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer-social__list > li,
.members-footer-social__list > li {
    display: inline-flex;
    margin: 0;
    padding: 0;
}

.site-footer-social__link,
.members-footer-social__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid currentColor;
    border-radius: 50%;
    color: #d4d4dc;
    opacity: .72;
    transition: opacity .15s ease, transform .15s ease;
    border-color: var(--pb-border-strong);
    background: var(--pb-surface-soft);
}

.site-footer-social__link:hover,
.site-footer-social__link:focus-visible,
.members-footer-social__link:hover,
.members-footer-social__link:focus-visible {
    opacity: 1;
    transform: translateY(-1px);
}

.footer-social-icon {
    display: block;
    width: 20px;
    height: 20px;
    background-color: currentColor;
    -webkit-mask-image: var(--social-icon);
    mask-image: var(--social-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

/* Default Theme 0.9.12 – Feinschliff */

a:focus-visible,
button:focus-visible {
    outline: 3px solid rgba(37, 99, 235, .25);
    outline-offset: 3px;
}

img {
    max-width: 100%;
    height: auto;
}

/* =========================================================
   Premium Verdant Noir Theme 1.0.0
   Vollständige Gestaltung auf Basis von public.css und
   members.css. Bestehende Struktur und Funktionen bleiben
   unverändert.
   ========================================================= */

:root {
    --pb-black: #050505;
    --pb-black-soft: #0B0B0C;
    --pb-surface: #111113;
    --pb-surface-soft: #18181B;
    --pb-surface-raised: #222226;
    --pb-border: #22372B;
    --pb-border-strong: #355944;
    --pb-text: #EEF7F1;
    --pb-muted: #9EADA3;
    --pb-heading: #F4FFF7;
    --pb-shadow: 0 18px 50px rgba(0, 0, 0, .34);
    --pb-shadow-soft: 0 10px 28px rgba(0, 0, 0, .24);
    --color-text: var(--pb-text);
    --color-text-muted: var(--pb-muted);
    --color-heading: var(--pb-heading);
    --color-background: var(--pb-black);
    --color-surface: var(--pb-surface);
    --color-border: var(--pb-border);
    --shadow-small: var(--pb-shadow-soft);
    --shadow: var(--pb-shadow);
    --members-bg: var(--pb-black);
    --members-surface: var(--pb-surface);
    --members-surface-soft: var(--pb-surface-soft);
    --members-border: var(--pb-border);
    --members-border-strong: var(--pb-border-strong);
    --members-text: var(--pb-text);
    --members-muted: var(--pb-muted);
    --members-shadow: var(--pb-shadow);
    --members-success-bg: #10261d;
    --members-success-text: #86efac;
    --members-error-bg: #2a1114;
    --members-error-text: #fca5a5;
    --pvn-green: var(--template-primary, #2FBF71);
    --pvn-green-hover: #239A58;
    --pvn-green-light: #79E6A7;
    --pvn-green-soft: rgba(47, 191, 113, .12);
    --pvn-green-border: rgba(47, 191, 113, .42);
    --pvn-ink: #050806;
    --pvn-danger: #C63B32;
    --pvn-success: #2E9B62;
    --pvn-warning: #C48A24;
    --color-primary: var(--pvn-green);
    --color-primary-hover: var(--pvn-green-hover);
    --members-primary: var(--pvn-green);
    --members-primary-hover: var(--pvn-green-hover);
}

/* Grundflächen --------------------------------------------------------- */

html,
body,
.site,
.site-main,
body.members-body,
.members-shell,
.members-shell--app,
.members-main {
    background: var(--pb-black);
    color: var(--pb-text);
}

body,
body.members-body {
    background: radial-gradient(circle at 15% 0%, rgba(47, 191, 113, .10), transparent 30rem),
        radial-gradient(circle at 85% 100%, rgba(22, 124, 70, .07), transparent 28rem),
        var(--pb-black);
    background-attachment: fixed;
}

body.members-body--auth {
    background: radial-gradient(circle at 18% 18%, rgba(47, 191, 113, .14), transparent 28rem),
        linear-gradient(145deg, #070709 0%, #0E130F 100%);
}

/* Öffentliche Typografie und Inhalte ---------------------------------- */

h1, h2, h3, h4, h5, h6,
.page-title,
.form-label,
th {
    color: var(--pb-heading);
}

p,
li,
.page-content,
.public-content,
.card-content,
td {
    color: var(--pb-text);
}

.page-description,
.form-help,
.text-muted,
.site-footer-text,
.site-footer-copyright {
    color: var(--pb-muted);
}

code {
    color: #BEEFCF;
    background: #1c1c23;
}

pre {
    color: #f8fafc;
    background: #020202;
    border: 1px solid var(--pb-border);
}

blockquote {
    color: var(--pb-text);
    background: var(--pb-surface-soft);
    border-left-color: var(--template-primary, #2FBF71);
    box-shadow: var(--pb-shadow-soft);
}

hr {
    border-color: var(--pb-border);
}

/* Öffentlicher Header und Navigation ---------------------------------- */

.site-header {
    color: var(--pb-text);
    background: rgba(7, 7, 9, .94);
    border-bottom-color: var(--pb-border);
    box-shadow: 0 12px 34px rgba(0, 0, 0, .30);
    backdrop-filter: blur(16px);
}

.site-title a,
.site-brand-link,
.site-navigation-link {
    color: #e5e7eb;
}

.site-title a:hover {
    color: #ffffff;
}

.site-navigation-link {
    border-color: transparent;
    background: transparent;
}

.site-navigation-link:hover {
    color: #ffffff;
    background: var(--pb-surface-soft);
    border-color: var(--pb-border);
}

.site-navigation-link.is-active,
.site-navigation-item.is-active .site-navigation-link {
    color: #ffffff;
    background: var(--template-primary, #2FBF71);
    border-color: var(--template-primary, #2FBF71);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.12), 0 8px 22px rgba(212,175,55,.18);
}

/* Öffentliche Seiten, Karten, Tabellen -------------------------------- */

.page,
.card,
table,
.screen-reader-text:focus {
    background: var(--pb-surface);
    border-color: var(--pb-border);
    box-shadow: var(--pb-shadow-soft);
}

.page {
    box-shadow: var(--pb-shadow);
}

th {
    background: var(--pb-surface-soft);
}

th,
td {
    border-bottom-color: var(--pb-border);
}

/* Öffentliche Formulare und Buttons ----------------------------------- */

.form-control,
input,
select,
textarea {
    color: var(--pb-text);
    background: var(--pb-surface-soft);
    border-color: var(--pb-border-strong);
}

.form-control:hover,
input:hover,
select:hover,
textarea:hover {
    border-color: #52525f;
}

.form-control:focus,
input:focus,
select:focus,
textarea:focus {
    color: #ffffff;
    background: var(--pb-surface-raised);
    border-color: var(--template-primary, #2FBF71);
}

.button {
    color: var(--pb-text);
    background: var(--pb-surface-soft);
    border-color: var(--pb-border-strong);
}

.button:hover {
    color: #ffffff;
    background: var(--pb-surface-raised);
    border-color: #52525f;
}

.button-primary,
.btn-primary {
    color: #ffffff;
    background: var(--template-primary, #2FBF71);
    border-color: var(--template-primary, #2FBF71);
}

.button-primary:hover,
.btn-primary:hover {
    color: #ffffff;
    background: var(--color-primary-hover, #239A58);
    border-color: var(--color-primary-hover, #239A58);
}

/* Meldungen ------------------------------------------------------------ */

.alert-success {
    color: #86efac;
    background: #10261d;
    border-color: #1d5c3a;
}

.alert-danger {
    color: #fca5a5;
    background: #2a1114;
    border-color: #6b2028;
}

.alert-warning {
    color: #fde68a;
    background: #2a2110;
    border-color: #725b1b;
}

.alert-info {
    color: #A2E9BC;
    background: #122018;
    border-color: #2F6445;
}

/* Öffentlicher Footer -------------------------------------------------- */

.site-footer,
.members-footer {
    color: var(--pb-muted);
    background: #020202;
    border-color: var(--pb-border);
}

.site-footer-navigation-link,
.site-footer-powered a,
.members-footer__link,
.members-footer__powered a {
    color: #d4d4dc;
}

.site-footer-navigation-link:hover,
.site-footer-powered a:hover,
.members-footer__link:hover,
.members-footer__powered a:hover {
    color: #ffffff;
}

.site-footer-social__link:hover,
.members-footer-social__link:hover {
    color: var(--pvn-ink);
    border-color: var(--pvn-green);
    background: var(--pvn-green);
}

/* Mitglieder-Header ---------------------------------------------------- */

.members-topbar {
    color: var(--pb-text);
    background: rgba(7, 7, 9, .95);
    border-bottom-color: var(--pb-border);
    box-shadow: 0 12px 34px rgba(0, 0, 0, .30);
    backdrop-filter: blur(16px);
}

.members-brand,
.members-brand__text,
.members-user__name,
.members-menu-toggle {
    color: var(--pb-text);
}

.members-brand__mark {
    color: var(--pvn-ink);
    background: linear-gradient(135deg, #6FDEA0, var(--pvn-green));
    box-shadow: 0 8px 22px rgba(47, 191, 113, .22);
}

.members-nav__link {
    color: #b8b8c3;
}

.members-nav__link:hover,
.members-nav__link:focus-visible {
    color: #ffffff;
    background: var(--pb-surface-soft);
}

.members-nav__link.is-active {
    color: #ffffff;
    background: var(--template-primary, #2FBF71);
}

.members-nav__link--logout:hover,
.members-nav__link--logout:focus-visible {
    color: #fecaca;
    background: #321419;
}

.members-user {
    border-left-color: var(--pb-border);
}

.members-user__avatar {
    color: #BEEFCF;
    background: #18291F;
}

.members-menu-toggle {
    background: var(--pb-surface-soft);
    border-color: var(--pb-border-strong);
}

/* Mitglieder-Hero und Überschriften ----------------------------------- */

.members-eyebrow,
.members-stat-card a,
.members-section-heading a,
.members-auth-links a,
.members-text-link,
.members-breadcrumb a,
.members-mini-products em {
    color: #75DFA2;
}

.members-title,
.members-auth-card h1,
.members-product h1,
.members-auth-intro h2,
.members-section-heading h2,
.members-card h2,
.members-downloads h2,
.members-empty h2,
.members-product__content h1,
.members-product__content h2,
.members-product__content h3,
.members-lesson > h2,
.members-course-chapter h2 {
    color: var(--pb-heading);
}

.members-lead,
.members-product__meta,
.members-auth-card__subtitle,
.members-form-help,
.members-empty p,
.members-downloads__intro,
.members-recommendation-item p,
.members-recommendations__notice,
.members-card-progress small,
.members-mini-products span,
.members-activity-list small,
.members-course-progress-card small,
.members-new-content small,
.members-muted,
.members-stat-card small,
.members-profile-image-row small,
.members-notification-option small {
    color: var(--pb-muted);
}

.members-dashboard-hero {
    background: radial-gradient(circle at 100% 0%, rgba(212,175,55,.16), transparent 34%),
        linear-gradient(135deg, #111712 0%, #0B0A07 100%);
    border-color: var(--pb-border);
    box-shadow: var(--pb-shadow);
}

.members-dashboard-hero::after,
.members-hero::after {
    background: rgba(47, 191, 113, .10);
}

/* Mitglieder-Karten, Panels und Inhaltsflächen ------------------------ */

.members-count,
.members-card,
.members-stat-card,
.members-auth-card,
.members-product,
.members-downloads,
.members-recommendations,
.members-panel,
.members-course-header,
.members-continue-card,
.members-course-nav,
.members-lesson,
.members-new-content a,
.members-mini-products,
.members-activity-list,
.members-product-hero,
.members-course-progress-card,
.members-recommendation-item,
.members-download-item,
.members-empty,
.members-profile-image {
    color: var(--pb-text);
    background: var(--pb-surface);
    border-color: var(--pb-border);
    box-shadow: var(--pb-shadow-soft);
}

.members-card:hover,
.members-product-card:hover,
.members-new-content a:hover,
.members-mini-products > a:hover,
.members-activity-list > a:hover {
    border-color: #3b82f6;
    box-shadow: var(--pb-shadow);
}

.members-card__icon,
.members-activity-icon {
    color: #93c5fd;
    background: #17213a;
}

.members-card__description,
.members-product__content,
.members-lesson__content {
    color: #d5d5dd;
}

.members-empty {
    background: rgba(18, 18, 23, .78);
}

.members-empty__icon {
    color: #c5c5ce;
    background: var(--pb-surface-raised);
}

/* Mitglieder-Formulare ------------------------------------------------- */

.members-label {
    color: #e4e4ea;
}

.members-input {
    color: var(--pb-text);
    background: var(--pb-surface-soft);
    border-color: var(--pb-border-strong);
}

.members-input:focus {
    border-color: #75DFA2;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .18);
}

.members-input[readonly],
.members-input:disabled {
    color: #777784;
    background: #101014;
}

.members-password-toggle:hover,
.members-password-toggle:focus-visible {
    background: #17213a;
}

.members-button--secondary {
    color: var(--pb-text);
    background: var(--pb-surface-soft);
    border-color: var(--pb-border-strong);
}

.members-button--secondary:hover,
.members-button--secondary:focus-visible {
    color: #ffffff;
    background: var(--pb-surface-raised);
    border-color: #52525f;
}

/* Downloads und Empfehlungen ------------------------------------------ */

.members-downloads__header,
.members-recommendations__header {
    background: var(--pb-surface-soft);
    border-bottom-color: var(--pb-border);
}

.members-download-item,
.members-recommendation-item {
    background: var(--pb-surface-soft);
}

.members-download-item__filename {
    color: var(--pb-muted);
}

/* Produktkarten -------------------------------------------------------- */

.members-page-products .members-product-card > .members-product-card__media,
.members-page-products .members-product-card > .members-product-card__placeholder {
    background: #0B0A07;
}

.members-page-products .members-product-card > .members-product-card__media img {
    background: #0B0A07;
}

.members-page-products .members-product-card > .members-product-card__placeholder {
    color: #6f6f7c;
}

/* Kurse, Lektionen und Fortschritt ------------------------------------ */

.members-progress {
    background: #2a2a34;
}

.members-course-chapter {
    border-bottom-color: var(--pb-border);
}

.members-course-chapter a,
.members-download-link,
.members-mini-products > a,
.members-activity-list > a {
    color: var(--pb-text);
    border-color: var(--pb-border);
}

.members-course-chapter a:hover {
    background: var(--pb-surface-soft);
}

.members-course-chapter a.is-active {
    color: #C8F7DB;
    background: var(--pvn-green-soft);
}

.members-course-chapter a.is-complete {
    color: #86efac;
}

.members-course-status {
    border-color: var(--pb-border-strong);
}

.members-course-chapter a.is-complete .members-course-status {
    color: #86efac;
    background: #10261d;
    border-color: #276749;
}

.members-download-link:hover {
    background: var(--pb-surface-soft);
    border-color: #3b82f6;
}

.members-lesson-downloads,
.members-lesson-actions,
.members-notification-option {
    border-color: var(--pb-border);
}

.members-card-badges span {
    color: #91EDB6;
    background: rgba(47, 191, 113, .13);
}

.members-card-badges span.is-new,
.members-new-content span {
    color: #86efac;
    background: #10261d;
}

/* Profil --------------------------------------------------------------- */

.members-profile-image {
    background: var(--pb-surface-soft);
}

/* Mobile Navigation ---------------------------------------------------- */

@media (max-width: 720px) {
    .members-header-content {
            background: #0d0d10;
            border-color: var(--pb-border);
            box-shadow: var(--pb-shadow);
        }
    
        .members-user {
            border-top-color: var(--pb-border);
        }
}

@media (max-width: 800px) {
    .site-navigation-link {
            background: var(--pb-surface-soft);
            border-color: var(--pb-border);
        }
    
        .site-navigation-link.is-active,
        .site-navigation-item.is-active .site-navigation-link {
            background: var(--template-primary, #2FBF71);
            border-color: var(--template-primary, #2FBF71);
        }
}

@media print {
    body,
        .page {
            color: #000;
            background: #fff;
        }
}

/* Links und Akzenttexte */

a,
.members-eyebrow,
.members-stat-card a,
.members-section-heading a,
.members-auth-links a,
.members-text-link,
.members-breadcrumb a,
.members-mini-products em {
    color: var(--pvn-green-light);
}

a:hover,
.members-auth-links a:hover,
.members-text-link:hover,
.members-breadcrumb a:hover {
    color: #C8F7DB;
}

/* Primärbuttons */

.button-primary,
.btn-primary,
.members-button:not(.members-button--secondary),
input[type="submit"],
button[type="submit"]:not(.button-danger):not(.btn-danger) {
    color: var(--pvn-ink);
    background: linear-gradient(135deg, #6FDEA0, var(--pvn-green));
    border-color: var(--pvn-green);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34),
        0 10px 26px rgba(47, 191, 113, .20);
}

.button-primary:hover,
.button-primary:focus-visible,
.btn-primary:hover,
.btn-primary:focus-visible,
.members-button:not(.members-button--secondary):hover,
.members-button:not(.members-button--secondary):focus-visible,
input[type="submit"]:hover,
input[type="submit"]:focus-visible,
button[type="submit"]:not(.button-danger):not(.btn-danger):hover,
button[type="submit"]:not(.button-danger):not(.btn-danger):focus-visible {
    color: #050505;
    background: linear-gradient(135deg, #91EDB6, var(--pvn-green-hover));
    border-color: var(--pvn-green-hover);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38),
        0 14px 32px rgba(47, 191, 113, .28);
}

/* Sekundär- und Standardbuttons */

.button,
.button-secondary,
.btn,
.btn-secondary,
.members-button--secondary {
    color: #A6E8C1;
    background: #111712;
    border-color: var(--pvn-green-border);
}

.button:hover,
.button:focus-visible,
.button-secondary:hover,
.button-secondary:focus-visible,
.btn:hover,
.btn:focus-visible,
.btn-secondary:hover,
.btn-secondary:focus-visible,
.members-button--secondary:hover,
.members-button--secondary:focus-visible {
    color: #D2F9E0;
    background: #17251C;
    border-color: var(--pvn-green);
    box-shadow: 0 10px 26px rgba(47, 191, 113, .12);
}

/* Danger, Success und Warning */

.button-danger,
.btn-danger {
    color: #FFFFFF;
    background: linear-gradient(135deg, #D54A40, var(--pvn-danger));
    border-color: var(--pvn-danger);
}

.button-danger:hover,
.button-danger:focus-visible,
.btn-danger:hover,
.btn-danger:focus-visible {
    color: #FFFFFF;
    background: #9F251F;
    border-color: #9F251F;
}

.button-success,
.btn-success {
    color: #FFFFFF;
    background: linear-gradient(135deg, #3CB377, var(--pvn-success));
    border-color: var(--pvn-success);
}

.button-warning,
.btn-warning {
    color: #130F05;
    background: linear-gradient(135deg, #E3B14B, var(--pvn-warning));
    border-color: var(--pvn-warning);
}

/* Disabled */

.button:disabled,
.button[aria-disabled="true"],
.members-button:disabled,
.members-button[aria-disabled="true"],
.btn:disabled,
input[type="submit"]:disabled,
button[type="submit"]:disabled {
    color: #777064;
    background: #171B18;
    border-color: #2A352E;
    box-shadow: none;
}

/* Aktive Navigation in Grün */

.site-navigation-link.is-active,
.site-navigation-item.is-active .site-navigation-link,
.members-nav__link.is-active {
    color: var(--pvn-ink);
    background: linear-gradient(135deg, #6FDEA0, var(--pvn-green));
    border-color: var(--pvn-green);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .30),
        0 8px 22px rgba(47, 191, 113, .18);
}

.site-navigation-link:hover,
.members-nav__link:hover,
.members-nav__link:focus-visible {
    color: #D9FBE6;
    background: var(--pvn-green-soft);
    border-color: rgba(47, 191, 113, .20);
}

/* Formulare */

.form-control:focus,
input:focus,
select:focus,
textarea:focus,
.members-input:focus {
    border-color: var(--pvn-green);
    box-shadow: 0 0 0 4px rgba(47, 191, 113, .13);
}

.members-input[type="file"]::file-selector-button {
    color: var(--pvn-ink);
    background: linear-gradient(135deg, #6FDEA0, var(--pvn-green));
}

.members-input[type="file"]::file-selector-button:hover {
    background: linear-gradient(135deg, #91EDB6, var(--pvn-green-hover));
}

/* Karten, Badges, Fortschritt und Kurszustände */

.members-card__icon,
.members-activity-icon,
.members-empty__icon {
    color: var(--pvn-green-light);
    background: var(--pvn-green-soft);
}

.members-progress > span,
.progress-bar {
    background: linear-gradient(90deg, var(--pvn-green-hover), #72DFA2);
}

.members-download-link:hover,
.members-card:hover,
.members-page-products .members-product-card:hover,
.members-new-content a:hover,
.members-mini-products > a:hover,
.members-activity-list > a:hover {
    border-color: var(--pvn-green-border);
}

/* Fokus */

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.members-button:focus-visible,
.members-nav__link:focus-visible,
.members-footer__link:focus-visible {
    outline-color: rgba(47, 191, 113, .34);
}

/* =========================================================
   Verdant Noir Theme – übernommene und geprüfte Bugfixes
   ========================================================= */

.members-dashboard-hero {
    isolation: isolate;
}

.members-dashboard-hero::before,
.members-dashboard-hero::after {
    z-index: 0;
    pointer-events: none;
}

.members-dashboard-hero > * {
    position: relative;
    z-index: 1;
}

.members-dashboard-hero .members-actions,
.members-dashboard-hero .members-hero__actions,
.members-dashboard-hero .members-dashboard-actions {
    position: relative;
    z-index: 2;
}

.members-topbar .members-menu-toggle {
    display: none !important;
}

.members-auth-card .members-password-toggle,
.members-password-toggle {
    top: 50%;
    right: 8px;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: .38rem .55rem;
    color: var(--color-text);
    background: transparent;
    border: 0;
    border-radius: 6px;
    box-shadow: none;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.2;
    transform: translateY(-50%) !important;
}

.members-auth-card .members-password-toggle:hover,
.members-auth-card .members-password-toggle:focus-visible,
.members-password-toggle:hover,
.members-password-toggle:focus-visible {
    color: var(--color-primary-hover);
    background: var(--members-surface-soft);
    border: 0;
    box-shadow: none;
    transform: translateY(-50%) !important;
}

.members-downloads {
    padding: 0 0 1.25rem;
}

.members-downloads__header {
    padding: 1.45rem 1.5rem 1.2rem;
}

.members-download-item {
    margin: 1rem 1.25rem 0;
    padding: .8rem 1.25rem .8rem !important;
    align-items: center;
}

.members-download-item__content {
    padding: .15rem 0 .3rem;
}

.members-download-item > :first-child {
    margin-top: 0;
}

.members-download-item > :last-child {
    margin-bottom: 0;
}

.members-download-link {
    text-align: center !important;
}

.members-download-item .members-download-link,
.members-lesson .members-download-link,
.members-course .members-download-link,
.members-course-lesson .members-download-link,
.members-lesson-download,
.members-course-download,
input[type="file"]::file-selector-button,
.members-input[type="file"]::file-selector-button,
input[type="file"]::-webkit-file-upload-button,
.members-input[type="file"]::-webkit-file-upload-button {
    color: #FFFFFF !important;
    background: var(--color-primary) !important;
    border: 1px solid var(--color-primary) !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    box-shadow: none !important;
}

.members-download-item .members-download-link:hover,
.members-download-item .members-download-link:focus-visible,
.members-lesson .members-download-link:hover,
.members-lesson .members-download-link:focus-visible,
.members-course .members-download-link:hover,
.members-course .members-download-link:focus-visible,
.members-course-lesson .members-download-link:hover,
.members-course-lesson .members-download-link:focus-visible,
.members-lesson-download:hover,
.members-lesson-download:focus-visible,
.members-course-download:hover,
.members-course-download:focus-visible,
input[type="file"]:hover::file-selector-button,
.members-input[type="file"]:hover::file-selector-button,
input[type="file"]:hover::-webkit-file-upload-button,
.members-input[type="file"]:hover::-webkit-file-upload-button {
    color: #FFFFFF !important;
    background: var(--color-primary-hover) !important;
    border-color: var(--color-primary-hover) !important;
    box-shadow: none !important;
}

.members-download-item .members-download-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: .78rem 1.35rem !important;
}

.members-lesson .members-download-link,
.members-course .members-download-link,
.members-course-lesson .members-download-link,
.members-lesson-download,
.members-course-download {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100%;
    min-height: 48px;
    padding: .78rem 1.2rem;
    gap: 0 !important;
    font-size: 0;
    line-height: 1.2 !important;
    text-align: center;
    box-sizing: border-box;
}

.members-lesson .members-download-link > *,
.members-course .members-download-link > *,
.members-course-lesson .members-download-link > *,
.members-lesson-download > *,
.members-course-download > * {
    display: none !important;
}

.members-lesson .members-download-link::after,
.members-course .members-download-link::after,
.members-course-lesson .members-download-link::after,
.members-lesson-download::after,
.members-course-download::after {
    content: "Download";
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    color: #FFFFFF;
    font-size: .95rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

input[type="file"],
.members-input[type="file"] {
    color: var(--color-text);
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    padding: .35rem;
}

input[type="file"]::file-selector-button,
.members-input[type="file"]::file-selector-button,
input[type="file"]::-webkit-file-upload-button,
.members-input[type="file"]::-webkit-file-upload-button {
    min-height: 38px;
    margin-right: .75rem;
    padding: .6rem 1rem;
}

.members-count {
    display: inline-flex;
    align-items: stretch;
    overflow: hidden;
    vertical-align: middle;
    color: #FFFFFF;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.members-count strong,
.members-count span {
    display: flex;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    min-height: 38px;
    margin: 0 !important;
    padding: .55rem .85rem;
    border: 0 !important;
    line-height: 1 !important;
    box-shadow: none !important;
    transform: none !important;
}

.members-count strong {
    color: #FFFFFF;
    background: var(--color-primary);
}

.members-count span {
    color: #FFFFFF;
    background: var(--color-heading);
    font-size: .90rem;
    font-weight: 700;
}

.members-footer__text {
    margin: 0;
    max-width: 800px;
    font-size: .95rem;
    line-height: 1.6;
}

.site-footer-social__list,
.members-footer-social__list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
}

.footer-social-icon {
    display: block !important;
    background-color: currentColor !important;
    -webkit-mask-image: var(--social-icon);
    mask-image: var(--social-icon);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

@media (max-width: 720px) {
    .members-topbar .members-menu-toggle {
        display: inline-flex !important;
    }
}

@media (max-width: 680px) {
    .members-lesson .members-download-link,
    .members-course .members-download-link,
    .members-course-lesson .members-download-link,
    .members-lesson-download,
    .members-course-download {
        display: flex !important;
        width: 100%;
    }
}

