/* form controls */

@media all {
    fieldset {
        border: 0;
        margin: 0;
        padding: 0;
    }
    legend {
        font-weight: 700;
    }
    fieldset fieldset legend {
        font-size: 1em;
    }
    label,
    input:not([type="radio"]):not([type="checkbox"]),
    select,
    textarea {
        display: inline-block;
        width: 100%;
    }
    input:not([type="radio"]):not([type="checkbox"]),
    select,
    textarea {
        border: 1px solid rgb(204, 204, 204);
        background: rgb(250, 250, 250);
        border-radius: 2px;
        padding: 0.3125rem 0.625rem;
    }
    select {
        padding: 0.3125rem;
    }
    input[type="checkbox"],
    input[type="radio"] {
        width: 1.25em;
        height: 1.25em;
        margin-right: 0.625rem;
        flex-shrink: 0;
        flex-grow: 0;
    }
    input[type="radio"] {
        border-radius: 100%;
    }
    input[type="checkbox"] {
        margin-top: 0.25em;
    }
    input[readonly] {
        color: rgb(102, 102, 102) !important;
        background: rgb(255, 255, 255) !important;
        border-color: rgb(220, 220, 220) !important;
    }
    .form-required .form-label {
        font-weight: 600;
    }
    .form-row {
        margin-bottom: 0.9375rem;
    }
    .form-label {
        font-weight: 400;
        margin-bottom: 0.3125rem;
    }
    /* radio */
    .form-group-radio {
    }
    .form-group-radio-inline {
        display: -webkit-flex;
        display: flex;
    }
    .form-group-radio-inline .form-option-radio:not(:first-child) {
        margin-left: 1.25rem;
    }
    .form-label-radio {
        display: flex;
    }
    .form-group-radio-inline .form-label-radio {
        align-items: center;
    }
    /* checkboxen */
    .form-group-checkbox {
    }
    .form-group-checkbox-inline {
        display: -webkit-flex;
        display: flex;
    }
    .form-group-checkbox-inline .form-option-checkbox:not(:first-child) {
        margin-left: 1.25rem;
    }
    .form-label-checkbox {
        display: flex;
    }
    .form-group-checkbox-inline .form-label-checkbox {
        align-items: center;
    }
    .form-row-captcha .form-field {
        display: flex;
        flex-wrap: wrap;
        align-items: baseline;
    }
    .form-row-captcha .form-label-mathguard {
        width: auto;
        white-space: nowrap;
        padding-right: 0.625rem;
    }
    .form-row-captcha .form-input-mathguard {
        flex-grow: 1;
        width: auto !important;
    }
    .form-row-captcha .form-error {
        width: 100%;
    }
    /* utility stuff */
    .form-infotext {
        margin-bottom: 0.9375em;
        color: #999;
    }
    /* test for errors */
    .form-error {
        list-style: none;
        padding-left: 0;
        color: rgb(204, 0, 0);
    }
    :valid + .form-error {
        display: none;
    }
    .field-invalid {
        border-color: rgb(204, 0, 0) !important;
        background-color: rgb(255, 245, 245) !important;
    }
}

/* search */

@media all {
    [type="search"] {
        /* -webkit-appearance: searchfield; */
        -webkit-appearance: textfield;
    }
    .searchbox-inner {
        background: rgb(250, 250, 250);
        padding: 0 2.5rem 0 0;
    }
    .searchbox-inner .search-word {
        border: none !important;
        background: none !important;
    }
    .search-button {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        width: 2.5rem;
        padding: 0 0.3125rem;
        border: 0;
        background: rgba(0, 0, 0, 0);
        cursor: pointer;
    }
    .page-content .searchbox .search-button {
        background: rgb(204, 204, 204);
    }
    .page-content .searchbox .searchbox-inner {
        border: 1px solid rgb(204, 204, 204);
    }
    .page-content .searchbox .search-word {
        padding: 0.3125rem;
        background: rgba(0, 0, 0, 0.05);
    }
    /* search result */
    .search-result-header-padding {
        padding-top: 1.25rem;
    }
    .search-numresults {
        display: block;
        margin-bottom: 0.625rem;
    }
    .search-result-url {
        display: inline;
        margin: 0;
    }
    .search-result-title .fa {
        min-width: 1rem;
        text-align: center;
    }
    mark,
    .search-list .hit {
        color: rgb(0, 0, 0);
        background-color: rgb(255, 255, 0);
    }
}

@media (min-width: 62.5em) {
    .form-row {
        margin-bottom: 1.25rem;
    }
}

/* TX-Poll */

@media all {
    .tx-poll .poll-question.layout-inline-scaled .poll-question-answers {
        width: 100%;
        margin: auto;
        display: block;
        columns: 5;
    }
    .tx-poll .layout-inline-scaled .poll-radio {
        position: relative;
        float: unset !important;
    }
    .tx-poll .layout-inline-scaled .poll-radio:focus,
    .tx-poll .layout-inline-scaled .poll-radio:hover {
        cursor: pointer;
    }
    .tx-poll .layout-inline-scaled .poll-radio-label {
        position: absolute;
        z-index: 9;
        color: rgb(82, 92, 163);
        font-weight: 700;
        line-height: 1.5em;
        left: 0;
        right: 0;
        top: 0.15em;
    }
    .tx-poll .layout-inline-scaled .poll-radio input[type="checkbox"],
    .tx-poll .layout-inline-scaled .poll-radio input[type="radio"] {
        width: 1.25em;
        height: 1.75em;
        /* margin: 0; */
    }
    .tx-poll .multiple input[type="checkbox"] {
        float: left;
    }
    .tx-poll .multiple input[type="checkbox"] ~ .poll-radio-label {
        float: left;
    }
    .tx-poll
        .layout-inline-scaled
        .poll-radio
        input[type="radio"]
        ~ .poll-radio-label {
        width: 1.75em;
        height: 1.75em;
        border-radius: 50%;
        top: 0;
        left: 0;
        text-align: center;
        position: absolute;
        content: "";
        display: inline-block;
        visibility: visible;
        border: 2px solid rgb(82, 92, 163);
        color: rgb(82, 92, 163);
        background: white;
    }
    .tx-poll
        .layout-inline-scaled
        .poll-radio
        input[type="radio"]:checked
        ~ .poll-radio-label {
        border: 2px solid rgb(82, 92, 163);
        color: white;
        background: rgb(82, 92, 163);
    }
    .tx-poll
        .layout-inline-scaled
        .poll-radio
        input[type="radio"]:checked
        ~ .poll-radio-label {
        color: white;
    }
    .tx-poll .poll-description,
    .tx-poll .poll-question-label {
        text-align: center;
    }
    .tx-poll .poll-question.layout-inline-scaled .poll-answer-scale {
        background-image: none !important;
        width: 60%;
        margin: auto;
        display: none;
    }
    .tx-poll .float-left {
        float: left;
    }
    .tx-poll .float-right {
        float: right;
    }
    .page-content .tx-poll .p-tiny,
    .page-content .tx-poll.c-tiny {
        font-size: 75%;
    }
    .tx-poll .poll-question-label p {
        margin: 0 0 0.5rem;
    }
    .tx-poll .poll-question-label .p-big {
        font-size: 110%;
    }
    .tx-poll .poll-question.multiple .poll-question-answers,
    .tx-poll .poll-question.single .poll-question-answers,
    .tx-poll .poll-question-label {
        margin: 0 auto 2rem;
        width: 60%;
        display: block;
    }
    .tx-poll .btn.btn-primary {
        width: 15em;
        margin: 0 auto;
        display: block;
    }
    .tx-poll .poll-result .btn.btn-primary {
        width: 25em;
    }
    .tx-poll h2,
    .tx-poll .alert-info {
        display: none;
    }
    .tx-poll h3 {
        color: rgb(255, 255, 255);
        text-align: center;
        font-size: 125%;
    }
    .tx-poll .poll-result h3 {
        color: inherit;
        margin-top: 1rem;
    }
    .tx-poll .poll-result .p-big {
        font-size: 112.5%;
    }
    .poll-result .tx-poll h3 {
        color: inherit;
    }
    .tx-poll .distance_between_question_blocks {
        margin-bottom: 5em;
    }
    .tx-poll .poll-result-row,
    .tx-poll .poll-result-question {
        width: auto !important;
        height: auto !important;
    }
    .poll-result-bar {
        display: none;
    }
    .tx-poll .poll-result-answer {
        display: inline-block;
        float: left;
        margin-right: 0.5em;
        font-weight: bold;
    }
    .tx-poll .poll-result-answer::after {
        display: inline-block;
        content: ":";
    }
    .poll-result-percent {
        margin-right: 1em;
        width: auto !important;
    }
    .poll-result .poll-question p {
        margin-bottom: 0;
    }
    .tx-poll
        .poll-question.layout-default.single
        .poll-question-answers
        .poll-answer {
        display: inline-block;
        width: 25%;
    }
    .tx-poll
        .poll-question.layout-default.single
        .poll-question-answers
        .poll-radio {
        width: auto;
    }
    .tx-poll .poll-list .card-title {
        text-align: center;
        margin: 0.5rem 0;
        font-size: 112.5%;
    }
    .tx-poll .poll-list .poll-item {
        margin-bottom: 2rem;
    }
    .tx-poll .poll-list .card-body p {
        margin-bottom: 0.5rem;
    }
    .tx-poll .poll-result .btn-primary,
    .tx-poll .poll-list .btn-primary {
        color: rgb(255, 255, 255);
        background-color: #db1034;
        border-color: #db1034;
        font-weight: 600;
    }
    .tx-poll .poll-result .btn-primary:hover,
    .tx-poll .poll-result .btn-primary:focus,
    .tx-poll .poll-result .btn-primary.focus,
    .tx-poll .poll-result .btn-primary.hover,
    .tx-poll .poll-list .btn-primary:hover,
    .tx-poll .poll-list .btn-primary:focus,
    .tx-poll .poll-list .btn-primary.focus,
    .tx-poll .poll-list .btn-primary.hover {
        color: #db1034;
        background-color: transparent;
        border-color: #db1034;
    }
}

@media all and (min-width: 30em) {
    .tx-poll .poll-question.layout-inline-scaled .poll-question-answers {
        columns: 10;
    }
    .tx-poll .poll-radio input[type="radio"] ~ .poll-radio-label {
        left: 0;
    }
}

@media all and (min-width: 47.5em) {
    .tx-poll .poll-question.layout-inline-scaled .poll-question-answers {
        width: 60%;
    }
}
