.woocommerce-account nav.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--support-tickets a::before {
    content: "\f468" !important;
    font-family: dashicons !important;
    display: inline-block !important;
    font-size: 16px !important;
    vertical-align: middle !important;
    margin-right: 8px !important;
}

/* ==============================================================
   TSTFW - Styles de l'espace Support (Mon Compte WooCommerce)
   ============================================================== */

/* --- Navigation des sous-onglets --- */
.tstfw-subnav-tabs {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 25px 0 !important;
    display: flex;
    gap: 20px;
    border-bottom: 2px solid #e2e8f0;
}

.tstfw-subnav-tabs li {
    margin: 0 !important;
}

.tstfw-tab-link {
    text-decoration: none !important;
    color: #64748b;
    font-weight: 600;
    font-size: 1.05em;
    padding: 10px 5px;
    display: inline-block;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
}

.tstfw-tab-link:hover {
    color: #0f172a;
}

.tstfw-tab-link.active {
    color: #0073aa; /* Couleur principale (à adapter à votre thème) */
    border-bottom-color: #0073aa;
}

/* --- Contenu des onglets --- */
.tstfw-tab-content {
    animation: tstfw-fade-in 0.4s ease-in-out;
}

@keyframes tstfw-fade-in {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

/* --- Formulaire de création de ticket --- */
#tstfw-ticket-form {
    background: #f8fafc;
    padding: 25px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

#tstfw-ticket-form label {
    font-weight: 600;
    color: #1e293b;
    display: block;
    margin-bottom: 8px;
}

#tstfw-ticket-form .input-text {
    background-color: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 4px;
    padding: 10px 15px;
    transition: border-color 0.3s ease;
}

#tstfw-ticket-form .input-text:focus {
    border-color: #0073aa;
    outline: none;
    box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.1);
}

#tstfw-ticket-form button[type="submit"] {
    background-color: #0073aa;
    color: #fff;
    border-radius: 4px;
    padding: 12px 24px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#tstfw-ticket-form button[type="submit"]:hover {
    background-color: #005177;
}

#tstfw-form-response {
    margin-top: 15px;
    font-weight: 500;
}

/* --- Tableau Mes Billets --- */
#tstfw-tickets-container .shop_table {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

#tstfw-tickets-container .shop_table th {
    background-color: #f1f5f9;
    color: #334155;
    text-transform: uppercase;
    font-size: 0.85em;
    letter-spacing: 0.5px;
}

/* --- Badges (Statuts et Priorités) --- */
.badge {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.8em;
    font-weight: 600;
    text-transform: uppercase;
}

/* Badges de Statut (par défaut Open) */
td:nth-child(5) .badge {
    background-color: #dcfce7;
    color: #166534;
}

/* Badges de Priorité */
td:nth-child(4) {
    font-weight: 500;
}
td:nth-child(4):contains("Haute"), td:nth-child(4):contains("High") { color: #dc2626; }
td:nth-child(4):contains("Basse"), td:nth-child(4):contains("Low") { color: #64748b; }


.tstfw-app{
    --tp-ink:#141719;--tp-muted:#6b7177;--tp-line:#e4e6e9;--tp-surface:#fff;--tp-canvas:#f7f7f8;
    --tp-brand:#b8460f;--tp-brand-ink:#8c3409;--tp-brand-soft:#fdf2ec;
    --tp-radius:10px;--tp-shadow:0 1px 2px rgba(20,23,25,.06),0 4px 16px rgba(20,23,25,.05);
    --tp-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;
    color:var(--tp-ink);
}
.tstfw-app *,.tstfw-app *::before,.tstfw-app *::after{box-sizing:border-box}
.tstfw-app :focus-visible{outline:2px solid var(--tp-brand);outline-offset:2px}
.tstfw-app__head{margin:0 0 22px}
.tstfw-app__eyebrow{font:600 11px/1 var(--tp-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--tp-brand);margin:0 0 8px}
.tstfw-app__head h2{margin:0;font-size:24px;line-height:1.2;letter-spacing:-.01em}
/* Onglets */
.tstfw-tabs{list-style:none;margin:0 0 24px;padding:0;display:flex;gap:4px;border-bottom:1px solid var(--tp-line)}
.tstfw-tabs li{margin:0;padding:0;list-style:none}
.tstfw-tabs li::before{display:none}
.tstfw-app .tstfw-tab-link{display:inline-block;padding:10px 16px;text-decoration:none;font-size:14px;font-weight:500;color:var(--tp-muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}
.tstfw-app .tstfw-tab-link:hover{color:var(--tp-ink)}
.tstfw-app .tstfw-tab-link.active{color:var(--tp-brand-ink);border-bottom-color:var(--tp-brand)}
/* Panneaux et champs */
.tstfw-panel{background:var(--tp-surface);border:1px solid var(--tp-line);border-radius:var(--tp-radius);box-shadow:var(--tp-shadow);padding:24px}
.tstfw-panel+.tstfw-panel{margin-top:18px}
.tstfw-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tstfw-field{margin:0 0 18px}
.tstfw-field label{display:block;margin:0 0 6px;font-size:13px;font-weight:600}
.tstfw-field .tstfw-hint{display:block;margin:6px 0 0;font-size:12px;font-weight:400;color:var(--tp-muted)}
.tstfw-app input.tstfw-input,.tstfw-app select.tstfw-input,.tstfw-app textarea.tstfw-input{width:100%;border:1px solid #c9ccd1;border-radius:8px;padding:11px 13px;font-size:15px;line-height:1.5;background:var(--tp-surface);color:var(--tp-ink);box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}
.tstfw-app select.tstfw-input{height:44px;padding:0 34px 0 13px}
.tstfw-app textarea.tstfw-input{min-height:140px;resize:vertical}
.tstfw-app .tstfw-input:focus{border-color:var(--tp-brand);outline:none;box-shadow:0 0 0 3px rgba(184,70,15,.12)}
.tstfw-req{color:var(--tp-brand);font-weight:600}
.tstfw-app input[type=file].tstfw-input{padding:10px 12px;font-size:14px;cursor:pointer}
.tstfw-app input[type=file].tstfw-input::file-selector-button{margin-right:12px;padding:6px 12px;border:1px solid var(--tp-line);border-radius:6px;background:var(--tp-canvas);color:var(--tp-ink);font-size:13px;font-weight:500;cursor:pointer}
.tstfw-msg__file{margin:12px 0 0}
.tstfw-msg__file img{display:block;max-width:180px;height:auto;border:1px solid var(--tp-line);border-radius:6px}
/* Boutons */
.tstfw-app .tstfw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 22px;border:1px solid var(--tp-brand);border-radius:8px;background:var(--tp-brand);color:#fff;font-size:15px;font-weight:600;line-height:1;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease}
.tstfw-app .tstfw-btn:hover{background:var(--tp-brand-ink);border-color:var(--tp-brand-ink);color:#fff}
.tstfw-app .tstfw-btn[disabled]{opacity:.55;cursor:default}
.tstfw-app .tstfw-btn--ghost{background:transparent;border-color:var(--tp-line);color:var(--tp-ink);min-height:38px;padding:0 16px;font-size:14px;font-weight:500}
.tstfw-app .tstfw-btn--ghost:hover{background:var(--tp-canvas);border-color:#c9ccd1;color:var(--tp-ink)}
.tstfw-app .tstfw-btn--small{min-height:34px;padding:0 14px;font-size:13px;font-weight:500}
/* Tableau des billets */
.tstfw-tablewrap{background:var(--tp-surface);border:1px solid var(--tp-line);border-radius:var(--tp-radius);box-shadow:var(--tp-shadow);overflow:hidden}
.tstfw-app table.tstfw-table{width:100%;margin:0;border:0;border-collapse:collapse;font-size:14px}
.tstfw-app .tstfw-table th{background:var(--tp-canvas);border:0;border-bottom:1px solid var(--tp-line);padding:12px 16px;text-align:left;font:600 11px/1 var(--tp-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tp-muted)}
.tstfw-app .tstfw-table td{border:0;border-top:1px solid #f0f1f2;padding:14px 16px;vertical-align:middle;background:var(--tp-surface)}
.tstfw-app .tstfw-table tbody tr:first-child td{border-top:0}
.tstfw-app .tstfw-table tbody tr:hover td{background:#fbfbfc}
.tstfw-id{font:500 12px/1 var(--tp-mono);color:var(--tp-muted)}
.tstfw-subject{font-weight:600}
.tstfw-date{font-size:12.5px;color:var(--tp-muted);white-space:nowrap}
.tstfw-empty{padding:44px 16px;text-align:center;color:var(--tp-muted)}
.tstfw-empty strong{display:block;font-size:16px;color:var(--tp-ink);margin-bottom:6px}
.tstfw-subject-cell{position:relative;padding-right:34px!important}
.tstfw-product-pencil{position:absolute;top:50%;right:10px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:16px;line-height:1;color:var(--tp-muted);cursor:help}
.tstfw-product-pencil:hover{color:var(--tp-ink)}
.tstfw-date{display:flex;flex-direction:column;gap:3px;font-size:10.5px;color:var(--tp-muted);white-space:nowrap}
.tstfw-date__day{display:block}
.tstfw-date__time{display:block;font-size:10.5px;opacity:.8}
.tstfw-id.tstfw-view-ticket-btn{padding:0;border:0;background:transparent;font:500 12px/1 var(--tp-mono);color:var(--tp-muted);cursor:pointer;text-decoration:none}
.tstfw-id.tstfw-view-ticket-btn:hover{color:var(--tp-ink);text-decoration:underline}
/* Badges */
.tstfw-badge{display:inline-block;padding:4px 10px;border-radius:999px;font:600 11px/1.4 var(--tp-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.tstfw-badge.is-open{background:#e7f2f9 !important;color:#0b6fa4 !important}
.tstfw-badge.is-answered{background:#e6f4ee !important;color:#12734f !important}
.tstfw-badge.is-pending{background:#fbf1dc !important;color:#8a5a00 !important}
.tstfw-badge.is-closed{background:#eceef0 !important;color:#5b6165 !important}
.tstfw-badge.is-awaiting_support{background:#fbf1dc !important;color:#8a5a00 !important;}
/* Fil de discussion */
.tstfw-ticket__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 4px}
.tstfw-ticket__head h3{margin:0 0 6px;font-size:19px;line-height:1.3;letter-spacing:-.01em}
.tstfw-ticket__meta{margin:0;font-size:13px;color:var(--tp-muted)}
.tstfw-thread{display:flex;flex-direction:column;gap:14px;margin:22px 0 0}
.tstfw-msg{border:1px solid var(--tp-line);border-left:3px solid #c9ccd1;border-radius:8px;padding:14px 18px;background:var(--tp-surface)}
.tstfw-msg.is-staff{border-left-color:var(--tp-brand);background:var(--tp-brand-soft)}
.tstfw-msg.is-client{margin-left:28px}
.tstfw-msg__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 8px}
.tstfw-msg__role{font:600 11px/1 var(--tp-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tp-muted)}
.tstfw-msg.is-staff .tstfw-msg__role{color:var(--tp-brand-ink)}
.tstfw-msg__time{font-size:11.5px;color:var(--tp-muted);white-space:nowrap}
.tstfw-msg__body{font-size:15px;line-height:1.65}
/* Messages d'état */
.tstfw-notice{margin:16px 0 0;padding:12px 14px;border-radius:8px;font-size:14px;background:var(--tp-canvas);color:var(--tp-muted)}
.tstfw-notice.is-success{background:#e6f4ee;color:#12734f}
.tstfw-notice.is-error{background:#fdecec;color:#a32222}
.tstfw-notice:empty{display:none}
.tstfw-loading{padding:30px;text-align:center;color:var(--tp-muted);font-size:14px}
.tstfw-locked{margin:22px 0 0;padding:14px 16px;border:1px dashed var(--tp-line);border-radius:8px;color:var(--tp-muted);font-size:14px;text-align:center}
.tstfw-ticket__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0 0;padding:16px 0 0;border-top:1px solid var(--tp-line)}
.tstfw-ticket__actions .tstfw-note{margin:0;font-size:12.5px;color:var(--tp-muted)}
.woocommerce-MyAccount-navigation-link--support-tickets a{display:flex;align-items:center;gap:8px}
.woocommerce-MyAccount-navigation-link--support-tickets a::before{content:"";flex:none;width:17px;height:17px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.6 2 11c0 2.5 1.4 4.7 3.6 6.2-.2 1.3-.9 2.6-1.9 3.6 1.8-.2 3.5-.9 4.9-2 1.1.3 2.2.5 3.4.5 5.5 0 10-3.6 10-8s-4.5-8-10-8z'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.6 2 11c0 2.5 1.4 4.7 3.6 6.2-.2 1.3-.9 2.6-1.9 3.6 1.8-.2 3.5-.9 4.9-2 1.1.3 2.2.5 3.4.5 5.5 0 10-3.6 10-8s-4.5-8-10-8z'/%3E%3C/svg%3E") no-repeat center/contain}
@media (max-width:640px){
    .tstfw-grid{grid-template-columns:1fr}
    .tstfw-panel{padding:18px}
    .tstfw-msg.is-client{margin-left:0}
    .tstfw-tablewrap{overflow-x:auto}
    .tstfw-app table.tstfw-table{min-width:620px}
}
@media (prefers-reduced-motion:reduce){.tstfw-app *{transition:none!important}}


/* ==============================================================
   TSTFW - Évaluation du support
   ============================================================== */

.tstfw-rating-box{
    margin:24px 0 0;
    padding:22px 24px;
    background:var(--tp-brand-soft);
    border:1px solid #f1d8cc;
    border-radius:var(--tp-radius);
    box-shadow:var(--tp-shadow);
}

.tstfw-rating-box h3{
    margin:0 0 6px;
    font-size:17px;
    line-height:1.3;
    color:var(--tp-ink);
}

.tstfw-rating-box > p{
    margin:6px 0 14px;
    font-size:13.5px;
    line-height:1.55;
    color:var(--tp-muted);
}


/* --------------------------------------------------------------
   Étoiles cliquables
   -------------------------------------------------------------- */

.tstfw-rating-stars{
    display:flex;
    align-items:center;
    gap:5px;
    margin:14px 0 18px;
}

.tstfw-rating-star{
    appearance:none;
    -webkit-appearance:none;
    border:0;
    background:transparent;
    padding:2px;
    margin:0;
    color:#c9ccd1;
    font-size:31px;
    line-height:1;
    cursor:pointer;
    transition:
        color .15s ease,
        transform .15s ease;
}

.tstfw-rating-star:hover{
    color:#e5a100;
    transform:translateY(-2px) scale(1.08);
}

.tstfw-rating-star:focus{
    outline:none;
}

.tstfw-rating-star:focus-visible{
    outline:2px solid var(--tp-brand);
    outline-offset:3px;
    border-radius:4px;
}


/* --------------------------------------------------------------
   Étoiles déjà enregistrées
   -------------------------------------------------------------- */

.tstfw-rating-stars-display{
    display:flex;
    gap:4px;
    margin:10px 0 14px;
    color:#e5a100;
    font-size:25px;
    line-height:1;
}


/* --------------------------------------------------------------
   Commentaire
   -------------------------------------------------------------- */

.tstfw-rating-comment{
    display:block;
    width:100%;
    min-height:90px;
    resize:vertical;
    margin:0;
    padding:11px 13px;
    background:#fff;
    color:var(--tp-ink);
    border:1px solid #c9ccd1;
    border-radius:8px;
    font-family:inherit;
    font-size:14px;
    line-height:1.5;
    box-shadow:none;
    transition:
        border-color .15s ease,
        box-shadow .15s ease;
}

.tstfw-rating-comment:focus{
    border-color:var(--tp-brand);
    outline:none;
    box-shadow:0 0 0 3px rgba(184,70,15,.12);
}

.tstfw-rating-comment::placeholder{
    color:#9ca3a8;
}


/* --------------------------------------------------------------
   Bouton évaluation
   -------------------------------------------------------------- */

.tstfw-rating-box .tstfw-save-rating{
    margin-top:5px;
}


/* --------------------------------------------------------------
   Message AJAX
   -------------------------------------------------------------- */

.tstfw-rating-response{
    display:none;
    margin:14px 0 0;
    padding:11px 14px;
    border-radius:8px;
    font-size:13.5px;
    line-height:1.5;
}

.tstfw-rating-response.is-success{
    display:block;
    background:#e6f4ee;
    color:#12734f;
    border:1px solid #cce9dc;
}

.tstfw-rating-response.is-error{
    display:block;
    background:#fdecec;
    color:#a32222;
    border:1px solid #f4cccc;
}


/* --------------------------------------------------------------
   Note déjà donnée
   -------------------------------------------------------------- */

.tstfw-rating-box strong{
    color:var(--tp-brand-ink);
}

.tstfw-rating-box .tstfw-rating-stars-display + p{
    margin-top:12px;
    padding:12px 14px;
    background:#fff;
    border:1px solid var(--tp-line);
    border-radius:8px;
    color:var(--tp-ink);
}

.tstfw-rating-star.is-active{
    color:#e5a100;
    transform:scale(1.05);
}

.tstfw-ticket-agent{
    display:block;
    margin-top:5px;
    font-size:9px;
    line-height:1.3;
    color:var(--tp-muted);
    white-space:nowrap;
}

.tstfw-ticket-agent::before{
    content:"•";
    margin-right:5px;
    color:var(--tp-brand);
}


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

@media (max-width:640px){

    .tstfw-rating-box{
        padding:18px;
    }

    .tstfw-rating-star{
        font-size:29px;
    }

    .tstfw-rating-stars{
        gap:3px;
    }
}
.woocommerce-MyAccount-navigation-link--support-tickets a{display:flex;align-items:center;gap:8px}

/* ==============================================================
   Heures d'ouverture - côté client
   ============================================================== */

.tstfw-hours-client{
	max-width:680px;
}

.tstfw-hours-client__head{
	margin:0 0 18px;
}

.tstfw-hours-client__head h3{
	margin:0 0 5px;
	font-size:18px;
	color:var(--tp-ink);
}

.tstfw-hours-client__head p{
	margin:0;
	font-size:13px;
	line-height:1.5;
	color:var(--tp-muted);
}

.tstfw-hours-client__list{
	border:1px solid var(--tp-line);
	border-radius:8px;
	overflow:hidden;
}

.tstfw-hours-client__row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	min-height:48px;
	padding:10px 16px;
	border-bottom:1px solid var(--tp-line);
	background:#fff;
}

.tstfw-hours-client__row:last-child{
	border-bottom:0;
}

.tstfw-hours-client__row:hover{
	background:var(--tp-canvas);
}

.tstfw-hours-client__day{
	font-size:14px;
	font-weight:600;
	color:var(--tp-ink);
}

.tstfw-hours-client__time{
	font:600 15px/1.4 var(--tp-mono);
	color:var(--tp-brand-ink);
}

.tstfw-hours-client__row.is-closed{
	background:#fafafa;
}

.tstfw-hours-client__row.is-closed .tstfw-hours-client__day{
	color:var(--tp-muted);
}

.tstfw-hours-client__closed{
	display:inline-block;
	padding:4px 9px;
	border-radius:999px;
	background:#eceef0;
	color:#6b7177;
	font-size:11px;
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:.04em;
}



@media(max-width:640px){

	.tstfw-hours-client__row{
		min-height:44px;
		padding:9px 12px;
	}

	.tstfw-hours-client__day{
		font-size:13px;
	}

	.tstfw-hours-client__time{
		font-size:11px;
	}
}
.woocommerce-MyAccount-navigation-link--support-tickets a::before{content:"";flex:none;width:17px;height:17px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.6 2 11c0 2.5 1.4 4.7 3.6 6.2-.2 1.3-.9 2.6-1.9 3.6 1.8-.2 3.5-.9 4.9-2 1.1.3 2.2.5 3.4.5 5.5 0 10-3.6 10-8s-4.5-8-10-8z'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.6 2 11c0 2.5 1.4 4.7 3.6 6.2-.2 1.3-.9 2.6-1.9 3.6 1.8-.2 3.5-.9 4.9-2 1.1.3 2.2.5 3.4.5 5.5 0 10-3.6 10-8s-4.5-8-10-8z'/%3E%3C/svg%3E") no-repeat center/contain}