/* 全域設定 */
html, body {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
    background-color: #f8f9fa; /* 極淺灰底，讓白色區塊凸顯出來 */
    color: #212529;
}

/* --- 版面結構 --- */

/* 通用區塊容器 */
.section-block {
    background-color: #ffffff;
    border-radius: 8px; 
    border: 1px solid #dee2e6; 
    box-shadow: 0 2px 4px rgba(0,0,0,0.05); 
    padding: 1.5rem; 
    margin-bottom: 1.5rem;
}

/* 強調區塊 */
/*.highlight-block {
    border-left: 5px solid #0d6efd;
}*/

/*輕量化的小區塊*/
.feature-card {
    background-color: #7b1fa2;
    border: 1px solid #e9ecef;
/*    border-radius: 6px;*/
    padding: 1rem;
    height: 100%;  
    text-align: center;
    transition: transform 0.2s;
}

.feature-card:hover {
    transform: translateY(-2px);  /*滑鼠浮起 */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* --- 功能性樣式 --- */ 
/* 上傳區，讓使用者知道可以拖曳或點擊 */
/*.upload-zone {
    background-color: #fafafa;
    border: 2px dashed #ced4da;*/ /* 虛線 */
    /*border-radius: 6px;
    padding: 2rem;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.3s;
}

    .upload-zone:hover {
        border-color: #0d6efd;*/ /* 滑鼠移上去變色 */
        /*background-color: #f1f8ff;
    }*/

/* 內容捲動區 */
/*.scrollable-content {
    max-height: 40vh;  限制高度 
    overflow-y: auto;  開啟捲動 
    background-color: #fff;
    padding: 15px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    margin-bottom: 10px;
}*/

/* 錯誤UI(預設) */
#blazor-error-ui {
    background: #fff3cd;
    color: #856404;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 2000; /* 確保錯誤UI不會被Footer擋住 */
}


/* --- 課程區塊專用 --- */
.course-box {
    border: 2px solid white; /* 白色外框 */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1); /* 淡淡的陰影讓框浮起來 */
}

/* 紫色 */
.box-purple {
    background-color: #722051;
}

/* 橘棕色 */
.box-orange {
    background-color: #b54a26;
}

/* --- 浮動標籤 --- */
.floating-badge {
    position: absolute;
    top: -16px; /* 突破外框 */
    left: 20px; /* 靠左 */
    font-size: 1.2rem;
    font-weight: 900;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.8); /* 加上文字陰影讓字體跳出來 */
    letter-spacing: 1px;
}

/* --- 圖片底線 --- */
.speaker-img {
    /*border-bottom: 8px solid #722051;*/ /*紫線*/
    object-fit: cover;
    aspect-ratio: 1 / 1; /*正方形維持*/
    width: 500px;
    max-width: 100%; 
}