/* ===============================
   QUESTION PAGE UI
================================ */

/* Alternate Question Background */
.gtd-q-row.alt-bg {
    background-color: rgb(210, 228, 237) !important;
    padding: 20px;
    border-radius: 10px;
}

/* Question Row */
.gtd-q-row {
    padding: 20px;
    margin-bottom: 8px;
    border-bottom: 1px solid #e5e7eb;
}

/* Main Title */
.gtd-main-form-title {
    text-align: center;
    color: #ED1B2F;
    font-size: 36px;
    margin-bottom: 35px;
    font-weight: 700;
}

/* Input Grid */
.gtd-grid-inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-bottom: 25px;
}

.gtd-lead-box input[type="text"],
.gtd-lead-box input[type="email"] {
    width: 100%;
    padding: 13px 14px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 14px;
}

/* Radio Buttons */
.gtd-q-row input[type="radio"] {
    margin-right: 6px;
    accent-color: #0089C1;
}

.gtd-q-row label {
    margin-right: 18px;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

/* ===============================
   RESULT PAGE UI
================================ */

:root {
    --gtd-red: #ff4d4d;
    --gtd-yellow: #ffcc00;
    --gtd-blue: #00C1F1;
    --gtd-green: #2eb82e;
}

.gtd-results-ui {
    padding: 40px;
    max-width: 1140px;
    margin: 0 auto;
    font-family: 'Inter', sans-serif;
}

/* User Greeting */
.gtd-user-hi {
    color: #0089C1;
    text-align: center;
    font-size: 26px;
    font-weight: 600;
    margin: 15px 0 10px;
}

/* Intro Text */
.gtd-main-intro {
    font-size: 14px;
    line-height: 1.6;
    color: #444;
    margin-bottom: 35px;
    text-align: justify;
}

.gtd-res-header {
    padding: 20px 20px 30px;
    border-radius: 12px;
    margin-bottom: 30px;
}

/* Download Button */
.gtd-btn-download {
    background: #0089C1;
    color: #ffffff;
    border: none;
    padding: 12px 28px;
    border-radius: 30px;
    cursor: pointer;
    font-weight: 600;
    font-size: 14px;
    transition: background 0.2s ease;
}
.gtd-btn-download:hover {
    background: #006f9c;
}

/* ===============================
   LEGEND
================================ */

.gtd-legend-container {
    display: flex;
    justify-content: center !important;
    align-items: left !important;
    gap: 25px;
    margin-bottom: 30px;
    font-size: 14px !important;
    font-weight: 600;
    flex-wrap: wrap;
}

.gtd-legend-title {
    color: #0089C1;
      font-size: 24px !important;
    margin-right: 10px;
}

.leg-box {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 16px !important;
}

.dot {
    width: 34px;
    height: 14px;
    border-radius: 4px;
    display: inline-block;
}

.dot.red { background: var(--gtd-red); }
.dot.yellow { background: var(--gtd-yellow); }
.dot.blue { background: var(--gtd-blue); }
.dot.green { background: var(--gtd-green); }

/* ===============================
   SCORE BLOCKS
================================ */

.gtd-score-block {
    margin-bottom: 45px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e5e7eb;
}

/* Section Heading */
.gtd-section-label {
    font-size: 18px !important;
    color: #111827;
    margin-bottom: 14px;
    font-weight: 500;
}

/* ===============================
   PROGRESS BARS
================================ */

.gtd-bar-bg {
    background: #cbf2fc !important;
    height: 22px !important;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #6b7280;
    width: 100% !important;
    display: block !important;
    position: relative;
}


.gtd-bar-fill {
    height: 100% !important;
    border-radius: 12px;
    transition: width 0.8s ease-in-out;
    display: block !important;
    min-width: 4px; /* always show a sliver so 0% is visible */
    background-color: var(--bar-base, #00C1F1) !important;
    background-image: repeating-linear-gradient(
        45deg,
        var(--bar-stripe, rgba(255, 255, 255, 0.18)) 0,
        var(--bar-stripe, rgba(255, 255, 255, 0.18)) 10px,
        rgba(255, 255, 255, 0) 10px,
        rgba(255, 255, 255, 0) 20px
    ) !important;
}

/* Bar Colors — all use CSS vars so the gradient + solid base both work */
.bar-red    { --bar-base: #ff4d4d; --bar-stripe: rgba(0,0,0,0.10); }
.bar-yellow { --bar-base: #ffcc00; --bar-stripe: rgba(0,0,0,0.08); }
.bar-orange { --bar-base: #ff9933; --bar-stripe: rgba(0,0,0,0.08); }
.bar-blue   { --bar-base: #00C1F1; --bar-stripe: rgba(0,0,0,0.08); }
.bar-green  { --bar-base: #2eb82e; --bar-stripe: rgba(0,0,0,0.08); }

/* Labels */
.gtd-bar-labels {
    display: flex;
    justify-content: space-between;
    margin-top: 8px;
}

.gtd-bar-labels span {
    width: 25%;
    font-size: 11px;
    font-weight: 700;
    color: #6b7280;
    text-transform: uppercase;
    text-align: center;
}

/* ===============================
   DESCRIPTION TEXT
================================ */

.gtd-desc-text {
    font-size: 14px;
    color: #333;
    margin-top: 16px;
    line-height: 1.65;
}

/* ===============================
   SUBMIT BUTTON
================================ */

.gtd-submit-main {
    width: 100%;
    background: #ED1B2F;
    color: #ffffff;
    border: none;
    padding: 16px;
    border-radius: 30px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
}

/* ===============================
   FORM LABELS
================================ */

label,
legend {
    color: #111827;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    margin-left: 16px;
}

/* ===============================
   PRINT / PDF OPTIMIZATION
================================ */

@media print {
    .gtd-btn-download {
        display: none;
    }
    .gtd-results-ui {
        padding: 0;
    }
}