
.circular-meter {
    width: 120px;
    height: 120px;
}

.circle-bg {
    fill: none;
    stroke: #eee;
    stroke-width: 3.8;
}

.circle {
    fill: none;
    stroke: #28a745;
    stroke-width: 3.8;
    stroke-linecap: round;
    transition: stroke-dasharray 0.6s ease;
}

.percentage {
    fill: #333;
    font-family: 'Arial', sans-serif;
    font-size: 0.5em;
    text-anchor: middle;
}
.challenge-box {
    border: 2px dotted #000;
    border-radius: 10px;
    padding: 1rem;
    height: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  .switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 24px;
  }

  .switch input {
    opacity: 0;
    width: 0;
    height: 0;
  }
  .bg-green-500{
    border: 1px solid green;
    background-color: rgb(214, 245, 214);
  }
  .bg-red-500{
    border: 1px solid red;
    background-color: rgb(251, 199, 199);
  }

  .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
    border-radius: 34px;
  }

  .slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: black;
    transition: .4s;
    border-radius: 50%;
  }

  input:checked + .slider {
    background-color: black;
  }

  input:checked + .slider:before {
    transform: translateX(26px);
    background-color: white;
  }
.flag-icon-background,
.flag-icon {
    background-size: contain;
    background-position: 50%;
    background-repeat: no-repeat;
}

.flag-icon {
    position: relative;
    display: inline-block;
    width: 1.33333333em;
    line-height: 1em;
}

.flag-icon:before {
    content: '\A0';
}

.flag-icon.flag-icon-squared {
    width: 1em;
}


.flag-icon-cz {
    background-image: url("/flags/4x3/cz.svg?626a83dc74f55da0d78c0973cd02513d");
}

.flag-icon-cz.flag-icon-squared {
    background-image: url("/flags/1x1/cz.svg?b8ea35390c7437696a5404b72a2a1477");
}

.flag-icon-de {
    background-image: url("/flags/4x3/de.svg?903d6a160f661be0793082b09b8d0d61");
}

.flag-icon-de.flag-icon-squared {
    background-image: url("/flags/1x1/de.svg?0cc650a4627ba53947f3fa73010b1567");
}

.flag-icon-es {
    background-image: url("/flags/4x3/es.svg?d53b3ecf056ae78235982d4f2a1e3c75");
}

.flag-icon-es.flag-icon-squared {
    background-image: url("/flags/1x1/es.svg?b336c61e1485ab31fbe91b51adf33752");
}

.flag-icon-fi {
    background-image: url("/flags/4x3/fi.svg?502ae3c881b7445b410d30cc7f7a6f9c");
}

.flag-icon-fi.flag-icon-squared {
    background-image: url("/flags/1x1/fi.svg?7c9555e69b98c81485dd9c4d338eda1c");
}

.flag-icon-fr {
    background-image: url("/flags/4x3/fr.svg?24841de9d5ad4cebb1be5c4dc19fc89f");
}

.flag-icon-fr.flag-icon-squared {
    background-image: url("/flags/1x1/fr.svg?11614fc421695cb66a88b861caac0c00");
}

.flag-icon-gb {
    background-image: url("/flags/4x3/gb.svg?fd72d9b5184b47afb2f7b4db0c8a35de");
}

.flag-icon-gb.flag-icon-squared {
    background-image: url("/flags/1x1/gb.svg?3de413a6f455e1e35121519f2e0deb75");
}

.flag-icon-ru {
    background-image: url("/flags/4x3/ru.svg?073f6ef795fdf4440534d05fa592f2d0");
}

.flag-icon-ru.flag-icon-squared {
    background-image: url("/flags/1x1/ru.svg?320b9fd3e4f84002c460167ab4ce5d1d");
}

.flag-icon-se {
    background-image: url("/flags/4x3/se.svg?1074a609a9d79cd5bfcd58266f5ac462");
}

.flag-icon-se.flag-icon-squared {
    background-image: url("/flags/1x1/se.svg?5e1d567b3571ff1bce4cd6480e075520");
}

.flag-icon-us {
    background-image: url("/flags/4x3/us.svg?2382ea7ec7cc55bfe1cc7a3ea8326989");
}

.flag-icon-us.flag-icon-squared {
    background-image: url("/flags/1x1/us.svg?68a3bd517b613cf3b0153b866366bf12");
}


.maptable {
    width: 100%;
    font-size: small;
}

.maptable td {
    border: 1px solid gray;
}

.maptable .map {
    text-align: center;
}

.maptable td[class^="c"] {
    text-align: center;
    vertical-align: middle;
    color: #000;
    font-weight: bold;
}

.map-definition {
    font-size: small;
}

a[data-toggle="popover"] {
    cursor: pointer;
    color: #000;
}

.lb {
    border-left: 1px solid #000;
}

.rb {
    border-right: 1px solid #000;
}

.c0 {
    background-color: #ddd;
}

.c1 {
    background-color: #cc0000;
}

.c2 {
    background-color: #cc0000;
}

.c3 {
    background-color: #ff0000;
}

.c4 {
    background-color: #ff0000;
}

.c5 {
    background-color: #ff0800;
}

.c6 {
    background-color: #ff0800;
}

.c7 {
    background-color: #ff0800;
}

.c8 {
    background-color: #ff0800;
}

.c9 {
    background-color: #ff1900;
}

.c10 {
    background-color: #ff1900;
}

.c11 {
    background-color: #ff1900;
}

.c12 {
    background-color: #ff1900;
}

.c13 {
    background-color: #ff1900;
}

.c14 {
    background-color: #ff1900;
}

.c15 {
    background-color: #ff1900;
}

.c16 {
    background-color: #ff1900;
}

.c17 {
    background-color: #ff3b00;
}

.c18 {
    background-color: #ff3b00;
}

.c19 {
    background-color: #ff3b00;
}

.c20 {
    background-color: #ff3b00;
}

.c21 {
    background-color: #ff3b00;
}

.c22 {
    background-color: #ff3b00;
}

.c23 {
    background-color: #ff5500;
}

.c24 {
    background-color: #ff5500;
}

.c25 {
    background-color: #ff5d00;
}

.c26 {
    background-color: #ff5d00;
}

.c27 {
    background-color: #ff6600;
}

.c28 {
    background-color: #ff6600;
}

.c29 {
    background-color: #ff5d00;
}

.c30 {
    background-color: #ff5d00;
}

.c31 {
    background-color: #ff7700;
}

.c32 {
    background-color: #ff7700;
}

.c33 {
    background-color: #ff7f00;
}

.c34 {
    background-color: #ff7f00;
}

.c35 {
    background-color: #ff8800;
}

.c36 {
    background-color: #ff8800;
}

.c37 {
    background-color: #ff9000;
}

.c38 {
    background-color: #ff9000;
}

.c39 {
    background-color: #ff9900;
}

.c40 {
    background-color: #ff9900;
}

.c41 {
    background-color: #ffa100;
}

.c42 {
    background-color: #ffaa00;
}

.c43 {
    background-color: #ffb200;
}

.c44 {
    background-color: #ffb200;
}

.c45 {
    background-color: #ffc300;
}

.c46 {
    background-color: #ffcc00;
}

.c47 {
    background-color: #ffd400;
}

.c48 {
    background-color: #ffdd00;
}

.c49 {
    background-color: #ffe500;
}

.c50 {
    background-color: #ffe500;
}

.c51 {
    background-color: #fff600;
}

.c52 {
    background-color: #fff600;
}

.c53 {
    background-color: #fff600;
}

.c54 {
    background-color: #ffff00;
}

.c55 {
    background-color: #ffff00;
}

.c56 {
    background-color: #ffff00;
}

.c57 {
    background-color: #fff600;
}

.c58 {
    background-color: #fff600;
}

.c59 {
    background-color: #fff600;
}

.c60 {
    background-color: #eefb00;
}

.c61 {
    background-color: #eefb00;
}

.c62 {
    background-color: #eefb00;
}

.c63 {
    background-color: #eefb00;
}

.c64 {
    background-color: #eefb00;
}

.c65 {
    background-color: #eefb00;
}

.c66 {
    background-color: #eefb00;
}

.c67 {
    background-color: #eefb00;
}

.c68 {
    background-color: #eefb00;
}

.c69 {
    background-color: #d4f600;
}

.c70 {
    background-color: #d4f600;
}

.c71 {
    background-color: #d4f600;
}

.c72 {
    background-color: #d4f600;
}

.c73 {
    background-color: #d4f600;
}

.c74 {
    background-color: #c3f300;
}

.c75 {
    background-color: #c3f300;
}

.c76 {
    background-color: #c3f300;
}

.c77 {
    background-color: #c3f300;
}

.c78 {
    background-color: #c3f300;
}

.c79 {
    background-color: #aaee00;
}

.c80 {
    background-color: #aaee00;
}

.c81 {
    background-color: #aaee00;
}

.c82 {
    background-color: #90e800;
}

.c83 {
    background-color: #90e800;
}

.c84 {
    background-color: #90e800;
}

.c85 {
    background-color: #90e800;
}

.c86 {
    background-color: #6ee200;
}

.c87 {
    background-color: #6ee200;
}

.c88 {
    background-color: #6ee200;
}

.c89 {
    background-color: #6ee200;
}

.c90 {
    background-color: #4cdb00;
}

.c91 {
    background-color: #4cdb00;
}

.c92 {
    background-color: #4cdb00;
}

.c93 {
    background-color: #4cdb00;
}

.c94 {
    background-color: #4cdb00;
}

.c95 {
    background-color: #4cdb00;
}

.c96 {
    background-color: #19d100;
}

.c97 {
    background-color: #19d100;
}

.c98 {
    background-color: #19d100;
}

.c99 {
    background-color: #19d100;
}

.c100 {
    background-color: #19d100;
}

.c101 {
    background-color: #19d100;
}

.c102 {
    background-color: #19d100;
}

.c103 {
    background-color: #19d100;
}

.c104 {
    background-color: #19d100;
}

.c105 {
    background-color: #19d100;
}

.c106 {
    background-color: #19d100;
}

.c107 {
    background-color: #19d100;
}

.c108 {
    background-color: #19d100;
}

.c109 {
    background-color: #19d100;
}

.c110 {
    background-color: #19d100;
}

.c111 {
    background-color: #19d100;
}

.c112 {
    background-color: #19d100;
}

.c113 {
    background-color: #19d100;
}

.c114 {
    background-color: #19d100;
}

.c115 {
    background-color: #19d100;
}

.c116 {
    background-color: #19d100;
}

.c117 {
    background-color: #19d100;
}

.c118 {
    background-color: #19d100;
}

.c119 {
    background-color: #19d100;
}

.c120 {
    background-color: #19d100;
}

.c121 {
    background-color: #19d100;
}

.c122 {
    background-color: #19d100;
}

.c123 {
    background-color: #19d100;
}

.c124 {
    background-color: #19d100;
}

.c125 {
    background-color: #19d100;
}

.c126 {
    background-color: #19d100;
}

.c127 {
    background-color: #19d100;
}

.c128 {
    background-color: #19d100;
}

.c129 {
    background-color: #19d100;
}

.c130 {
    background-color: #19d100;
}

.c131 {
    background-color: #19d100;
}

.c132 {
    background-color: #19d100;
}

.c133 {
    background-color: #19d100;
}

.c134 {
    background-color: #19d100;
}

.c135 {
    background-color: #19d100;
}

.c136 {
    background-color: #19d100;
}

.c137 {
    background-color: #19d100;
}

.c138 {
    background-color: #19d100;
}

.c139 {
    background-color: #19d100;
}

.c140 {
    background-color: #19d100;
}

.c141 {
    background-color: #19d100;
}

.c142 {
    background-color: #19d100;
}

.c143 {
    background-color: #19d100;
}

.c144 {
    background-color: #19d100;
}

.c145 {
    background-color: #19d100;
}

.c146 {
    background-color: #19d100;
}

.c147 {
    background-color: #19d100;
}

.c148 {
    background-color: #19d100;
}

.c149 {
    background-color: #19d100;
}

.c150 {
    background-color: #19d100;
}

.c151 {
    background-color: #19d100;
}

.c152 {
    background-color: #19d100;
}

.c153 {
    background-color: #19d100;
}

.c154 {
    background-color: #19d100;
}

.c155 {
    background-color: #19d100;
}

.c156 {
    background-color: #19d100;
}

.c157 {
    background-color: #19d100;
}

.c158 {
    background-color: #19d100;
}

.c159 {
    background-color: #19d100;
}

.c160 {
    background-color: #19d100;
}

.c161 {
    background-color: #19d100;
}

.c162 {
    background-color: #19d100;
}

.c163 {
    background-color: #19d100;
}

.c164 {
    background-color: #19d100;
}

.c165 {
    background-color: #19d100;
}

.c166 {
    background-color: #19d100;
}

.c167 {
    background-color: #19d100;
}

.c168 {
    background-color: #19d100;
}

.c169 {
    background-color: #19d100;
}

.c170 {
    background-color: #19d100;
}

.c171 {
    background-color: #19d100;
}

.c172 {
    background-color: #19d100;
}

.c173 {
    background-color: #19d100;
}

.c174 {
    background-color: #19d100;
}

.c175 {
    background-color: #19d100;
}

.c176 {
    background-color: #19d100;
}

.c177 {
    background-color: #19d100;
}

.c178 {
    background-color: #19d100;
}

.c179 {
    background-color: #19d100;
}

.c180 {
    background-color: #19d100;
}

.c181 {
    background-color: #19d100;
}

.c182 {
    background-color: #19d100;
}

.c183 {
    background-color: #19d100;
}

.c184 {
    background-color: #19d100;
}

.c185 {
    background-color: #19d100;
}

.c186 {
    background-color: #19d100;
}

.c187 {
    background-color: #19d100;
}

.c188 {
    background-color: #19d100;
}

.c189 {
    background-color: #19d100;
}

.c190 {
    background-color: #19d100;
}

.c191 {
    background-color: #19d100;
}

.c192 {
    background-color: #19d100;
}

.c193 {
    background-color: #19d100;
}

.c194 {
    background-color: #19d100;
}

.c195 {
    background-color: #19d100;
}

.c196 {
    background-color: #19d100;
}

.c197 {
    background-color: #19d100;
}

.c198 {
    background-color: #19d100;
}

.c199 {
    background-color: #19d100;
}

.c200 {
    background-color: #19d100;
}

td[class^="c"] {
    color: #000;
    text-align: center;
    vertical-align: middle;
}

.responsive-width {
    font-size: 1.5vw;
    margin-top: 4px;
}

/* X-Factor Brand Styling */
.brand-orange {
    color: #FE5000;
}

/* Trajectory X Logo Styling */
.navbar-logo {
    height: 16px !important;
    width: 16px !important;
    max-height: 16px !important;
    max-width: 16px !important;
    vertical-align: middle;
    margin-right: 8px;
    object-fit: contain;
    display: inline-block;
}

.navbar-brand .navbar-logo {
    height: 16px !important;
    width: 16px !important;
    max-height: 16px !important;
    max-width: 16px !important;
}

.brand-logo-large {
    height: 80px;
    max-height: 80px;
    margin-bottom: 1rem;
    object-fit: contain;
}

/* Athlete Invite Page Styling */
.invite-hero {
    background: linear-gradient(135deg, #F9FAFB 0%, #F3F4F6 100%);
    padding: 48px 32px;
    border-radius: 12px;
    margin-bottom: 48px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.invite-hero h1 {
    font-size: 32px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 16px;
    text-align: center;
}

.invite-hero .org-name {
    color: #DC2626;
    font-weight: 700;
}

.invite-hero p {
    font-size: 18px;
    line-height: 1.6;
    color: #6B7280;
    margin-bottom: 24px;
    text-align: center;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

/* Feature Table Styling */
.invite-hero .table {
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    margin-top: 32px;
}

.invite-hero .table thead th {
    background: linear-gradient(135deg, #DC2626 0%, #B91C1C 100%);
    color: white;
    font-weight: 600;
    font-size: 18px;
    padding: 24px 16px;
    border: none;
    vertical-align: middle;
    line-height: 1.4;
}

.invite-hero .table tbody td {
    padding: 24px 16px;
    font-size: 16px;
    color: #6B7280;
    line-height: 1.6;
    vertical-align: middle;
    border-color: #E5E7EB;
}

.invite-hero .table thead th br {
    margin: 4px 0;
}

@media (max-width: 767px) {
    .invite-hero .table thead th,
    .invite-hero .table tbody td {
        font-size: 14px;
        padding: 16px 12px;
    }
}

.program-features {
    display: grid;
    grid-template-columns: 1fr;
    gap: 32px;
    margin-top: 32px;
}

@media (min-width: 768px) {
    .program-features {
        grid-template-columns: repeat(3, 1fr);
    }
}

.feature-step {
    background: white;
    padding: 32px;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s, box-shadow 0.2s;
}

.feature-step:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
}

.feature-step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background-color: #DC2626;
    color: white;
    border-radius: 50%;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 16px;
}

.feature-step h3 {
    font-size: 22px;
    margin-bottom: 12px;
    color: #111827;
    font-weight: 600;
}

.feature-step p {
    color: #6B7280;
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
}

.registration-section {
    background: white;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    max-width: 700px;
    margin: 0 auto;
}

.registration-section h2 {
    font-size: 24px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 24px;
    text-align: center;
    padding-bottom: 16px;
    border-bottom: 2px solid #E5E7EB;
}

