html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}
/* --- vyplnanie dotaznika (stranka aj vlozeny ramec) --- */
.qform-box {
    font-family: inherit;
    max-width: 640px;
    padding: 1rem 1.25rem;
    border: 1px solid #dee2e6;
    border-radius: .5rem;
    background: #fff;
}
.qform-progress {
    font-size: .85rem;
    color: #6c757d;
    margin-bottom: .35rem;
}
.qform-question {
    font-size: 1.15rem;
    font-weight: 600;
    margin-bottom: .35rem;
}
.qform-note {
    font-size: .9rem;
    color: #6c757d;
    margin-bottom: .75rem;
}
.qform-answer {
    margin: .75rem 0;
}
.qform-input {
    width: 100%;
    padding: .5rem .75rem;
    font-size: 1rem;
    border: 1px solid #ced4da;
    border-radius: .375rem;
}
.qform-option {
    display: block;
    padding: .35rem 0;
    cursor: pointer;
}
.qform-button {
    padding: .5rem 1.25rem;
    font-size: 1rem;
    color: #fff;
    background: #0d6efd;
    border: 0;
    border-radius: .375rem;
    cursor: pointer;
}
.qform-button:disabled {
    background: #6c757d;
    cursor: default;
}
.qform-button-back {
    color: #212529;
    background: #e9ecef;
    margin-right: .5rem;
}
.qform-button-back:disabled {
    color: #fff;
}
.qform-error-line, .qform-error {
    color: #dc3545;
    min-height: 1.2rem;
    margin-bottom: .35rem;
}
.qform-done {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0;
}
.qform-info {
    color: #6c757d;
    margin: 0;
}

/* informacna obrazovka (typ otazky 5): nadpis a riadky, ktore sa postupne odskrtnu */
.qform-screen-title {
    margin-bottom: .75rem;
}
.qform-screen-lines {
    list-style: none;
    margin: 0 0 .75rem;
    padding: 0;
}
.qform-screen-line {
    padding: .3rem 0;
    color: #6c757d;
    transition: color .3s;
}
.qform-screen-line.qform-screen-done {
    color: #212529;
}
/* znak (predvolene fajka) je v kruzku od zaciatku, ale priehladny; po odskrtnuti kruzok zmodrie a znak zbelie */
.qform-screen-mark {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    margin-right: .5rem;
    vertical-align: -.35em;
    border: 2px solid #ced4da;
    border-radius: 50%;
    box-sizing: border-box;
    font-size: .75em;
    line-height: 1.5em;
    text-align: center;
    font-weight: 700;
    color: transparent;
    transition: border-color .3s, background-color .3s, color .3s;
}
.qform-screen-done .qform-screen-mark {
    border-color: #0d6efd;
    background-color: #0d6efd;
    color: #fff;
}

/* spolocna obrazovka viacerych otazok: popisky poli */
.qform-label {
    display: block;
    font-weight: 600;
    margin-top: .5rem;
}
.qform-group-title {
    margin-bottom: .25rem;
}

/* oznacenie nepovinnej otazky za jej textom */
.qform-optional {
    font-size: .8em;
    font-weight: 400;
    color: #6c757d;
}
