﻿        /* 容器 */
        .container {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 24px;
        }

        /* 头部 & 导航 */
              .hero-header {
            background: linear-gradient(135deg, #fff6ea 0%, #fef0e0 100%);
            border-radius: 2.5rem;
            margin: 1rem 1rem 1.5rem 1rem;
            padding: 2.5rem 2rem;
            box-shadow: 0 12px 28px rgba(0, 0, 0, 0.04);
            text-align: center;
            border: 1px solid #ffe6d1;
        }
        .hero-header .tagline {
            font-size: 0.9rem;
            letter-spacing: 2px;
            text-transform: uppercase;
            color: #e07c3c;
            background: #fff0e0;
            display: inline-block;
            padding: 0.25rem 1rem;
            border-radius: 40px;
            margin-bottom: 1rem;
            font-weight: 500;
        }
        .hero-header h1 {
            font-size: clamp(2.2rem, 6vw, 3.6rem);
            background: linear-gradient(125deg, #2b6e4e, #e76f1f);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
            margin-bottom: 0.75rem;
            letter-spacing: -0.02em;
        }
        .hero-header .sub {
            font-size: 1.2rem;
            color: #5f4c38;
            max-width: 650px;
            margin: 0.5rem auto 0;
            font-weight: 450;
        }
        .hero-header .hero-badge {
            display: inline-flex;
            gap: 1rem;
            margin-top: 1.5rem;
            flex-wrap: wrap;
            justify-content: center;
        }
        .hero-header .hero-badge span {
            background: white;
            padding: 0.4rem 1.1rem;
            border-radius: 60px;
            font-size: 0.85rem;
            font-weight: 500;
            color: #c95f1a;
            box-shadow: 0 2px 6px rgba(0,0,0,0.02);
            border: 1px solid #ffe0c4;
        }

        /* 通用区块 */
        section {
            margin: 3.5rem 0;
            scroll-margin-top: 80px;
        }
        .section-title {
            font-size: 2rem;
            font-weight: 700;
            border-left: 6px solid #f39c12;
            padding-left: 1rem;
            margin-bottom: 2rem;
            color: #3b2a1f;
        }
        .card-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 1.8rem;
        }
        .card {
            background: white;
            border-radius: 28px;
            padding: 1.5rem;
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.03);
            transition: transform 0.2s ease, box-shadow 0.2s;
            border: 1px solid #fff0e2;
        }
        .card:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 30px -12px rgba(230, 126, 34, 0.15);
            border-color: #ffddb0;
        }
        .card h3 {
            font-size: 1.5rem;
            margin-bottom: 0.75rem;
            color: #e67e22;
        }
        .badge {
            background: #fef2e6;
            color: #c45c0c;
            display: inline-block;
            border-radius: 40px;
            padding: 0.25rem 0.9rem;
            font-size: 0.8rem;
            font-weight: 600;
            margin-bottom: 0.75rem;
        }
 
        /* 表格设计 */
        .styled-table {
            width: 100%;
            border-collapse: collapse;
            background: white;
            border-radius: 24px;
            overflow: hidden;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
        }
        .styled-table th, .styled-table td {
            padding: 1rem 1.2rem;
            text-align: left;
            border-bottom: 1px solid #ffe0ca;
        }
        .styled-table th {
            background-color: #fff1e6;
            color: #a5510c;
            font-weight: 700;
        }
        .styled-table tr:last-child td {
            border-bottom: none;
        }

        /* FAQ 用 details 语义 */
        .faq-list {
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }
        .faq-item {
            background: white;
            border-radius: 24px;
            border: 1px solid #f5e1cf;
            transition: all 0.1s;
        }
        .faq-item summary {
            font-weight: 700;
            padding: 1.2rem 1.8rem;
            cursor: pointer;
            list-style: none;
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: #3c2a1b;
            font-size: 1.1rem;
        }
        .faq-item summary::-webkit-details-marker {
            display: none;
        }
        .faq-item summary::after {
            content: "➕";
            font-size: 1.2rem;
            color: #e67e22;
            transition: transform 0.2s;
        }
        details[open] summary::after {
            content: "➖";
        }
        .faq-answer {
            padding: 0 1.8rem 1.4rem 1.8rem;
            color: #4c3a28;
            border-top: 1px solid #faebdd;
            margin-top: 0.2rem;
            line-height: 1.6;
        }

 
        @media (max-width: 780px) {
       
            .section-title {
                font-size: 1.6rem;
            }
        }
        .intro-text {
            background: #fff7ef;
            padding: 1.6rem 2rem;
            border-radius: 32px;
            font-size: 1.05rem;
            line-height: 1.7;
            border-left: 4px solid #f39c12;
        }
        .grid-2cols {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 2rem;
        }
        @media (max-width: 720px) {
            .grid-2cols {
                grid-template-columns: 1fr;
            }
        }









/*课程优选*/	
.moreCourse{display: -webkit-flex;display: flex;width:100%;gap:10px;justify-content:space-around; align-items: center; flex-wrap:wrap;}  
.moreCourse li:hover {
      transform: translateY(-1px);
      box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
    }

.moreCourse li{
      flex: 1; 
     box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);border:solid 1px #EDEDED;border-radius:10px 10px 0 0;
    }   
.moreCourse li div, .moreCourse li figcaption{
     box-sizing: border-box; padding:5px;
    }   
.moreCourse figure img{	 
	 width: 100%;
	height: auto;
	border-radius:10px 10px 0 0;
	}
 
.tags,.course-teachers{display: -webkit-flex;display: flex;justify-content:space-around; align-items: center; flex-wrap:wrap;}
.course-teachers>p{ width:100%; margin:10px 0; position:relative;
                 &::after{content: "";
    position: absolute;    
      width: 180px;
      height:2px;
      right:10px;
      bottom:-6px;
      top:50%;
      background-color:#ECFCCB;  
   }
                 }
.tags>span{ color:#2ABEEE;}
.tags>span:nth-child(2){ color:#008890;}
.tags>span:nth-child(3){ color:#999936;}
 

.newCourse{ margin-top:30px;}
time{ display:inline-block;}


/*家教专题*/   
   .topic-list{display: -webkit-flex;display: flex;width:100%;gap:10px;justify-content:space-around; align-items: center; flex-wrap:wrap;} 
   .topic-list>li{   gap:10; width:46%;  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);border-radius:10px 10px 0 0;  padding:10px;}  
 .topic-list li:hover {
      transform: translateY(-1px);
      box-shadow: 0 6px 16px rgba(0, 0, 0, 0.1);
    }

 .topic-item{ border:solid 1px blue;
     display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(12,1fr); gap:1rem; height:180px; width:100%;
 
    }   
    .topic-item>.topic-img{grid-column:1 / span 5; grid-row:1 / span 12;}

 .topic-img img{	 
	 width: 100%;
 
	height:100%;
 
	border-radius:10px 10px 0 0;
	}
 
 .topic-item h3{ font-size:16px;grid-column:6 / span 7; grid-row:1 / span 3; text-align:center;}
  .topic-item h3>a{ font-size:1.5rem; color:Blue;}
     .feature{ grid-column:6 / span 7; grid-row:4 / span 9;display: -webkit-flex;display: flex;justify-content:space-around; align-items: center; flex-wrap:wrap;}
     .feature>p{ width:100%;font-size:14px; line-height:20px; letter-spacing:2px; margin: 5px;}
     .feature a{ color:Blue;}
      .feature span{ color:red;}
  
                  
                  .course-teachers{ padding-top:10px;}
             .course-teachers>a,.course-teachers>span{ margin-left:20px;}
             
             
             
             
             
 
 /*老师*/

 
.teachers-list{justify-content: space-around;list-style: none; display: flex; flex-wrap:wrap;  width: 100%; padding: 0; margin: 0 auto;}
.teachers-list li{ width: 24%; max-width:260px; margin: 5px auto; background-color: white; padding: 8px; box-sizing: border-box; border-radius: 8px; 
   box-shadow: 0 0 3px #8a8ed6;
}
 
.teachers-list li>a>figure{width:100%;padding:2px;  
  display: flex; flex-wrap:wrap; 
	justify-content: center;
	/* 水平居中 */
	align-items: center;
  height:auto;
  
}
.teachers-list li>a>figure figcaption{width: 100%; text-align:center;}
 .teachers-list li>a>figure figcaption h3{margin: 15px auto;}
.teachers-list li>a>figure img {

	 height: 200px;
	/* 确保图像不会超出容器 */
	max-width: 100%;
	width: auto;
	/* 保持图像比例 */
 
 border-radius:50%;
}
  
 
 
 
 .teacher-feature{ display: flex; flex-wrap:wrap;  
	justify-content: center;
	/* 水平居中 */
	align-items: center;
  height:100px;}
 
 
 
   .teacher-tags{justify-content: space-around;list-style: none; display: flex; flex-wrap:wrap; min-height:50px; gap:10px 40px;}
 .teacher-tags span{ text-align:center;text-indent:0; }
 
 
  .teacher-feature span{ text-align:left; width:100%; text-indent:0; font-size:0.9rem; color:#8D8D95;}
 
 
 
        
             
/*家教资讯*/      
             
             
.news{ display: -webkit-flex;display: flex;align-items: center; justify-content:space-around ; 	flex-wrap:wrap; gap:15px;}   
 .news li{ border:solid 1px #ECE9D8;  padding:12px; box-sizing: border-box;}
 
.news  article{ min-height:50px; margin:10px 0; padding:0 10px;}
.news  article:not(:last-child){ border-bottom:dashed 1px #DCDCDC; padding-bottom:10px;}

.noImg h3,.oneImg>div:last-child>h3{padding-bottom:15px;}
.noImg p,.oneImg>div:last-child>p{ font-size:14px; color:#9E9E9E;  letter-spacing:2px; text-indent:2em;line-height:20px;}

.noImg:hover a,.oneImg:hover a{ color:#1EAAF8;}
 
.oneImg>div{ width:100%; min-height:100px; display: -webkit-flex;display: flex;align-items: center; justify-content:space-between ;margin:10px;} 
.oneImg>div>div,.oneImg>div>div>img{ width:157px; min-height:80px; border-radius:5px;} 
 .oneImg>div> p{max-width:400px; color:#9E9E9E;  letter-spacing:1px; text-indent:2em; line-height:22px;min-height:100px;} 










/* 评论轮播 */
    #commentCarousel { height: 260px;  }
    .carousel-list,#commentCarousel .carousel-item { box-sizing: border-box;}
    #commentCarousel .carousel-item { padding: 10px; text-align: left;}
    
 #commentCarousel .carousel-list{max-width: 80%;  margin:0 auto;}
    
    .comment-header{display: flex;align-items: center; gap:10px;}
        .comment-header>div:nth-child(1){ background-color:#DCDCDC; border-radius:50%;border:solid 1px #CDCDCD; height:60px; width:45px;display: flex; justify-content: center; align-items: center;}
        .comment-header>div:nth-child(1) img{ 	max-height: 100%;
	/* 确保图像不会超出容器 */
	max-width: 100%;
	width: auto;
	/* 保持图像比例 */
	height: auto;
	/* 保持图像比例 */ border-radius:50%;}
    
    .comment-content { color: #666; font-size: 14px; line-height: 1.4;}
   .comment-content>p{ margin:5px auto;}
    /* 评论图片样式（关键：标记直接加在img上，容器仅做布局） */
    .comment-img-group { display: flex; gap: 8px; flex-wrap: wrap; }
    /* 缩略图img直接加标记，容器仅负责样式 */
    .comment-img { 
      width: 60px; height: 60px; border-radius: 4px; 
      cursor: pointer; object-fit: cover;
    }
.comment-item a{ font-size:1.6rem;}
.comment-item a span{ margin-right:50px;}

/* 评论图片预览弹窗（自定义类名） */
  /* 图片预览弹窗样式 */
    .preview-modal {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background: rgba(0,0,0,0.95);
      display: none;
      justify-content: center;
      align-items: center;
      z-index: 9999;
      padding: 20px;
    }
    .preview-modal.show {
      display: flex;
    }
    .preview-close {
      position: absolute;
      top: 20px;
      right: 60px;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      border: none;
      background: #fff;
      color: #333;
      font-size: 20px;
      cursor: pointer;
      transition: background 0.2s;
    }
    .preview-close:hover {
      background: #eee;
    }
    #previewCarousel {
      width: 90%;
      max-width: 1200px;
      height: 80vh;
    }
    .preview-carousel-item {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      transition: opacity 0.3s ease;
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .preview-carousel-item.preview-active {
      opacity: 1;
      z-index: 1;
    }
    #previewCarousel img {
      max-width: 100%;
      max-height: 100%;
      object-fit: contain;
    }
    #previewCarousel .carousel-pagination {
      bottom: 20px;
    }
    #previewCarousel .carousel-dot.preview-active {
      background: #fff;
      transform: scale(1.2);
    }

    /* 响应式适配 */
    @media (max-width: 768px) {

      .comment-single-carousel {
        height: 250px;
      }
      .comment-img {
        width: 60px;
        height: 60px;
      }
      #previewCarousel {
        width: 95%;
        height: 70vh;
      }
      #previewCarousel .carousel-pagination {
        bottom: 15px;
      }
      .carousel-nav {
        display: none !important;
      }
    }

    @media (min-width: 769px) {
      .show-nav-on-pc .carousel-nav {
        display: block !important;
      }
    }



/*星星开始*/

 .rating-dual 
 {
 	 margin-top:10px;
            position: relative;
            left:100px;
            width: 100px;
            height: 20px;
     line-height: 20px;
        }
        
        .rating-dual::before,.rating-dual::after {
            content: '★★★★★';
            position: absolute;
            left:-105%;
            top: 0;
            width: 100%;
            height: 100%;
            color: #ddd;
            font-size: 20px;
            line-height: 20px;
            letter-spacing: 0;
             font-family:Monospace;
        }
        
        .rating-dual::after {
            
            color: #ffc107;
            overflow: hidden;
           width: calc(100px * var(--rating-percent, 0) / 5);/* 5是总分，如果 --rating-percent 的值是百分比，直接用：width: calc(100px * var(--rating-percent, 0));*/
        }


/*星星结束*/