/******************
    User custom CSS
    ---------------

    In this file you can add your own custom CSS
    It will be loaded last, so you can override any other property.
    Also, it will never be updated. So if you inheritate a core template and just add here some CSS, you'll still benefit of all the updates
*/


/* Kein Pflicht-Sternchen */
.asterisk { display: none !important; }

/* Oberer Container – kein zusätzlicher Abstand */
.top-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Ab 768px: leichter Abstand oben */
@media (min-width: 768px) {
    .top-container {
        padding-top: 1.2em !important;
    }
    .alert-warning {
        margin-bottom: 10px !important;
    }
}

/* Fragetitel & Inhalt – kompakter Abstand */
.question-title-container {
    padding-top: 0.3em !important;
}
.question-container {
    margin-top: 0 !important;
}
.answer-container {
    padding-top: 0.1em !important;
}

/* Gruppenabstand – vermeide negative Margins */
.group-outer-container.space-col,
.group-container.space-col,
#navigator-container.space-col {
    margin-top: 0 !important;
    margin-bottom: 0.1em !important;
}

/* Fortschrittsbalken – sicherer, aber minimaler Abstand */
.progress-bar-container,
#progress-wrapper,
#ls-progress-bar {
    margin-bottom: 6px !important;
    min-height: 18px;
}

/* Mobile: kompaktere Schriftgröße */
@media (max-width: 767px) {
    .question-text, .ls-question-text {
        font-size: 0.95rem !important;
        line-height: 1.25 !important;
    }
    .progress {
        margin-bottom: 5px !important;
    }
    .question-container {
        margin-top: 0.2em !important;
    }
}

/* Responsive Überschriften – bleibt */
h1, .h1 { font-size: calc(1.31rem + 1.92vw) !important; }
h2, .h2 { font-size: calc(1.253rem + 1.236vw) !important; }
h3, .h3 { font-size: calc(1.2245rem + 0.894vw) !important; }
h4, .h4 { font-size: calc(1.196rem + 0.552vw) !important; }

/* Sehr kleine Bildschirme */
@media (max-width: 480px) {
    h1, .h1 { font-size: 1.3rem !important; }
    h2, .h2 { font-size: 1.2rem !important; }
    h3, .h3 { font-size: 1.1rem !important; }
    h4, .h4 { font-size: 1.0rem !important; }
}

/* Gemeinsame Überschriftenformate */
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    margin-top: 0 !important;
    margin-bottom: 0.3rem !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

/* Button linksbündig */
#ls-button-submit {
    display: block !important;
    margin: 0.2em 0 0 0 !important;
    float: left !important;
}   

@media (max-width: 767px) {
    .question-text, .ls-question-text, .ls-label-question {
        font-size: 1.1rem !important;
        line-height: 1.5 !important;
    }
}   