

/*  overall structure  */
.ag-list-container {
    width: 100%;
    margin: 2rem 0;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    gap: 1.5rem;
}
.ag-list-container > .ag-list-header, 
.ag-details-container > .ag-list-header {
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 2rem;
    border-radius: .5rem;
    box-sizing: border-box;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}
.ag-list-container > .ag-list-body,
.ag-details-container > .ag-list-body {
    width: 100%;
    padding: 2rem;
    border-radius: .5rem;
    box-sizing: border-box;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}


/*  header  */
.ag-list-header > h1 {
    margin: 1rem 0 0 0;
}
.ag-list-header > .ag-list-header-images {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid #777;
}
.ag-list-header-images img {
    height: 40px;
    padding-bottom: 1.5rem;
}
.ag-list-header-images img {
    padding-right: 3rem;
}





/*  controls  */
.ag-list-body > .ag-list-controls > form {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    box-sizing: border-box;
}
.ag-list-filters {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    box-sizing: border-box;
}
.ag-list-filters > .ag-form-item {
    display: flex;
    flex-direction: row;
    box-sizing: border-box;
    align-items: center;
}
.ag-list-buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    box-sizing: border-box;
}





/*  content  */
.ag-list-body > .ag-list-content {
    display: flex;
    flex-direction: column;
    padding: 4rem 0;
    gap: .5rem;
    box-sizing: border-box;
}


/*  item  */
.ag-list-content > .ag-list-item {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    background-color: #EEE;
    box-sizing: border-box;
}
.ag-list-content > .ag-list-item:nth-child(even) {
    background-color: #F8F8F8;
}
/*  item structure  */
.ag-list-item > .ag-list-item-meta {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 2 1 auto;
    box-sizing: border-box;
    padding: 1rem;
}
.ag-list-item > .ag-list-item-description {
    flex: 0 1 200px;
    padding: 1rem;
    box-sizing: border-box;
}
.ag-list-item > .ag-list-item-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 0 1 250px;
    padding: 1rem;
    box-sizing: border-box;
}
/*  item styles  */
.ag-list-item-meta h4, .ag-list-item h5 {
    color: #bf001f;
}




/*   DETAILS   */

.ag-details-container {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    width: 100%;
    margin: 2rem 0;
    box-sizing: border-box;
}
.ag-details-container > .ag-project-details {
    width: 100%;
    padding: 2rem;
    border-radius: .5rem;
    box-sizing: border-box;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}
.ag-project-details > h1 {
    margin: 0 0 1.5rem 0;
}
.ag-thumb {
    width: 100%;
}
.ag-thumb > img {
    width: 100%;
}
.ag-details-content {
    display: flex;
    gap: 2rem;
    flex-direction: column;
    box-sizing: border-box;
}
.ag-details-info {
    display: flex;
    flex-direction: row;
    box-sizing: border-box;
}
.ag-details-info-column {
    flex: 1 1 25%;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
}


/*   table design (demo)   */
.ag-details-info-table {
    box-sizing: border-box;
}
.ag-details-info-table > table {
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
}
.ag-details-info-table > table th {
    padding: 1rem;
    background-color: #C8C8C8;
    border-bottom: 1px solid #111;
}
.ag-details-info-table > table td {
    padding: 1rem;
}

.ag-form-radios {
    margin: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.ag-form-radios:has(.hidden) {
    margin: 1rem 0 0 0;
}
.ag-form-radio {
    display: flex;
    flex-direction: row;
    box-sizing: border-box;
}
.ag-first-label {
    margin-bottom: 1rem !important;
}
.ag-form-radio > label {
    width: 25% !important;
}

.ag-form-item.ag-form-custom {
    padding-top: 0;
    margin-bottom: 2rem;
}
.ag-form.ag-label-wide .ag-form-custom > label.ag-f-label {
    flex: 0 1 auto;
    width: auto;
}
.ag-form-custom > input {
    flex: 1 0 auto;
}
.hidden {
    display: none !important;
}


/*   RESPONSIVE   */


@media (max-width: 1024px) {

    /*          */
    /*   list   */
    /*          */

    .ag-list-container {
        margin: 0;
        font-size: 2.2rem;
    }
    .ag-list-controls > form {
        display: flex;
        flex-direction: column;
        gap: 3rem;
        box-sizing: border-box;
    }
    .ag-list-filters {
        width: 100%;
        gap: 1rem;
        display: flex; 
        flex-direction: column;
        flex-wrap: wrap;
    }
    .ag-form-item {
        display: flex;
        width: 100%;
        flex-direction: row;
        gap: 1rem;
    }
    .ag-form-item > label {
        flex: 0 0 50%;
    }
    select.ag-f-select.ag-f-x1 {
        flex: 0 0 50%;
        padding: 1rem;
        width: 100%;
    }
    input#ag-j-newssuche-monat {
        padding: 1rem;
        width: 100%;
    }

    /* responsive list */
    .ag-list-content > div.ag-list-item {
        display: flex;
        flex-direction: column;
    }
    .ag-list-item > div.ag-list-item-description {
        flex: 0 1 auto;
    }
    .ag-list-item > div.ag-list-item-info {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    .ag-list-item > div.ag-list-item-info > a.ag-button,
    .ag-list-body > div.ag-list-footer > a.ag-button {
        padding: 1rem;
        margin: 0 auto;
        width: 100%;
        box-sizing: border-box;
        display: block;
        line-height: 3rem !important;
        white-space: normal;
    }

    /*             */
    /*   details   */
    /*             */

    .ag-details-container {
        margin: 0;
        font-size: 1.65rem;
    }
    .ag-details-info {
        display: flex;
        flex-direction: column;
    }
    .ag-details-info > div.ag-details-info-column {
        display: flex;
        flex-direction: row;
    }
    .ag-details-info > div.ag-details-info-column > div.ag-details-info-item {
        flex: 0 0 50%;
    }
    div.ag-details-info-item > p {
        font-size: 2.5rem;
    }
    div.ag-control-buttons > a.ag-button {
        font-size: 1.5rem;
        padding: 1rem;
    }
    /*   form   */
    div.ag-list-body > h1 {
        margin: 0;
    }
    form > div.ag-form-sect.ag-f-sep {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    .ag-form-item {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .ag-form-item > label.ag-f-label.ag-f-label-top {
        width: 100%;
        font-size: 2.5rem;
    }
    .ag-form-item > input.ag-f-text {
        padding: 2rem;
        box-sizing: border-box;
        width: 100%;
    }
    .ag-form-item > textarea.ag-f-text {
        width: 100%;
        box-sizing: border-box;
    }
    .ag-form-item input.radio {
        display: block !important;
        border: 1px solid red !important;
        width: auto !important;
        margin: 0.5rem 0 !important;
    }
    
    /* selector 1 */
    input[type="radio"].radio {
        width: 20px;
        height: 20px;
        display: block !important;
        border: 1px solid red !important;
        width: auto !important;
        margin: 0.5rem 0 !important;
    }
    /* selector 2 */
    input.radio {
        display: block !important;
        border: 1px solid red !important;
        width: auto !important;
        margin: 0.5rem 0 !important;
    }

    /*   table   */
    .ag-details-info-table > table {
        box-shadow: none;
        font-size: 2.5rem;
    }
    table > thead th {
        display: none;
    }
    table > tbody > tr {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    table > tbody td[data-prefix]::before {
        display: block;
        content: attr(data-prefix);
        font-weight: 700;
        width: 50%;
    }
    table > tbody td[data-prefix] {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    table > colgroup > col {
        width: 100% !important;
    }
    .ag-form-radios {
        width: 100%;
        font-size: 2.5rem !important;
        margin: 4rem 0;
    }
    label.ag-first-label {
        width: 100% !important;
    }
    .ag-form-radios > div.ag-form-radio {
        display: flex;
        flex-direction: row;
        align-items: center;
        width: 100%;
        box-sizing: border-box;
    }
    .ag-form-radios > div.ag-form-radio > label {
        width: 50% !important;
    }
    .ag-form-radios > div.ag-form-radio > input[type="radio"] {
        width: 1rem;
        height: 1rem;
        transform: scale(1.5);
        transform-origin: left;
    }
    input#wieerfahren_sonstige_text {
        width: 50%;
        padding: 1rem;
        font-size: 1.5rem;
    }
}
