:root {
    --yildirim-blue: #0054a6;
    --yildirim-blue-deep: #0f3256;
    --yildirim-aqua: #33bfd5;
    --yildirim-red: #e03b3b;
    --yildirim-mist: #eef6fb;
    --yildirim-text: #17324d;
    --yildirim-card-shadow: 0 18px 42px rgba(15, 50, 86, 0.12);
}

body {
    background:
        radial-gradient(circle at top right, rgba(51, 191, 213, 0.18), transparent 30%),
        linear-gradient(180deg, #f8fbfe 0%, #eef5fb 100%);
    color: var(--yildirim-text);
}

body .top-container {
    position: relative;
}

body .top-container::before {
    content: "";
    display: block;
    height: 8px;
    background: linear-gradient(90deg, var(--yildirim-blue) 0%, var(--yildirim-aqua) 72%, var(--yildirim-red) 100%);
    border-radius: 0 0 10px 10px;
    margin-bottom: 1rem;
}

.navbar,
.survey-main-wrapper,
.group-container {
    background: transparent;
}

.navbar-brand.logo-container,
.navbar-brand {
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
}

.navbar-brand img {
    max-height: 76px;
    width: auto;
}

.survey-name,
.group-title,
.question-title,
.text-primary {
    color: var(--yildirim-blue-deep);
}

.survey-name {
    font-weight: 800;
    letter-spacing: -0.02em;
}

.survey-description,
.questionhelp,
.help-block,
.ls-privacy-message {
    color: #4f6780;
}

.progress {
    height: 0.75rem;
    background: rgba(0, 84, 166, 0.1);
    border-radius: 999px;
    overflow: hidden;
}

.progress-bar {
    background: linear-gradient(90deg, var(--yildirim-aqua) 0%, var(--yildirim-blue) 100%);
}

.question-container,
.ls-question,
.panel,
.well {
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(0, 84, 166, 0.1);
    border-radius: 20px;
    box-shadow: var(--yildirim-card-shadow);
}

.question-container {
    padding: 1.5rem;
    margin-bottom: 1.25rem;
}

.answer-item label,
.radio label,
.checkbox label {
    border-radius: 14px;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.answer-item label:hover,
.radio label:hover,
.checkbox label:hover {
    background: rgba(51, 191, 213, 0.08);
}

input:focus,
select:focus,
textarea:focus,
.form-control:focus {
    border-color: var(--yildirim-aqua);
    box-shadow: 0 0 0 0.2rem rgba(51, 191, 213, 0.18);
}

.btn,
.btn-primary,
.btn-default,
button[type="submit"] {
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.btn-primary,
button[type="submit"],
.ls-move-btn-container .btn {
    background: linear-gradient(135deg, var(--yildirim-blue) 0%, var(--yildirim-aqua) 100%);
    border-color: transparent;
    color: #fff;
    box-shadow: 0 12px 24px rgba(0, 84, 166, 0.18);
}

.btn-primary:hover,
button[type="submit"]:hover,
.ls-move-btn-container .btn:hover,
.btn-primary:focus,
button[type="submit"]:focus,
.ls-move-btn-container .btn:focus {
    background: linear-gradient(135deg, #0b66c6 0%, #2ba9be 100%);
    color: #fff;
}

.btn-default,
.btn-outline-secondary {
    border: 1px solid rgba(0, 84, 166, 0.2);
    background: #fff;
    color: var(--yildirim-blue-deep);
}

.completed-table,
.completed-text,
.alert-success {
    border-radius: 18px;
    border: 1px solid rgba(51, 191, 213, 0.2);
    background: linear-gradient(180deg, rgba(51, 191, 213, 0.08), rgba(255, 255, 255, 0.95));
}

.ls-em-error,
.text-danger,
.help-block.text-danger,
.alert-danger {
    color: #b22020;
}

.footer,
.survey-footer {
    color: #5c7288;
}

@media (max-width: 767px) {
    .navbar-brand img {
        max-height: 60px;
    }

    .question-container {
        padding: 1rem;
        border-radius: 16px;
    }
}