#simulateur-guadeloupe {
      --sg-bleu: #075985;
      --sg-turquoise: #0f766e;
      --sg-corail: #f97316;
      --sg-sable: #fff7ed;
      --sg-texte: #163047;
      --sg-muted: #5d7182;
      --sg-bordure: #dbe7ea;
      max-width: 1180px;
      max-height: 1900px;
      margin: 28px auto;
      overflow: auto;
      color: var(--sg-texte);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.45;
    }

    #simulateur-guadeloupe * {
      box-sizing: border-box;
    }

    #simulateur-guadeloupe .sg-coque {
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(15, 118, 110, .18);
      border-radius: 26px;
      background:
        radial-gradient(circle at 95% 2%, rgba(45, 212, 191, .2), transparent 23%),
        radial-gradient(circle at 3% 95%, rgba(251, 146, 60, .14), transparent 25%),
        #fff;
      box-shadow: 0 22px 65px rgba(8, 47, 73, .12);
    }

    #simulateur-guadeloupe .sg-entete {
      position: relative;
      padding: 28px 30px 25px;
      color: white;
      background: linear-gradient(120deg, #064e6b 0%, #087c79 58%, #14a38b 100%);
    }

    #simulateur-guadeloupe .sg-entete::after {
      content: "";
      position: absolute;
      right: -45px;
      bottom: -75px;
      width: 220px;
      height: 150px;
      border-radius: 50%;
      border: 18px solid rgba(255, 255, 255, .09);
      transform: rotate(-12deg);
    }

    #simulateur-guadeloupe .sg-sur-titre {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 9px;
      padding: 6px 11px;
      border: 1px solid rgba(255,255,255,.3);
      border-radius: 999px;
      background: rgba(255,255,255,.12);
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .07em;
      text-transform: uppercase;
    }

    #simulateur-guadeloupe h2 {
      max-width: 760px;
      margin: 0;
      font-size: clamp(25px, 4vw, 39px);
      line-height: 1.08;
      font-weight: 900;
      letter-spacing: -.035em;
    }

    #simulateur-guadeloupe .sg-intro {
      max-width: 790px;
      margin: 11px 0 0;
      color: rgba(255,255,255,.88);
      font-size: 15px;
    }

    #simulateur-guadeloupe .sg-contenu {
      display: grid;
      grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
      gap: 22px;
      padding: 22px;
    }

    #simulateur-guadeloupe .sg-panneau {
      min-width: 0;
      border: 1px solid var(--sg-bordure);
      border-radius: 20px;
      background: rgba(255,255,255,.96);
      box-shadow: 0 8px 28px rgba(8,47,73,.06);
    }

    #simulateur-guadeloupe .sg-formulaire {
      padding: 20px;
    }

    #simulateur-guadeloupe .sg-section {
      padding: 0 0 18px;
      margin: 0 0 18px;
      border-bottom: 1px dashed #cfdee2;
    }

    #simulateur-guadeloupe .sg-section:last-of-type {
      margin-bottom: 15px;
      padding-bottom: 0;
      border-bottom: 0;
    }

    #simulateur-guadeloupe .sg-label,
    #simulateur-guadeloupe legend {
      display: block;
      margin: 0 0 9px;
      color: #173e55;
      font-size: 14px;
      font-weight: 850;
    }

    #simulateur-guadeloupe .sg-aide {
      display: block;
      margin-top: -5px;
      margin-bottom: 10px;
      color: var(--sg-muted);
      font-size: 12px;
    }

    #simulateur-guadeloupe select {
      width: 100%;
      min-height: 44px;
      padding: 9px 36px 9px 12px;
      border: 1px solid #bbd0d7;
      border-radius: 12px;
      background-color: white;
      color: #163047;
      font: inherit;
      font-size: 14px;
      cursor: pointer;
    }

    #simulateur-guadeloupe select:focus,
    #simulateur-guadeloupe input:focus-visible,
    #simulateur-guadeloupe button:focus-visible {
      outline: 3px solid rgba(20, 184, 166, .25);
      outline-offset: 2px;
    }

    #simulateur-guadeloupe .sg-deux-colonnes {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 11px;
    }

    #simulateur-guadeloupe .sg-choix {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
    }

    #simulateur-guadeloupe .sg-option {
      position: relative;
      display: block;
      cursor: pointer;
    }

    #simulateur-guadeloupe .sg-option input {
      position: absolute;
      width: 1px;
      height: 1px;
      opacity: 0;
    }

    #simulateur-guadeloupe .sg-option span {
      display: flex;
      align-items: center;
      min-height: 42px;
      gap: 7px;
      padding: 9px 10px;
      border: 1px solid #cddde1;
      border-radius: 11px;
      background: #fff;
      color: #29495c;
      font-size: 13px;
      font-weight: 700;
      transition: .18s ease;
    }

    #simulateur-guadeloupe .sg-option input:checked + span {
      border-color: #0d9488;
      color: #075e59;
      background: #ecfdf8;
      box-shadow: inset 0 0 0 1px #0d9488;
    }

    #simulateur-guadeloupe .sg-option input:focus-visible + span {
      outline: 3px solid rgba(20, 184, 166, .25);
      outline-offset: 2px;
    }

    #simulateur-guadeloupe .sg-range-entete {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
    }

    #simulateur-guadeloupe .sg-valeur {
      padding: 4px 9px;
      border-radius: 999px;
      color: #075e59;
      background: #ccfbf1;
      font-size: 12px;
      font-weight: 850;
      white-space: nowrap;
    }

    #simulateur-guadeloupe input[type="range"] {
      width: 100%;
      accent-color: #0d9488;
      cursor: pointer;
    }

    #simulateur-guadeloupe .sg-echelle {
      display: flex;
      justify-content: space-between;
      margin-top: 3px;
      color: #71828e;
      font-size: 11px;
    }

    #simulateur-guadeloupe .sg-bouton {
      width: 100%;
      min-height: 50px;
      border: 0;
      border-radius: 14px;
      color: #fff;
      background: linear-gradient(115deg, #ea580c, #f97316);
      box-shadow: 0 9px 20px rgba(234,88,12,.25);
      font-size: 15px;
      font-weight: 900;
      cursor: pointer;
      transition: transform .18s ease, box-shadow .18s ease;
    }

    #simulateur-guadeloupe .sg-bouton:hover {
      transform: translateY(-1px);
      box-shadow: 0 12px 25px rgba(234,88,12,.3);
    }

    #simulateur-guadeloupe .sg-resultats {
      padding: 20px;
      background: linear-gradient(180deg, #f8fffe, #fff);
    }

    #simulateur-guadeloupe .sg-resultats-entete {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 15px;
    }

    #simulateur-guadeloupe .sg-resultats h3 {
      margin: 0;
      color: #103f56;
      font-size: 21px;
      font-weight: 900;
    }

    #simulateur-guadeloupe .sg-resultats-entete p {
      margin: 4px 0 0;
      color: var(--sg-muted);
      font-size: 13px;
    }

    #simulateur-guadeloupe .sg-indice-global {
      min-width: 72px;
      padding: 8px 10px;
      border-radius: 13px;
      text-align: center;
      background: #e6fffa;
      color: #086c64;
    }

    #simulateur-guadeloupe .sg-indice-global strong {
      display: block;
      font-size: 21px;
      line-height: 1;
    }

    #simulateur-guadeloupe .sg-indice-global small {
      font-size: 10px;
      font-weight: 800;
    }

    #simulateur-guadeloupe .sg-podium {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 10px;
      margin-bottom: 17px;
    }

    #simulateur-guadeloupe .sg-carte-mois {
      position: relative;
      min-width: 0;
      padding: 14px 12px 12px;
      overflow: hidden;
      border: 1px solid #d4e4e6;
      border-radius: 15px;
      background: #fff;
    }

    #simulateur-guadeloupe .sg-carte-mois.sg-premier {
      border-color: #2dd4bf;
      background: linear-gradient(145deg, #ecfdf8, #fff 65%);
      box-shadow: 0 8px 24px rgba(13,148,136,.13);
    }

    #simulateur-guadeloupe .sg-rang {
      position: absolute;
      top: 7px;
      right: 8px;
      color: #0f766e;
      font-size: 18px;
    }

    #simulateur-guadeloupe .sg-mois {
      margin-right: 24px;
      font-size: 16px;
      font-weight: 900;
    }

    #simulateur-guadeloupe .sg-score {
      margin: 3px 0 7px;
      color: #ea580c;
      font-size: 22px;
      font-weight: 950;
    }

    #simulateur-guadeloupe .sg-score span {
      color: #7a8b96;
      font-size: 11px;
      font-weight: 700;
    }

    #simulateur-guadeloupe .sg-mini-info {
      color: #557080;
      font-size: 11px;
    }

    #simulateur-guadeloupe .sg-explication {
      padding: 14px;
      margin-bottom: 17px;
      border-left: 4px solid #f97316;
      border-radius: 0 13px 13px 0;
      background: #fff7ed;
    }

    #simulateur-guadeloupe .sg-explication strong {
      display: block;
      margin-bottom: 5px;
      color: #9a3412;
      font-size: 14px;
    }

    #simulateur-guadeloupe .sg-explication p {
      margin: 0;
      color: #624331;
      font-size: 13px;
    }

    #simulateur-guadeloupe .sg-grille-titre {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      gap: 10px;
      margin-bottom: 9px;
    }

    #simulateur-guadeloupe .sg-grille-titre strong {
      font-size: 14px;
    }

    #simulateur-guadeloupe .sg-grille-titre span {
      color: #6b7f8b;
      font-size: 11px;
    }

    #simulateur-guadeloupe .sg-mois-grille {
      display: grid;
      grid-template-columns: repeat(6, minmax(0, 1fr));
      gap: 6px;
    }

    #simulateur-guadeloupe .sg-case-mois {
      padding: 8px 5px;
      border: 1px solid transparent;
      border-radius: 10px;
      text-align: center;
      background: var(--fond-score, #edf2f3);
      color: var(--couleur-score, #345);
      opacity: var(--opacite-score, 1);
    }

    #simulateur-guadeloupe .sg-case-mois strong {
      display: block;
      font-size: 11px;
    }

    #simulateur-guadeloupe .sg-case-mois span {
      display: block;
      font-size: 13px;
      font-weight: 900;
    }

    #simulateur-guadeloupe .sg-conseils {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 9px;
      margin-top: 16px;
    }

    #simulateur-guadeloupe .sg-conseil {
      padding: 11px;
      border: 1px solid #dce8eb;
      border-radius: 12px;
      background: #fff;
      color: #4e6675;
      font-size: 12px;
    }

    #simulateur-guadeloupe .sg-conseil strong {
      display: block;
      margin-bottom: 3px;
      color: #183f53;
    }

    #simulateur-guadeloupe .sg-note {
      margin: 15px 1px 0;
      color: #71828d;
      font-size: 10px;
      text-align: center;
    }

    #simulateur-guadeloupe .sg-desactive {
      opacity: .48;
      pointer-events: none;
    }

    @media (max-width: 850px) {
      #simulateur-guadeloupe .sg-contenu {
        grid-template-columns: 1fr;
      }

      #simulateur-guadeloupe .sg-mois-grille {
        grid-template-columns: repeat(6, 1fr);
      }
    }

    @media (max-width: 560px) {
      #simulateur-guadeloupe {
        margin: 14px auto;
        max-height: 1900px;
      }

      #simulateur-guadeloupe .sg-coque {
        border-radius: 18px;
      }

      #simulateur-guadeloupe .sg-entete {
        padding: 23px 18px;
      }

      #simulateur-guadeloupe .sg-contenu {
        padding: 11px;
        gap: 12px;
      }

      #simulateur-guadeloupe .sg-formulaire,
      #simulateur-guadeloupe .sg-resultats {
        padding: 15px;
      }

      #simulateur-guadeloupe .sg-podium {
        grid-template-columns: 1fr;
      }

      #simulateur-guadeloupe .sg-carte-mois {
        display: grid;
        grid-template-columns: 1fr auto;
        align-items: center;
      }

      #simulateur-guadeloupe .sg-carte-mois .sg-mini-info {
        grid-column: 1 / -1;
      }

      #simulateur-guadeloupe .sg-score {
        margin-right: 25px;
      }

      #simulateur-guadeloupe .sg-conseils {
        grid-template-columns: 1fr;
      }
    }
