/* ==========================================================
   KICKBOXING QUÉBEC — PMPRO V4.0
   BASE STABLE ET SCOPÉE

   Objectifs :
   - aucun style PMPro global destructeur
   - portail membre indépendant
   - connexion indépendante
   - checkout PMPro indépendant
   - profil / adhésion / factures compatibles
   - bleu marine + bleu électrique + or
   ========================================================== */

/* ==========================================================
   01 — VARIABLES
   ========================================================== */

:root {
    --kbq-black: #05070b;

    --kbq-navy: #070b14;
    --kbq-navy-mid: #0b1220;
    --kbq-navy-light: #111827;

    --kbq-blue-dark: #0b2e9f;
    --kbq-blue: #1557ff;
    --kbq-blue-light: #72a5ff;

    --kbq-gold-dark: #315f78;
    --kbq-gold: #5f9fbd;
    --kbq-gold-light: #87c4df;

    --kbq-white: #ffffff;

    --kbq-text:
        rgba(255,255,255,.84);

    --kbq-muted:
        rgba(255,255,255,.64);

    --kbq-border:
        rgba(255,255,255,.09);

    --kbq-gold-border:
        rgba(95,159,189,.28);

    --kbq-blue-border:
        rgba(21,87,255,.30);
}

/* ==========================================================
   02 — RESET LIMITÉ AUX INTERFACES KICKBOXING QUÉBEC
   ========================================================== */

.iska-member-dashboard-wrap,
.iska-member-dashboard-wrap *,
.iska-login-wrap,
.iska-login-wrap *,
.iska-profile-edit-wrap,
.iska-profile-edit-wrap *,
.iska-profile-view-wrap,
.iska-profile-view-wrap * {
    box-sizing: border-box;
}

/* ==========================================================
   03 — PMPRO DANS LE TABLEAU DE BORD MEMBRE
   IMPORTANT :
   aucun body .pmpro global
   ========================================================== */

.iska-member-dashboard-wrap .pmpro,
.iska-member-dashboard-wrap .pmpro_section,
.iska-member-dashboard-wrap .pmpro_card,
.iska-member-dashboard-wrap .pmpro_box,
.iska-member-dashboard-wrap .pmpro_card_content,
.iska-member-dashboard-wrap .pmpro_section_content {

    width: 100%;
    max-width: 100%;
    min-width: 0;

    color: var(--kbq-text);
}

/* ==========================================================
   04 — NEUTRALISER LES CONTENEURS PMPRO INTERNES
   ========================================================== */

.iska-member-dashboard-wrap .iska-card-body > .pmpro,
.iska-member-dashboard-wrap .iska-card-body .pmpro_section {

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;
}

/* ==========================================================
   05 — TITRES PMPRO REDONDANTS
   Nos cartes ont déjà leurs propres titres.
   ========================================================== */

.iska-member-dashboard-wrap
.iska-card-body
> .pmpro
> .pmpro_section
> .pmpro_section_title {

    display: none !important;
}

/* ==========================================================
   06 — TEXTES DU DASHBOARD
   ========================================================== */

.iska-member-dashboard-wrap .iska-card-body p,
.iska-member-dashboard-wrap .iska-card-body li,
.iska-member-dashboard-wrap .iska-card-body td,
.iska-member-dashboard-wrap .iska-card-body span {

    color: var(--kbq-text);
}

.iska-member-dashboard-wrap .iska-card-body strong {
    color: var(--kbq-white);
}

/* ==========================================================
   07 — LIENS
   ========================================================== */

.iska-member-dashboard-wrap .iska-card-body a {

    color: var(--kbq-blue-light);

    text-decoration: none;

    transition:
        color .2s ease,
        border-color .2s ease,
        background .2s ease,
        transform .2s ease;
}

@media (hover:hover) {

    .iska-member-dashboard-wrap
    .iska-card-body a:hover {

        color: var(--kbq-white);
    }

}

/* ==========================================================
   08 — CARTES PMPRO INTERNES
   Elles deviennent transparentes.

   La vraie carte visuelle est .iska-member-card.
   ========================================================== */

.iska-member-dashboard-wrap
.iska-card-body
.pmpro_card,

.iska-member-dashboard-wrap
.iska-card-body
.pmpro_box {

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;
}

/* ==========================================================
   09 — PROFIL
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_content {

    padding: 0 !important;
}

/* Liste des informations */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_list {

    display: grid !important;

    grid-template-columns:
        repeat(2, minmax(0,1fr)) !important;

    gap: 12px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

/* Nom utilisateur / courriel */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_list_item {

    display: block !important;

    width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;

    padding: 14px 16px !important;

    background:
        rgba(255,255,255,.035) !important;

    border:
        1px solid var(--kbq-border) !important;

    border-radius:
        12px !important;

    color:
        var(--kbq-text) !important;

    overflow-wrap:
        anywhere !important;
}

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_list_item strong {

    display: block !important;

    margin-bottom: 5px !important;

    color:
        var(--kbq-blue-light) !important;

    font-size:
        10px !important;

    font-weight:
        900 !important;

    letter-spacing:
        .08em !important;

    text-transform:
        uppercase !important;
}

/* ==========================================================
   10 — ACTIONS PROFIL
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_actions {

    display: grid !important;

    grid-template-columns:
        repeat(2, minmax(0,1fr)) !important;

    gap: 10px !important;

    width: 100% !important;

    margin: 18px 0 0 !important;

    padding: 18px 0 0 !important;

    border-top:
        1px solid var(--kbq-border) !important;
}

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_action {

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_action_separator {

    display: none !important;
}

/* Boutons profil */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_action a {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;

    min-height: 46px !important;

    padding: 10px 13px !important;

    background:
        rgba(21,87,255,.11) !important;

    border:
        1px solid var(--kbq-blue-border) !important;

    border-radius:
        12px !important;

    color:
        var(--kbq-white) !important;

    font-size:
        11px !important;

    font-weight:
        900 !important;

    line-height:
        1.3 !important;

    text-align:
        center !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .04em !important;
}

@media (hover:hover) {

    .iska-member-dashboard-wrap
    #pmpro_account-profile
    .pmpro_card_action a:hover {

        transform:
            translateY(-2px);

        background:
            linear-gradient(
                135deg,
                var(--kbq-blue),
                var(--kbq-blue-dark)
            ) !important;

        border-color:
            var(--kbq-blue) !important;

        color:
            #fff !important;
    }

}

/* ==========================================================
   11 — ADHÉSIONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership {

    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}

/*
   Chaque adhésion devient une section simple,
   et non une nouvelle grosse carte imbriquée.
*/

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card {

    display: block !important;

    width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;

    padding:
        20px 0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    border-bottom:
        1px solid var(--kbq-border) !important;

    border-radius:
        0 !important;

    box-shadow:
        none !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card:first-of-type {

    padding-top:
        0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card:last-of-type {

    border-bottom:
        0 !important;
}

/* ==========================================================
   12 — TITRES ADHÉSIONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_title {

    display: block !important;

    margin:
        0 0 12px !important;

    color:
        var(--kbq-white) !important;

    font-family:
        "Oswald",
        "Arial Narrow",
        Arial,
        sans-serif !important;

    font-size:
        21px !important;

    font-weight:
        800 !important;

    line-height:
        1.3 !important;
}

/* ==========================================================
   13 — CONTENU ADHÉSIONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content {

    width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    color:
        var(--kbq-text) !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content p {

    margin:
        0 0 8px !important;

    color:
        var(--kbq-text) !important;
}

/* ==========================================================
   14 — ACTIONS ADHÉSIONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_actions {

    display: flex !important;

    flex-wrap: wrap !important;

    align-items: center !important;

    gap: 8px !important;

    width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    margin:
        14px 0 0 !important;

    padding:
        14px 0 0 !important;

    border-top:
        1px solid var(--kbq-border) !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action {

    width: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action_separator {

    display: none !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action a {

    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    min-width: 110px !important;
    min-height: 42px !important;

    padding:
        9px 16px !important;

    background:
        rgba(95,159,189,.10) !important;

    border:
        1px solid var(--kbq-gold-border) !important;

    border-radius:
        999px !important;

    color:
        var(--kbq-gold-light) !important;

    font-size:
        11px !important;

    font-weight:
        900 !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .05em !important;
}

@media (hover:hover) {

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_action a:hover {

        transform:
            translateY(-2px);

        background:
            linear-gradient(
                135deg,
                var(--kbq-gold),
                var(--kbq-gold-light)
            ) !important;

        color:
            var(--kbq-black) !important;
    }

}

/* ==========================================================
   15 — FACTURES / COMMANDES
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-invoices {

    width:
        100% !important;

    margin:
        0 !important;

    padding:
        0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-invoices table {

    width:
        100% !important;

    margin:
        0 !important;

    border-collapse:
        separate !important;

    border-spacing:
        0 !important;

    overflow:
        hidden !important;

    background:
        rgba(255,255,255,.025) !important;

    border:
        1px solid var(--kbq-border) !important;

    border-radius:
        16px !important;
}

.iska-member-dashboard-wrap
#pmpro_account-invoices th {

    padding:
        14px 16px !important;

    background:
        rgba(21,87,255,.12) !important;

    color:
        var(--kbq-blue-light) !important;

    border-bottom:
        1px solid var(--kbq-blue-border) !important;

    font-size:
        11px !important;

    font-weight:
        900 !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .06em !important;
}

.iska-member-dashboard-wrap
#pmpro_account-invoices td {

    padding:
        14px 16px !important;

    background:
        transparent !important;

    color:
        var(--kbq-text) !important;

    border-bottom:
        1px solid var(--kbq-border) !important;
}

.iska-member-dashboard-wrap
#pmpro_account-invoices tr:last-child td {

    border-bottom:
        0 !important;
}

/* ==========================================================
   16 — LOGIN PMPRO
   Limité exclusivement à .iska-login-card
   ========================================================== */

.iska-login-card .pmpro,
.iska-login-card .pmpro_login_wrap {

    width:
        100% !important;

    margin:
        0 !important;

    padding:
        0 !important;

    background:
        transparent !important;

    border:
        0 !important;

    box-shadow:
        none !important;

    color:
        var(--kbq-text) !important;
}

.iska-login-card label {

    color:
        var(--kbq-white) !important;

    font-weight:
        800 !important;
}

.iska-login-card input[type="text"],
.iska-login-card input[type="email"],
.iska-login-card input[type="password"] {

    width:
        100% !important;

    min-height:
        52px !important;

    padding:
        13px 15px !important;

    background:
        rgba(255,255,255,.055) !important;

    color:
        #fff !important;

    border:
        1px solid var(--kbq-blue-border) !important;

    border-radius:
        12px !important;

    outline:
        none !important;
}

.iska-login-card input[type="text"]:focus,
.iska-login-card input[type="email"]:focus,
.iska-login-card input[type="password"]:focus {

    border-color:
        var(--kbq-blue) !important;

    box-shadow:
        0 0 0 4px rgba(21,87,255,.14) !important;
}

/* ==========================================================
   17 — CHECKOUT / FORMULAIRES PMPRO
   On garde volontairement cette section très limitée.
   ========================================================== */

.pmpro_checkout input[type="text"],
.pmpro_checkout input[type="email"],
.pmpro_checkout input[type="password"],
.pmpro_checkout input[type="tel"],
.pmpro_checkout input[type="number"],
.pmpro_checkout select,
.pmpro_checkout textarea {

    max-width:
        100%;
}

/* ==========================================================
   18 — ACCESSIBILITÉ
   ========================================================== */

.iska-member-dashboard-wrap a:focus-visible,
.iska-member-dashboard-wrap button:focus-visible,
.iska-login-wrap a:focus-visible,
.iska-login-wrap button:focus-visible,
.iska-login-wrap input:focus-visible {

    outline:
        3px solid var(--kbq-blue-light) !important;

    outline-offset:
        3px !important;
}

/* ==========================================================
   19 — TABLETTE
   ========================================================== */

@media (max-width: 900px) {

    .iska-member-dashboard-wrap
    #pmpro_account-profile
    .pmpro_list {

        grid-template-columns:
            1fr !important;
    }

}

/* ==========================================================
   20 — MOBILE
   ========================================================== */

@media (max-width: 600px) {

    .iska-member-dashboard-wrap
    #pmpro_account-profile
    .pmpro_card_actions {

        grid-template-columns:
            1fr !important;
    }

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_action {

        width:
            100% !important;
    }

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_action a {

        width:
            100% !important;
    }

    .iska-member-dashboard-wrap
    #pmpro_account-invoices {

        overflow-x:
            auto !important;
    }

    .iska-member-dashboard-wrap
    #pmpro_account-invoices table {

        min-width:
            620px !important;
    }

}

/* ==========================================================
   21 — RÉDUCTION DES ANIMATIONS
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

    .iska-member-dashboard-wrap *,
    .iska-login-wrap * {

        transition:
            none !important;

        animation:
            none !important;
    }

}
/* =========================================================
   Kickboxing Québec — PAGE MODIFIER MON PROFIL
   URL : /modifier-mon-profil/
========================================================= */

body.page .iska-profile-edit-wrap,
body .iska-profile-edit-wrap {
	max-width: 1180px !important;
	margin: 40px auto 70px !important;
	padding: 42px !important;
	background:
		radial-gradient(circle at top left, rgba(95,159,189,.16), transparent 34%),
		linear-gradient(145deg, #050505, #111111) !important;
	border: 1px solid rgba(95,159,189,.28) !important;
	border-radius: 28px !important;
	box-shadow: 0 28px 80px rgba(0,0,0,.45) !important;
	color: #ffffff !important;
}

body .iska-profile-edit-header {
	text-align: center !important;
	margin-bottom: 38px !important;
}

body .iska-profile-edit-header span {
	display: inline-flex !important;
	margin-bottom: 14px !important;
	padding: 8px 18px !important;
	border-radius: 999px !important;
	background: rgba(95,159,189,.12) !important;
	border: 1px solid rgba(95,159,189,.35) !important;
	color: #5f9fbd !important;
	font-size: 12px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: .12em !important;
}

body .iska-profile-edit-header h2,
body .iska-profile-section-title h3 {
	color: #ffffff !important;
	font-weight: 950 !important;
	text-transform: uppercase !important;
}

body .iska-profile-edit-header h2 {
	font-size: clamp(38px, 5vw, 64px) !important;
	line-height: 1 !important;
	margin: 0 0 14px !important;
}

body .iska-profile-edit-header p {
	max-width: 760px !important;
	margin: 0 auto !important;
	color: rgba(255,255,255,.78) !important;
	font-size: 16px !important;
	line-height: 1.75 !important;
}

body .iska-profile-edit-photo {
	display: flex !important;
	align-items: center !important;
	gap: 24px !important;
	margin-bottom: 34px !important;
	padding: 24px !important;
	background: rgba(255,255,255,.05) !important;
	border: 1px solid rgba(95,159,189,.18) !important;
	border-radius: 22px !important;
}

body .iska-profile-edit-photo img,
body .iska-profile-edit-photo-placeholder {
	width: 110px !important;
	height: 110px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	border: 3px solid rgba(95,159,189,.72) !important;
	background: #111 !important;
}

body .iska-profile-edit-photo label,
body .iska-profile-edit-grid label {
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 850 !important;
	text-transform: uppercase !important;
	letter-spacing: .06em !important;
}

body .iska-profile-edit-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 22px !important;
}

body .iska-profile-section-title {
	grid-column: 1 / -1 !important;
	margin: 34px 0 8px !important;
	padding: 16px 18px !important;
	background: rgba(95,159,189,.10) !important;
	border: 1px solid rgba(95,159,189,.28) !important;
	border-radius: 18px !important;
}

body .iska-profile-section-title h3 {
	margin: 0 !important;
	color: #5f9fbd !important;
	font-size: 22px !important;
	letter-spacing: .05em !important;
}

body .iska-profile-edit-help {
	display: block !important;
	margin-top: 8px !important;
	color: rgba(255,255,255,.65) !important;
	font-size: 12px !important;
	line-height: 1.55 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

body .iska-profile-edit-grid input,
body .iska-profile-edit-grid select,
body .iska-profile-edit-grid textarea,
body .iska-profile-edit-photo input[type="file"] {
	width: 100% !important;
	min-height: 54px !important;
	margin-top: 8px !important;
	padding: 14px 16px !important;
	background: #ffffff !important;
	color: #111111 !important;
	border: 1px solid rgba(95,159,189,.35) !important;
	border-radius: 14px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	box-shadow: none !important;
	outline: none !important;
}

body .iska-profile-edit-grid textarea {
	min-height: 130px !important;
	resize: vertical !important;
}

body .iska-profile-edit-grid select[multiple] {
	min-height: 180px !important;
}

body .iska-profile-edit-grid input:focus,
body .iska-profile-edit-grid select:focus,
body .iska-profile-edit-grid textarea:focus {
	border-color: #5f9fbd !important;
	box-shadow: 0 0 0 4px rgba(95,159,189,.16) !important;
}

body .iska-profile-edit-actions {
	margin-top: 40px !important;
	text-align: center !important;
}

body .iska-profile-edit-actions button,
body .iska-profile-edit-actions input[type="submit"] {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 54px !important;
	padding: 0 34px !important;
	background: linear-gradient(135deg,#5f9fbd,#87c4df) !important;
	color: #050505 !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-size: 13px !important;
	font-weight: 950 !important;
	text-transform: uppercase !important;
	letter-spacing: .08em !important;
	cursor: pointer !important;
	box-shadow: 0 16px 38px rgba(95,159,189,.22) !important;
}

body .iska-profile-edit-actions button:hover,
body .iska-profile-edit-actions input[type="submit"]:hover {
	transform: translateY(-2px) !important;
	filter: brightness(1.05) !important;
}

body .iska-profile-edit-success,
body .iska-profile-edit-error,
body .iska-profile-edit-alert {
	margin: 0 0 25px !important;
	padding: 16px 18px !important;
	border-radius: 16px !important;
	font-weight: 850 !important;
	text-align: center !important;
}

body .iska-profile-edit-success {
	background: rgba(34,197,94,.16) !important;
	border: 1px solid rgba(34,197,94,.35) !important;
	color: #8ff5b1 !important;
}

body .iska-profile-edit-error,
body .iska-profile-edit-alert {
	background: rgba(239,68,68,.14) !important;
	border: 1px solid rgba(239,68,68,.35) !important;
	color: #fecaca !important;
}

@media (max-width: 768px) {
	body .iska-profile-edit-wrap {
		margin: 24px 14px 60px !important;
		padding: 28px 18px !important;
		border-radius: 22px !important;
	}

	body .iska-profile-edit-grid {
		grid-template-columns: 1fr !important;
	}

	body .iska-profile-edit-photo {
		flex-direction: column !important;
		text-align: center !important;
	}

	body .iska-profile-edit-actions button,
	body .iska-profile-edit-actions input[type="submit"] {
		width: 100% !important;
	}
}
/* =========================================================
   Kickboxing Québec — PAGE PROFIL MEMBRE
========================================================= */

.iska-profile-view-wrap {
	position: relative;
	overflow: hidden;
	padding: 70px 0 90px;
	background:
		radial-gradient(circle at top center, rgba(95,159,189,.16), transparent 34%),
		linear-gradient(180deg, #050505 0%, #0b0b0b 55%, #000 100%);
}

.iska-profile-view-wrap::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
	background-size: 44px 44px;
	opacity: .14;
	pointer-events: none;
}

.iska-profile-view-hero {
	position: relative;
	z-index: 2;
	width: min(1200px, calc(100% - 40px));
	margin: 0 auto 42px;
}

.iska-profile-view-badge {
	display: inline-flex;
	align-items: center;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(95,159,189,.12);
	border: 1px solid rgba(95,159,189,.35);
	color: #5f9fbd;
	font-size: 12px;
	font-weight: 950;
	letter-spacing: .14em;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.iska-profile-view-hero h1 {
	margin: 0 0 20px;
	color: #ffffff;
	font-size: clamp(42px, 6vw, 76px);
	font-weight: 950;
	line-height: .95;
	text-transform: uppercase;
	letter-spacing: -.05em;
}

.iska-profile-view-hero p {
	max-width: 860px;
	margin: 0;
	color: rgba(255,255,255,.78);
	font-size: 17px;
	line-height: 1.8;
	font-weight: 600;
}

.iska-profile-view-hero strong {
	color: #ffffff;
}

.iska-profile-view-card {
	position: relative;
	z-index: 2;
	width: min(1200px, calc(100% - 40px));
	margin: 0 auto;
}

@media (max-width: 768px) {

	.iska-profile-view-wrap {
		padding: 50px 0 70px;
	}

	.iska-profile-view-hero,
	.iska-profile-view-card {
		width: calc(100% - 28px);
	}

	.iska-profile-view-hero h1 {
		font-size: 42px;
	}

	.iska-profile-view-hero p {
		font-size: 15px;
	}
}

/* =========================================================
   Kickboxing Québec — PATCH STABILITÉ PMPro
   Évite les textes invisibles et garde les correctifs dans PMPro seulement.
========================================================= */
body .entry-content .pmpro input,
body .entry-content .pmpro textarea,
body .entry-content .pmpro select,
body .bt_bb_wrapper .pmpro input,
body .bt_bb_wrapper .pmpro textarea,
body .bt_bb_wrapper .pmpro select {
	background: rgba(255,255,255,.08) !important;
	color: #ffffff !important;
}

body .entry-content .pmpro input[type="submit"],
body .entry-content .pmpro button,
body .bt_bb_wrapper .pmpro input[type="submit"],
body .bt_bb_wrapper .pmpro button {
	color: #050505 !important;
}
.iska-school-club-stats{
	display:flex;
	gap:20px;
	margin:0 0 25px;
}

.iska-school-stat{
	flex:1;
	background:#0f172a;
	border:1px solid rgba(95,159,189,.25);
	border-radius:16px;
	padding:20px;
	text-align:center;
}

.iska-school-stat strong{
	display:block;
	font-size:32px;
	font-weight:700;
	color:#5f9fbd;
}

.iska-school-stat span{
	display:block;
	margin-top:6px;
	color:#cbd5e1;
	font-size:14px;
}
/* ==========================================================
   KICKBOXING QUÉBEC — PMPRO V4.1
   FINITIONS PROFIL + ADHÉSIONS
   ========================================================== */

/* ==========================================================
   01 — PROFIL : TOUS LES LIENS D'ACTION EN BOUTONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_actions {

    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;

    width: 100% !important;

    margin: 16px 0 0 !important;
    padding: 16px 0 0 !important;

    border-top: 1px solid rgba(255,255,255,.08) !important;
}

/* Les spans PMPro ne doivent pas casser la grille */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_action {

    display: contents !important;
}

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_action_separator {

    display: none !important;
}

/* Tous les liens, quelle que soit l'action */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_card_actions a {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;

    margin: 0 !important;
    padding: 10px 12px !important;

    background:
        linear-gradient(
            180deg,
            rgba(21,87,255,.16),
            rgba(21,87,255,.08)
        ) !important;

    border:
        1px solid rgba(21,87,255,.42) !important;

    border-radius: 12px !important;

    color: #ffffff !important;

    font-size: 11px !important;
    font-weight: 900 !important;

    line-height: 1.25 !important;

    text-align: center !important;
    text-decoration: none !important;

    text-transform: uppercase !important;
    letter-spacing: .04em !important;

    overflow-wrap: anywhere !important;
}

/* ==========================================================
   02 — PHOTO DE PROFIL
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-profile
#pmpro_actionlink-change-avatar {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;

    color: #ffffff !important;
}

/* ==========================================================
   03 — ADHÉSION : RÉDUIRE LES ESPACES
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card {

    margin: 0 !important;

    padding: 18px 0 !important;

    min-height: 0 !important;
    height: auto !important;

    border: 0 !important;

    border-bottom:
        1px solid rgba(255,255,255,.08) !important;

    background: transparent !important;

    box-shadow: none !important;
}

/* Première adhésion */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card:first-of-type {

    padding-top: 0 !important;
}

/* Dernière section */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card:last-of-type {

    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

/* ==========================================================
   04 — TITRE ADHÉSION
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_title {

    margin: 0 0 10px !important;

    padding: 0 !important;

    color: #ffffff !important;

    font-size: 20px !important;
    line-height: 1.3 !important;
}

/* ==========================================================
   05 — CONTENU ADHÉSION
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content {

    margin: 0 !important;
    padding: 0 !important;

    min-height: 0 !important;
    height: auto !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content > *:first-child {

    margin-top: 0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content > *:last-child {

    margin-bottom: 0 !important;
}

/* ==========================================================
   06 — ACTIONS ADHÉSION
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_actions {

    display: flex !important;

    flex-wrap: wrap !important;

    gap: 8px !important;

    width: 100% !important;

    min-height: 0 !important;
    height: auto !important;

    margin: 12px 0 0 !important;

    padding: 12px 0 0 !important;

    border-top:
        1px solid rgba(255,255,255,.07) !important;
}

/* ==========================================================
   07 — SUPPRIMER LES SÉPARATEURS PMPRO
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action_separator {

    display: none !important;
}

/* ==========================================================
   08 — ADMINISTRATION
   Éviter une énorme zone vide
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content:empty,

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_actions:empty {

    display: none !important;
}

/*
   Si PMPro injecte seulement des paragraphes vides
*/

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content > p:empty {

    display: none !important;
}

/* ==========================================================
   09 — PROFIL : INFORMATIONS UN PEU PLUS LARGES
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_list {

    grid-template-columns:
        minmax(0, .8fr)
        minmax(0, 1.2fr) !important;
}

/* E-mail : éviter les coupures trop agressives */

.iska-member-dashboard-wrap
#pmpro_account-profile
.pmpro_list_item {

    overflow-wrap: break-word !important;
    word-break: normal !important;
}

/* ==========================================================
   10 — HOVER
   ========================================================== */

@media (hover:hover) {

    .iska-member-dashboard-wrap
    #pmpro_account-profile
    .pmpro_card_actions a:hover {

        transform: translateY(-2px) !important;

        background:
            linear-gradient(
                135deg,
                #1557ff,
                #0b2e9f
            ) !important;

        border-color: #72a5ff !important;

        box-shadow:
            0 10px 25px rgba(21,87,255,.22) !important;
    }

}

/* ==========================================================
   11 — MOBILE
   ========================================================== */

@media (max-width: 600px) {

    .iska-member-dashboard-wrap
    #pmpro_account-profile
    .pmpro_list,

    .iska-member-dashboard-wrap
    #pmpro_account-profile
    .pmpro_card_actions {

        grid-template-columns: 1fr !important;
    }

}
/* ==========================================================
   KICKBOXING QUÉBEC — PMPRO V4.2
   ADHÉSIONS COMPACTES
   ========================================================== */

/* ==========================================================
   01 — CHAQUE ADHÉSION = BLOC COMPACT
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card {

    display: grid !important;

    grid-template-columns:
        minmax(0, 1fr)
        auto !important;

    grid-template-areas:
        "title actions"
        "content actions" !important;

    column-gap: 20px !important;
    row-gap: 6px !important;

    align-items: center !important;

    width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 22px 0 !important;

    background: transparent !important;

    border: 0 !important;
    border-bottom:
        1px solid rgba(255,255,255,.09) !important;

    border-radius: 0 !important;

    box-shadow: none !important;
}

/* ==========================================================
   02 — TITRE
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_title {

    grid-area: title !important;

    align-self: end !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;

    font-size: 19px !important;
    font-weight: 800 !important;

    line-height: 1.3 !important;
}

/* ==========================================================
   03 — CONTENU
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content {

    grid-area: content !important;

    width: 100% !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    align-self: start !important;
}

/* Supprime les espaces générés par paragraphes vides */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content p:empty,

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content br:only-child {

    display: none !important;
}

/* ==========================================================
   04 — ACTIONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_actions {

    grid-area: actions !important;

    display: flex !important;

    flex-direction: column !important;

    align-items: flex-end !important;
    justify-content: center !important;

    gap: 8px !important;

    width: auto !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
}

/* ==========================================================
   05 — ACTION INDIVIDUELLE
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action {

    display: block !important;

    width: auto !important;

    height: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action_separator {

    display: none !important;
}

/* ==========================================================
   06 — BOUTONS
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_action a {

    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 105px !important;
    min-height: 40px !important;

    margin: 0 !important;
    padding: 9px 16px !important;

    background:
        rgba(95,159,189,.10) !important;

    border:
        1px solid rgba(95,159,189,.38) !important;

    border-radius: 999px !important;

    color: #87c4df !important;

    font-size: 10px !important;
    font-weight: 900 !important;

    line-height: 1 !important;

    text-align: center !important;
    text-transform: uppercase !important;

    letter-spacing: .05em !important;
}

/* ==========================================================
   07 — PREMIÈRE / DERNIÈRE ADHÉSION
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card:first-of-type {

    padding-top: 0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card:last-of-type {

    border-bottom: 0 !important;
}

/* ==========================================================
   08 — EXPIRATION
   ========================================================== */

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content p {

    margin: 4px 0 !important;

    color:
        rgba(255,255,255,.72) !important;

    line-height: 1.5 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership
.pmpro_card_content strong {

    color: #ffffff !important;
}

/* ==========================================================
   09 — HOVER
   ========================================================== */

@media (hover:hover) {

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_action a:hover {

        transform: translateY(-2px) !important;

        background:
            linear-gradient(
                135deg,
                #5f9fbd,
                #87c4df
            ) !important;

        color: #05070b !important;

        box-shadow:
            0 8px 22px rgba(95,159,189,.18) !important;
    }

}

/* ==========================================================
   10 — MOBILE
   ========================================================== */

@media (max-width: 600px) {

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card {

        grid-template-columns: 1fr !important;

        grid-template-areas:
            "title"
            "content"
            "actions" !important;

        gap: 10px !important;
    }

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_actions {

        align-items: stretch !important;

        width: 100% !important;
    }

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_action,

    .iska-member-dashboard-wrap
    #pmpro_account-membership
    .pmpro_card_action a {

        width: 100% !important;
    }

}
/* ==========================================================
   KICKBOXING QUÉBEC — ACCÈS SPÉCIAUX
   ========================================================== */

.iska-special-access {
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,.09);
}

.iska-special-access-kicker {
    margin-bottom: 6px;
    color: #72a5ff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.iska-special-access h4 {
    margin: 0 0 16px;
    color: #fff;
    font-family: "Oswald", "Arial Narrow", Arial, sans-serif;
    font-size: 20px;
    font-weight: 800;
    text-transform: uppercase;
}

.iska-special-access-list {
    display: grid;
    gap: 10px;
}

.iska-special-access-item {
    display: flex;
    align-items: center;
    gap: 13px;

    padding: 14px 16px;

    background:
        linear-gradient(
            135deg,
            rgba(21,87,255,.10),
            rgba(255,255,255,.025)
        );

    border: 1px solid rgba(21,87,255,.24);
    border-radius: 12px;
}

.iska-special-access-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 38px;
    width: 38px;
    height: 38px;

    background: rgba(21,87,255,.14);
    border: 1px solid rgba(114,165,255,.28);
    border-radius: 10px;

    font-size: 18px;
}

.iska-special-access-info {
    min-width: 0;
}

.iska-special-access-name {
    display: block;

    color: #fff;

    font-size: 13px;
    font-weight: 900;

    line-height: 1.3;
}

.iska-special-access-status {
    display: block;

    margin-top: 3px;

    color: #72a5ff;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: .04em;
    text-transform: uppercase;
}
/* KICKBOXING QUÉBEC — V4.3.1
   Largeur intérieure des cartes */

.iska-member-dashboard-wrap .iska-card-shell {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    padding: 30px !important;
}

.iska-member-dashboard-wrap .iska-card-header {
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 18px !important;
    width: 100% !important;
}

.iska-member-dashboard-wrap .iska-card-icon,
.iska-member-dashboard-wrap .iska-card-heading {
    grid-column: auto !important;
    grid-row: auto !important;
    min-width: 0 !important;
}

.iska-member-dashboard-wrap .iska-card-body {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 26px 0 0 !important;
    box-sizing: border-box !important;
}

/* Adhésion : titre, informations, puis actions */

.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_card {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
        "title"
        "content"
        "actions" !important;
    gap: 12px !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_card_actions {
    align-items: flex-start !important;
}

/* Accès spéciaux : hauteur selon le contenu */

.iska-member-dashboard-wrap .kbq-v43-access-item {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
}

@media (max-width: 600px) {
    .iska-member-dashboard-wrap .iska-card-shell {
        padding: 22px !important;
    }
}/* V4.3.2 — Conteneur intérieur sur toute la largeur */

.iska-member-dashboard-wrap
.iska-member-dashboard-grid > .iska-member-card {
    display: block !important;
    min-width: 0 !important;
}

.iska-member-dashboard-wrap
.iska-member-card > .iska-card-shell {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

.iska-member-dashboard-wrap
.iska-member-card > .iska-card-topline {
    display: block !important;
    width: 100% !important;
}
/* V4.3.3 — Informations d’adhésion lisibles */

.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_card_content .pmpro_list {
    display: block !important;
    width: 100% !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_list_item {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 6px 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_list_item_label,
.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_list_item_value {
    flex: 0 1 auto !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.iska-member-dashboard-wrap
#pmpro_account-membership .pmpro_list_item_value {
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}
/* V4.3.4 — Tableau des commandes : contraste corrigé */

.iska-member-dashboard-wrap table.pmpro_table_orders {
    background: #0b1220 !important;
    color: #fff !important;
}

.iska-member-dashboard-wrap .pmpro_table_orders thead,
.iska-member-dashboard-wrap .pmpro_table_orders tbody,
.iska-member-dashboard-wrap .pmpro_table_orders tr,
.iska-member-dashboard-wrap .pmpro_table_orders th,
.iska-member-dashboard-wrap .pmpro_table_orders td {
    background: #0b1220 !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.12) !important;
}

.iska-member-dashboard-wrap .pmpro_table_orders th {
    background: #111c30 !important;
    color: #9fbdff !important;
}

.iska-member-dashboard-wrap .pmpro_table_orders td a {
    color: #9fbdff !important;
}

.iska-member-dashboard-wrap .pmpro_table_orders .pmpro_tag {
    background: #173d2b !important;
    color: #d4f8e1 !important;
    border: 1px solid #427c59 !important;
}