@charset "utf-8";

.template-rental-goods-container {
    margin: 3rem 0;

    .card-goods {
        --bs-card-box-shadow: none;
        --bs-card-border-color: var(--bs-border-color);
        position: relative;
        font-size: 0.875rem;
        letter-spacing: -0.025em;
        transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
        box-shadow: var(--bs-card-box-shadow);

        &:hover {
            --bs-card-box-shadow: 0 0 25px rgba(0,0,0,0.05);
            /* --bs-card-border-color: var(--bs-secondary-bg); */
            transform: translateY(1rem);
            .card-img-top {
                transform: scale(1.1875);
                box-shadow: 0 0 25px rgba(0,0,0,0.05);
            }
        }

        .card-img-top {
            transition: transform 0.25s ease, box-shadow 0.25s ease;
            transform-origin: center 100%;
        }

        .card-body {
            font-size: 0.875rem;

            dl, dt, dd {
                margin: 0;
                padding: 0;
                list-style: none;
                font-weight: normal;
            }
        }

        .goods-class {
            font-size: 0.875em;
            display: flex;
            gap: 0.25rem;
            justify-content: flex-start;
            align-items: center;
        }

        .goods-name {
            font-size: 1.125rem;
            font-weight: 300;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            line-clamp: 2;
            overflow: hidden;
            line-height: 1.375;
            margin: 0;
            /* padding-right: 2rem; */
            min-height: 3.5rem;

            a:hover {
                color: var(--bs-body-emphasis);
            }
        }

        .price-box {
            display: grid;
            gap: 0.125rem;
            margin-bottom: 0.5rem;
            line-height: 1.25;
        }
        .price-box dl {
            display: flex;
            gap: 1rem;
            justify-content: space-between;
            align-items: center;
        }
        .price-box dt {
            color: var(--bs-secondary-color);
        }
        .price-box dd {
            position: relative;
            display: flex;
            gap: 0.25rem;
            align-items: center;
        }
        .price-box dd .price {
            font-size: 1.125rem;
            font-weight: 700;
        }
        .price-box .emphasis {
            .price {
                color: var(--wz-color-accent);
                font-weight: 900;
                font-size: 1.25rem;
            }
        }
        .price-box .diminish {
            dd {
                color: var(--bs-tertiary-color);
                &::before {
                    content: "";
                    position: absolute;
                    left: 0;
                    right: 0;
                    top: 50%;
                    display: block;
                    height: 1px;
                    background: currentColor;
                }
            }
        }

        .price-box .freegift dd > span {
            display: flex;
            gap: 0.375rem;
            align-items: center;

            em {
                font-style: normal;
                color: var(--bs-secondary-color);
            }
            b {
                font-size: 1rem;
            }
        }

        .goods-review {
            --wz-score-star-gap: 0;
            --wz-score-star-color: gold;
            --wz-score-star-empty-color: var(--bs-secondary-bg);
            --wz-score-star-size: 1.25rem;
            --wz-score-text-size: 0.875rem;
            --wz-score-text-color: var(--bs-secondary-color);
            --wz-score-text-margin: 0.25rem;
            display: flex;
            gap: 0;
            justify-content: flex-start;
            align-items: center;
            /* margin-top: 0.25rem; */
            margin-top: auto;
        }
        .goods-review-score,
        .goods-review-count {
            display: flex;
            gap: 0.25rem;
            justify-content: flex-start;
            align-items: center;
        }
        .goods-review-score {
            .bi {
                color: var(--wz-color-accent);
            }
        }
        .goods-review-count {
            position: relative;
            padding-left: 1.25rem;
            color: var(--bs-tertiary-color);
            &::before {
                position: absolute;
                top: 0;
                bottom: 0;
                left: 0.75rem;
                width: 3px;
                height: 3px;
                margin: auto 0;
                border-radius: 50%;
                background-color: rgba(var(--bs-tertiary-color-rgb), 0.5);
                transform: translateX(-50%);
                content: "";
            }
        }
        .goods-review-score {
        }
    }
}

.template-rental-review-container {
}
