/* ========== Froala table base styles ========== */
.fr-view table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.fr-view th,
.fr-view td {
    padding: 10px 12px;
    border: 0.5px solid #ddd;
    text-align: left;
    /* vertical-align: top; */
    background: #fff;
}

.fr-view th {
    background-color: #4D89A0;
    color: white;
    font-weight: 600;
    white-space: nowrap; /* ← 加這行 */
}

.fr-view thead {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    overflow: hidden;
}

.fr-view tbody {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    overflow: hidden;
}

/* ========== RWD：小螢幕變卡片式表格 ========== */
@media (max-width: 768px) {
    .fr-view table,
    .fr-view thead,
    .fr-view tbody,
    .fr-view th,
    .fr-view td,
    .fr-view tr {
        display: block;
        width: 100%;
    }

    .fr-view thead {
        display: none;
    }

    .fr-view tr {
        margin-bottom: 16px;
        border: 1px solid #ddd;
        border-radius: 12px;
        padding: 10px;
        background: #fff;
    }

    /* td 改成 flex 排版 */
    .fr-view td {
        display: flex;
        flex-direction: row;
        border: none;
        border-bottom: 1px solid #eee;
        min-height: 40px;
        padding: 8px 10px;
        word-wrap: break-word;
        overflow-wrap: break-word;
        white-space: normal;
    }

        .fr-view td:last-child {
            border-bottom: none;
        }

        /* 標題欄位固定寬度，文字換行 */
        .fr-view td:before {
            content: attr(data-header);
            flex: 0 0 110px; /* 固定寬度 */
            font-weight: bold;
            color: #555;
            margin-right: 8px;
            word-wrap: break-word;
            overflow-wrap: break-word;
            white-space: normal;
        }

        /* 內容區域自動換行 */
        .fr-view td span, .fr-view td a {
            flex: 1 1 auto;
            word-wrap: break-word;
            overflow-wrap: break-word;
            white-space: normal;
        }
}

