#main-card-list {
    flex-direction: column;
    flex-wrap: wrap;
}
#top-panel { margin-bottom: 20px; }

/* インジケータ */
.indicator-container {
    font-size: small;
    display: flex;

    .cat-indicator, .edt-indicator, .file-indicator {
        border-radius: 14px;
        padding: 2px 10px;
        height: 28px;
    }
}

/* 選択プルダウン */
#condition {
    display: flex;
    gap: 10px;
    margin-bottom: 15px;

    .ts-select { width: 120px; }
    select { width: 120px; }
}

/* カード本体（基本） */
#main-card-list .card {
    width: 100%; height: fit-content;
    max-width: 500px;
    border-left: 5px solid #ddd;
    border-radius: 0;
    margin-bottom: 10px;
    padding: 5px;
    padding-left: 10px;

    .card-up {
        .card-title {
            width: 100%; height: fit-content;
            min-height: 20px; max-height: 80px;
            margin-bottom: 6px;
            
            font-size: 1em; font-weight: bold;

            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            overflow: hidden;
        }
    }

    .card-dw {
        display: grid;
        grid-template-columns: 110px 1fr;
        gap: 10px;
        font-size: small;

        .card-left {
            .card-desc {
                width: 110px; height: calc(110px * (9 / 16));
                padding: 5px;
                border-radius: 6px;
                color: white;
            }
            .card-thumb {
                width: 110px; height: calc(110px * (9 / 16));
                object-fit: cover;
                border-radius: 6px;
            }
        }
        .card-right {
            .meta-container {
                display: flex;

                .counter {
                    display: flex;
                    gap: 5px;
                }
                .file-counter {
                    .icon {
                        font-size: 2.2em;
                        position: absolute;
                        width: 60px; height: 60px;
                        right: 0px; top: 0px;
                        display: flex;
                        justify-content: center;

                        div { margin: auto 0; }
                    }
                    .count {
                        color: white;
                        position: absolute;
                        width: 60px; height: 60px;
                        right: 0px; top: 0px;
                        display: flex;
                        justify-content: center;
                        margin: auto 0;

                        div { margin-top: 22px; }
                    }
                }
            }
        }
    }
    .card-dw2 {
        margin-top: 10px;

        a, button { font-size: small; }
    }
}


/* 投稿管理ページ用 */
#main-card-list {
    .post-status.publish span { color: rgb(77, 139, 255); }
    .post-status.draft span { color: rgb(255, 181, 77); }
    .post-status.private span { color: rgb(186, 186, 186); }
    .post-status.pending span { color: rgb(255, 77, 77); }
    .card-management-page:has(.post-status.publish) { border-color: rgb(77, 139, 255); }
    .card-management-page:has(.post-status.draft) { border-color: rgb(255, 181, 77); }
    .card-management-page:has(.post-status.private) { border-color: rgb(186, 186, 186); }
    .card-management-page:has(.post-status.pending) { border-color: rgb(255, 77, 77); }

    .card.pinned .pin { display: none; }
    .card:not(.pinned) .depin { display: none; }
}
/*429px以下*/
@media screen and (max-width: 429px) {
    .card-management-page {
        .post-meta-wrapper {
            display: flex;
            flex-direction: column;
        }
        .card-dw2.flex-row.gap-5 {
            margin-top: 0px !important;
        }
    }
}
/*430px以上*/
@media screen and (min-width: 430px) {
    .card-management-page {
        .post-meta-wrapper {
            display: flex;
        }
    }
}


/* ブックマークページ用 */
.card-bookmarked-page {
    border-left: none !important;

    a > div { transition: background-color 0.15s; }
    .card-left {
        display: flex;
        flex-direction: column;
        gap: 0px;
    }
    .card-right {
        display: flex;
        flex-direction: column;
        gap: 5px;
    }
    .counter {
        display: flex;
        gap: 5px;
    }
    .ts-button-panel:has(.bookmark-button) { height: 25px; }
    .bookmark-button i.fa-bookmark, .bookmark-button small { color: #898989; }
    .meta-container { font-size: small; }
}
#main-card-list { gap: 0 !important; }
/*429px以下*/
@media screen and (max-width: 429px) {
    .card-bookmarked-page {
        padding: 0;
        margin-bottom: 0 !important;
    }
    .card-bookmarked-page a > div {
        padding-left: 12px;
        padding-right: 12px;
    }
}
/*430px以上*/
@media screen and (min-width: 430px) {
    .card-bookmarked-page { margin-bottom: 0 !important; }
    .card-bookmarked-page a > div {
        padding: 5px 15px;
    }
}
body:not(.--CLIENT-USE-TOUCH, .--CLIENT-USE-PEN) .card-bookmarked-page a:hover > div {
    background-color: rgba(0,0,0,0.1);
}



/* ダミーカード */
#loading-dummy-container {
    display: flex;
    flex-direction: column;
    gap: 20px;

    .card-dummy {
        width: 100%;
        cursor: pointer;
        border-radius: 6px;
        height: fit-content;
        display: flex; flex-direction: column; gap: 5px;
        padding: 0 12px;

        .dc {
            border-radius: 6px;
            background-color: #ddd;
        }
        .dc-thumb {
            width: 110px;
            aspect-ratio: 16 / 9;
        }
        .dc-title {
            width: 100%;
            height: 20px;
        }
        .dc-indicator {
            width: 60px;
            height: 20px;
            border-radius: 10px;
        }
    }
}


/* 空の表示 */
.card-list-wrapper .empty-card-message-container {
    width: 100% !important;
    height: fit-content !important;
}
a:has(#empty-card-wrapper) {
    text-decoration: none;
    color: #2d2d2d;
}
#empty-card-wrapper {
    display: flex;
    flex-direction: column;

    .empty-card-wrapper-in {
        display: none;
        gap: 30px;
        padding: 20px 30px;
        
        i { font-size: 1.5em; }
    }
    .empty-ornament {
        margin-top: 30px;
        display: flex;
        flex-direction: column;
        gap: 20px;

        div {
            width: 100%;
            text-align: center;

            i.fa-solid.fa-flask-vial {
                color: #ddd;
                font-size: 5em;
            }
            .large { font-size: large; }
        }
    }
}
#empty-card-wrapper:not(.visible) {
    display: none;
}
/* ダミーカード表示制御 */
#loading-dummy-container { display: none; }
#main-card-list:not(:has(.card)) + #empty-card-wrapper:not(.visible) + #loading-dummy-container {
    display: flex;
    flex-direction: column;
    margin-top: 0;
}




