:root {
    --red-label-color: var(--button-background-red);
    --red-label-color-hover: var(--button-background-red-hover);
    --orange-label-color: var(--icon-orange-color);
}

:root.high-contrast {
    --red-label-color: HotPink;
    --red-label-color-hover: var(--red-label-color);
}

.view-koszyk .info {
    text-align: center;
    font-size: 1.5em;
    color: var(--main-lighter-color);
    font-family: Montserrat;
    font-weight: 500;
}

.view-koszyk .amount {
    font-family: Montserrat;
    color: var(--main-lighter-color);
    font-size: 1.5em;
    font-weight: 500;
}
.view-koszyk .red-label {
    color: var(--red-label-color);
    cursor: pointer;
}
.view-koszyk .red-label:hover {
    color: var(--red-label-color-hover);
}

.view-koszyk .polcard-logo {
    max-width: 128px;
}

.view-koszyk .basket-icon {
    color: var(--main-accent-color);
    padding: 3em;
}
.view-koszyk .fa-shopping-basket {
    width: auto;
}

.view-koszyk .container {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}
.view-koszyk .container-left {
    flex: max-content;
    margin-bottom: 1em;
}
.view-koszyk .container-right {
    flex: auto;
    padding: 1em;
    padding-left: 2em;
    padding-right: 2em;
    text-align: center;
}

.view-koszyk .meta-info-error {
    color: var(--red-label-color);
}

.view-koszyk .meta-info-warning {
    color: var(--orange-label-color);
}

/* ---------------------------------------- */

.view-koszyk table.table-koszyk {
    border-collapse: collapse;
    width: 100%;
    border-bottom: 1px solid var(--main-table-td-border-color);
}
.view-koszyk table.table-koszyk th {
    border-bottom: 1px solid var(--main-table-th-border-color);
}
.view-koszyk table.table-koszyk th,
.view-koszyk table.table-koszyk td {
    padding: 0.5em;
    padding-right: 1em;
}
.view-koszyk table.table-koszyk tr.item {
    border-top: 1px solid var(--main-table-td-border-color);
}
.view-koszyk table.table-koszyk td.subitem {
    color: var(--main-accent-color);
}
.view-koszyk table.table-koszyk td.meta-info {
    font-size: 0.9em;
    color: var(--main-lighter-color);
    text-align: end;
    width: 100%;
}
.view-koszyk table.table-koszyk tr.caption {
    display: none;
}
.view-koszyk table.table-koszyk span.caption {
    display: none;
    color: var(--main-low-visibility-color);
    font-weight: normal;
    padding-right: 1em;
    align-self: center;
}

.view-koszyk .container-discount {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: baseline;
    row-gap: 0.5em;
    column-gap: 1em;
}
.view-koszyk .container-discount > *:first-child {
    flex-grow: 1;
}
.view-koszyk .container-amount {
    display: grid;
    grid-template-columns: 1fr max-content;
    align-items: baseline;
    text-align: right;
    column-gap: 1em;
    row-gap: 0.5em;
    margin-top: 1em;
    margin-bottom: 1em;
}

@media screen and (max-width: 750px) {
    .view-koszyk table.table-koszyk th {
        display: none;
        border-bottom: none;
        padding-right: 0px;
    }
    .view-koszyk table.table-koszyk tr {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .view-koszyk table.table-koszyk tr.item {
        border-top: 1px solid var(--main-table-td-border-color);
    }
    .view-koszyk table.table-koszyk td {
        text-align: left;
        width: calc(50% - 2em);
        border-bottom: none;
    }
    .view-koszyk table.table-koszyk td.empty {
        display: none;
    }
    .view-koszyk table.table-koszyk td.subitem {
        padding-bottom: 0px;
    }
    .view-koszyk table.table-koszyk tr.caption {
        display: block;
    }
    .view-koszyk table.table-koszyk span.caption {
        display: block;
    }
}
@media screen and (max-width: 400px) {
    .view-koszyk table.table-koszyk td {
        width: 100%;
    }
    .view-koszyk .grid {
        --column-count: 1;
    }
}

/* ---------------------------------------- */

.view-koszyk .grid {
    --column-count: 2;
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: 1.5em;
    row-gap: 0.4em;
}

@media screen and (max-width: 500px) {
    .view-koszyk .grid {
        --column-count: 1;
    }
}

/* ---------------------------------------- */

.view-koszyk .form-header {
    font-family: Montserrat;
    font-size: 1.5em;
    font-weight: 500;
    padding-bottom: 0.5em;
    color: var(--main-accent-color);
}

.view-koszyk .custom-label {
    display: flex;
    flex-direction: column;
    position: relative;
    box-sizing: border-box;
}

.view-koszyk .sm-input {
    padding-top: 1.2em;
}
.view-koszyk .sm-input input {
    width: 100%;
}

.view-koszyk .placeholder-text {
    position: absolute;
    top: 1.9em;
    left: 5px;
    color: var(--main-low-visibility-color);
    transition: top 0.2s, font-size 0.2s, color 0.2s;
    pointer-events: none;
}

.view-koszyk .placeholder-text.active {
    top: 0.2em;
    left: 0px;
    color: var(--main-lighter-color);
    font-size: 0.9em;
}

.view-koszyk .has-error .custom-input {
    border-color: var(--main-error-message-color);
}

.view-koszyk .error-message {
    color: var(--main-error-message-color);
    font-size: 0.9em;
}

