/* SPDX-License-Identifier: GPL-2.0-or-later */
@import url('/upload/themes/survey/nachwuchs/css/design-tokens.css');
@font-face { font-family: Manrope; font-style: normal; font-weight: 200 800; font-display: swap; src: url('/upload/themes/survey/nachwuchs/fonts/Manrope.ttf') format('truetype'); }
html, body.fruity { height: auto; min-height: 0; }
body.fruity, body.fruity .survey-welcome, body.fruity .question-text, body.fruity label { color: var(--ink); font-family: Manrope, system-ui, sans-serif; }
body.fruity #outerframeContainer { min-height: 0; }
body.fruity .btn.btn-primary, body.fruity .btn.btn-success { background: var(--forest); border-color: var(--forest); }
body.fruity .btn.btn-primary:hover, body.fruity .btn.btn-success:hover { background: var(--ink); border-color: var(--ink); }
body.fruity .progress-bar { background: var(--forest); }
body.fruity .answer-item label:after { background-color: var(--forest); }
body { background: var(--paper-soft); color: var(--ink); font-family: Manrope, system-ui, sans-serif; font-size: 17px; line-height: 1.65; padding-top: 0 !important; }
.navbar, #survey-nav, .survey-name, .survey-description { display: none; }
.survey-welcome { padding: 20px; }
.outerframe, #outerframeContainer, .container { max-width: 900px; margin-inline: auto; }
.question-container { background: #fff; color: var(--ink); border: 0 !important; border-radius: var(--radius-surface); box-shadow: none !important; padding: 24px; margin-block: 20px; }
.question-title-container, .question-text { font-weight: 800; font-size: clamp(1.2rem, 4vw, 1.6rem); color: var(--ink); }
.btn { min-height: 48px; border-radius: var(--radius-control); font-weight: 700; padding: 12px 22px; }
.btn-primary, .btn-success { background: var(--forest); border-color: var(--forest); color: #fff; }
.btn-primary:hover, .btn-success:hover { background: var(--ink); border-color: var(--ink); }
.form-control, .form-select { min-height: 48px; font: inherit; border-color: var(--border); color: var(--ink); }
input[type=radio], input[type=checkbox] { accent-color: var(--forest); }
.radio-item label, .checkbox-item label { display: inline-block; min-height: 48px; padding-block: 12px; cursor: pointer; }
.progress-bar { background: var(--forest); }
:focus-visible { outline: 3px solid var(--forest) !important; outline-offset: 4px; }
.text-danger, .mandatory, .ls-question-mandatory { color: var(--clay) !important; }
.nwl-return { display: block; padding: 20px; text-align: center; color: var(--forest); font-weight: 800; }
@media(max-width: 600px) { .question-container { padding: 18px 14px; } .container { padding-inline: 10px; } table { display: block; overflow-x: auto; } #navigator-container { display: flex; gap: 10px; flex-wrap: wrap; } }
@media(prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

body.fruity *, body.fruity *::before, body.fruity *::after { box-shadow: none !important; text-shadow: none !important; }
body.fruity .form-control, body.fruity .form-select { border-radius: var(--radius-control); background: var(--surface-2); }
body.fruity .btn-default, body.fruity .btn-secondary, body.fruity .btn-outline-secondary { background: var(--surface-2); color: var(--ink); border-color: var(--border); }
body.fruity .btn-default:hover, body.fruity .btn-secondary:hover, body.fruity .btn-outline-secondary:hover { background: var(--forest); color: white; border-color: var(--forest); }
