.elementor-43975 .elementor-element.elementor-element-dc29219{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-43975 .elementor-element.elementor-element-9468075{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-43975 .elementor-element.elementor-element-c3f9cae{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-43975 .elementor-element.elementor-element-ca9fc42{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-43975 .elementor-element.elementor-element-4ed9bd6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:15px 15px 15px 15px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-43975 .elementor-element.elementor-element-4ed9bd6.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-43975 .elementor-element.elementor-element-9033341 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-43975 .elementor-element.elementor-element-3922576{--display:flex;--border-radius:15px 15px 15px 15px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-43975 .elementor-element.elementor-element-3922576:not(.elementor-motion-effects-element-type-background), .elementor-43975 .elementor-element.elementor-element-3922576 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-43975 .elementor-element.elementor-element-3922576.e-con{--align-self:center;}.elementor-43975 .elementor-element.elementor-element-66d3a66{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-43975 .elementor-element.elementor-element-79eae20{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-43975 .elementor-element.elementor-element-d993a04{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:15px 15px 15px 15px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-43975 .elementor-element.elementor-element-d993a04:not(.elementor-motion-effects-element-type-background), .elementor-43975 .elementor-element.elementor-element-d993a04 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#96C2FF;}.elementor-43975 .elementor-element.elementor-element-5165d37 > .elementor-widget-container{padding:10px 10px 10px 10px;}.elementor-43975 .elementor-element.elementor-element-9949126{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-43975 .elementor-element.elementor-element-8735d06 .elementor-button{background-color:var( --e-global-color-primary );fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-radius:10px 10px 10px 10px;}.elementor-43975 .elementor-element.elementor-element-8735d06 > .elementor-widget-container:hover{--e-transform-scale:1.2;}.elementor-43975 .elementor-element.elementor-element-8735d06 .elementor-button-content-wrapper{flex-direction:row;}.elementor-43975 .elementor-element.elementor-element-8735d06 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-43975 .elementor-element.elementor-element-973ecf5 .elementor-button{background-color:var( --e-global-color-primary );fill:var( --e-global-color-secondary );color:var( --e-global-color-secondary );border-radius:10px 10px 10px 10px;}.elementor-43975 .elementor-element.elementor-element-973ecf5 > .elementor-widget-container:hover{--e-transform-scale:1.2;}.elementor-43975 .elementor-element.elementor-element-973ecf5 .elementor-button-content-wrapper{flex-direction:row;}.elementor-43975 .elementor-element.elementor-element-973ecf5 .elementor-button .elementor-button-content-wrapper{gap:10px;}body.elementor-page-43975:not(.elementor-motion-effects-element-type-background), body.elementor-page-43975 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-43975 .elementor-element.elementor-element-9949126{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-43975 .elementor-element.elementor-element-c3f9cae{--width:30%;}.elementor-43975 .elementor-element.elementor-element-ca9fc42{--width:70%;}.elementor-43975 .elementor-element.elementor-element-4ed9bd6{--width:100%;}.elementor-43975 .elementor-element.elementor-element-79eae20{--width:100%;}.elementor-43975 .elementor-element.elementor-element-d993a04{--width:100%;}}@media(max-width:767px){.elementor-43975 .elementor-element.elementor-element-9949126{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for shortcode, class: .elementor-element-66d3a66 *//* ============================================================
   Poses de Son — CSS de surcharge pour Elementor
   À coller dans : Elementor → Paramètres de la page → CSS personnalisé
   (ou dans le widget Shortcode → Avancé → CSS personnalisé)
   ============================================================ */

/* --- Conteneur principal --- */
/* On force un fond clair et une couleur de texte foncée, pour neutraliser
   l'héritage d'un thème sombre ou d'un container Elementor stylé. */
.pds-app {
    background: linear-gradient(135deg, #fef9f3 0%, #fff5e6 100%) !important;
    color: #2c2416 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    padding: 24px !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
}

/* Force la couleur du texte sur TOUS les descendants
   (Elementor met souvent une couleur de texte héritée en blanc). */
.pds-app,
.pds-app p,
.pds-app span,
.pds-app div,
.pds-app label,
.pds-app td,
.pds-app th {
    color: #2c2416 !important;
}

/* --- Titre principal --- */
.pds-app .pds-title {
    color: #8b4513 !important;
    background: transparent !important;
    font-size: 1.6em !important;
    font-weight: 600 !important;
    text-align: center !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    margin: 0 0 4px 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

.pds-app .pds-sub {
    color: #8b6f47 !important;
    text-align: center !important;
}

/* --- Conteneur de la portée --- */
.pds-app .pds-staff-container {
    background: #fff !important;
    border-radius: 12px !important;
    padding: 20px !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04) !important;
}

/* --- SVG de la portée (lignes + note + clé) --- */
/* IMPORTANT : Elementor / certains thèmes appliquent fill: currentColor
   sur les <svg>, ce qui rendrait nos lignes et notes invisibles
   (peintes en blanc sur fond blanc). On force chaque type d'élément. */
.pds-app .pds-staff {
    background: transparent !important;
    filter: none !important;
}
.pds-app .pds-staff line {
    stroke: #333 !important;
    fill: none !important;
}
.pds-app .pds-staff text {
    fill: #2c2416 !important;
    stroke: none !important;
}
.pds-app .pds-staff ellipse {
    fill: #2c2416 !important;   /* tête de note pleine (noire) */
    stroke: #2c2416 !important;
}

/* --- Nom de la note sous la portée --- */
.pds-app .pds-note-label {
    color: #5d4e37 !important;
    font-size: 1.4em !important;
    font-weight: 600 !important;
    text-align: center !important;
    margin-top: 8px !important;
}
.pds-app .pds-note-name {
    color: #5d4e37 !important;
}

/* --- Boutons principaux --- */
.pds-app button {
    background: #8b4513 !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-size: 1em !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
    font-family: inherit !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-shadow: none !important;
    box-shadow: none !important;
    min-height: 0 !important;
    width: auto !important;
}
.pds-app button:hover:not(:disabled) {
    filter: brightness(1.1) !important;
    background: #8b4513 !important;
    color: #fff !important;
}
.pds-app button:disabled {
    background: #ccc !important;
    color: #fff !important;
    opacity: 0.7 !important;
}

/* --- Boutons secondaires (Nouvelle note, Arrêter, Reset) --- */
.pds-app button.pds-secondary {
    background: #fff !important;
    color: #8b4513 !important;
    border: 2px solid #8b4513 !important;
}
.pds-app button.pds-secondary:hover:not(:disabled) {
    background: rgba(0, 0, 0, 0.03) !important;
    color: #8b4513 !important;
}

/* --- Boutons ronds du header (⚙️ et 🏆) --- */
.pds-app .pds-btn-menu,
.pds-app .pds-btn-scores {
    background: transparent !important;
    color: #8b4513 !important;
    border: 2px solid #8b4513 !important;
    width: 38px !important;
    height: 38px !important;
    padding: 0 !important;
    border-radius: 50% !important;
}
.pds-app .pds-btn-menu:hover:not(:disabled),
.pds-app .pds-btn-scores:hover:not(:disabled) {
    background: rgba(0, 0, 0, 0.04) !important;
    color: #8b4513 !important;
}

/* --- Vu-mètre d'intonation --- */
.pds-app .pds-meter {
    background: #f0e4d0 !important;
    border-radius: 8px !important;
}

/* --- Statut --- */
.pds-app .pds-status {
    text-align: center !important;
    font-weight: 500 !important;
}
.pds-app .pds-status.pds-ok { color: #2e7d32 !important; }
.pds-app .pds-status.pds-ko { color: #c62828 !important; }
.pds-app .pds-status.pds-wait { color: #8b6f47 !important; }

/* --- Score (Réussies / Tentatives) --- */
.pds-app .pds-score b {
    color: #8b4513 !important;
}

/* --- Modales (réglages et scores) --- */
.pds-app .pds-modal-box {
    background: linear-gradient(135deg, #fef9f3 0%, #fff5e6 100%) !important;
    color: #2c2416 !important;
}
.pds-app .pds-modal-header h3 {
    color: #8b4513 !important;
    background: transparent !important;
}
.pds-app .pds-modal-header,
.pds-app .pds-modal-footer {
    background: transparent !important;
}
.pds-app .pds-menu-row label {
    color: #5d4e37 !important;
}
.pds-app .pds-menu-row select {
    background: #fff !important;
    color: #2c2416 !important;
    border: 1px solid #d4c4a8 !important;
}
.pds-app .pds-menu-hint {
    background: #fdf6e9 !important;
    color: #6b5530 !important;
}

/* --- Leaderboard (modale Scores) --- */
.pds-app .pds-leaderboard-wrapper {
    background: #fff !important;
}
.pds-app .pds-lb-tab {
    background: transparent !important;
    color: #8b6f47 !important;
    border: none !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    padding: 8px 14px !important;
}
.pds-app .pds-lb-tab.pds-lb-tab-active {
    color: #8b4513 !important;
    border-bottom-color: #8b4513 !important;
    background: transparent !important;
}
.pds-app .pds-leaderboard-table th {
    color: #8b6f47 !important;
}
.pds-app .pds-leaderboard-table td {
    color: #2c2416 !important;
}/* End custom CSS */