@charset "utf-8";
@import url("reset.css");
@import url("loading.css");
@import url("fontawesome_all.css");
@import url("fakeLoader.min.css");
@import url("../aos-master/aos-master/dist/aos.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC&display=swap');
@import url('mobile-category-selector.css');


/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------------------------------->>> Main <<<------------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; letter-spacing:1px; }
html { height:100% }
body { margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; -webkit-text-size-adjust:none; font-size:12px; overflow-y:scroll; overflow-x:hidden; }
body, td, th,select,input {font-size: 12px;font-family: /*Arial,*/ "文泉驛正黑", "WenQuanYi Zen Hei", "儷黑 Pro", "Microsoft JhengHei", "新細明體", "PMingLiU", sans-serif;color:#333333;}

/*簡易設定*/
.iframe_ch { display:none }
.middle { vertical-align:middle; }
.center { text-align:center; }
.w100{ width:100%; }

#tip_box { position: fixed; line-height:22px; background-image:url(../../images/bg.png); color: #FFF; padding-left:10px; padding-right:10px; padding-top:5px; padding-bottom:5px; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; margin-left:10px; }

/*fix safari*/
input, select, textarea{ -ms-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box; -webkit-box-sizing:content-box;}
input[type='text'],input[type='password'],input[type='button'],input[type='submit']{  -webkit-appearance: none; }

/*分頁*/
.pager{width:100%;overflow:hidden;margin: 40px auto 20px auto;text-align:center;}

/*編輯器*/
/* .editor{position:relative;padding: 20px 0 20px 20px;font-size:16px;line-height:30px;min-height: 500px;} */
.editor{position:relative;padding: 30px 0 30px 0;font-size:16px;line-height: 28px;overflow-x: auto;}
.decorate1{ border-left:1px solid #e1e1e1; }
.decorate1 .dot{position:absolute;top:0;left: -4px;width:10px;height:10px;background: #e0bfa5;}

/*連結*/
a{color: #28231c;text-decoration:none;}
a:hover{ color:#578fa2; }

.editor a{color: #f39850 !important;text-decoration:underline !important;}
.editor table th,.editor table td{ font-size:14px; }

/*表格*/
#css-table {display:table;width:100%;}
.css-tr {display: table-row;}
.css-td {display: table-cell;text-align:left;vertical-align:middle;padding: 0px 10px;box-sizing:border-box;letter-spacing:1px;font-size: 13px;word-break: break-all;color:#121212;}

/*全營幕遮罩*/ 
.bg-overlay { display:block; position:fixed; left:0; top:0; background:rgba(0, 0, 0, 0.7); opacity:0; visibility:hidden; width:100%; height:100%; z-index:9999; transition: all 0.2s linear; }
.bg-overlay.visible { opacity:1; visibility:visible }

/*layout*/
/*
.layout-flex{ display:flex; margin:40px auto !important; }
.layout-left{flex: 1;padding-right:50px;font-weight:bold;}
.layout-right{flex:3;margin-bottom: 70px;}
.layout-right .web-caption .left .title{ color:#48351e; }
*/
/*左右欄的頁面*/
.container .wrap .layout-left{width: 25%;float:left;box-sizing: border-box;padding: 0 30px 0 10px;margin: 0 0 50px 0;}
.container .wrap .layout-left .left-menu-caption img{display: block; width: 100%;}
.container .wrap .layout-right{width: 75%;float:left;box-sizing: border-box;padding: 1px 10px;}
.container .wrap .layout-all{ width:100%; }
.container .wrap .layout-right .end{margin-bottom: 50px;}

.container .wrap .layout-flex{ display:flex; }
.container .wrap .layout-news{ flex:2; }
.container .wrap .layout-quicklink{ flex:1; }

@media screen and (max-width : 900px) {
	.container .wrap .layout-flex{ display:block; }
}

/*左邊選單*/
.layout-left .caption{
    font-size: 18px;
    /* font-weight: bold; */
    text-align: center;
    letter-spacing: 2px;
    background: #548450;
    color: #ffffff;
    /* border-radius: 20px; */
    padding: 15px 10px;
    margin: 0 0 0px 0;
}
.layout-left > ul{list-style:none;margin:0;background-color: #f9f9f9;background-image:url(../../images/left-menu-bg.png);background-position:bottom;background-repeat:no-repeat;padding: 10px 20px 200px 20px;/* border-radius: 20px; */min-height: 500px;/* border-top: 5px solid #bed38f; *//* border-bottom: 5px solid #bed38f; */}
ul {}
.layout-left > ul > li{width: 100%;font-size: 16px;border-bottom: 1px dashed #cccccc;}
.layout-left > ul > li em{ font-style:inherit; width:20px; display:inline-block; }
.layout-left > ul > li > a{position:relative;color: #434242;font-weight: bold;text-decoration:none;display: block;letter-spacing: 3px;line-height: 1.3;padding: 20px 0px 20px 35px;}
.layout-left > ul > li > a:before{
    /*font-family: "Font Awesome 5 Free";font-weight: 900;content: "\f57d";*/
    content: '';
    background-image: url(../../images/left-menu-icon.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 23px;
    height: 23px;
    display: inline-block;
    padding-right: 5px;
    position: absolute;
    left: 5px;
    top: 18px;
}
.layout-left > ul > li > a:hover{/*background: #e5eace;*/ color:#558351; transition: all 0.5s ease;}
.layout-left > ul > li > a.on{ /*background:#e5eace;*/ color:#558351; }
.layout-left > ul > li:hover{ /*background:#bbd2ed; transition: all 0.5s ease;*/ }
.layout-left > ul > li:last-child{ border-bottom:0; }
.layout-left > ul > li ul{ display:block; list-style:none; margin:0; padding:0; }
.layout-left > ul > li ul li{width:100%;padding: 18px 23px;font-size:16px;border-top: 1px solid #cccccc;}
.layout-left > ul > li ul li:last-child{ border-bottom:0; }
.layout-left > ul > li ul li:hover{ /*background:#e5eace;*/ color:#558351; transition: all 0.5s ease; }
.layout-left > ul > li ul li a{position: relative;color: #558351;text-decoration:none;display: block;padding: 0px 0px 0px 35px;line-height: 20px;}
.layout-left > ul > li ul li a:hover{/*background: #e5eace;*/ color:#558351; transition: all 0.5s ease;}
.layout-left > ul > li ul li a:before{position: absolute;left: 8px;top: 2px;content:url(../../images/arrow1.png);}
.layout-left > ul > li ul li.third{ padding-left:20px; }
.layout-left > ul li:hover ul{ /*display:block; height:inherit; transition: all 0.5s ease;*/ }


/*內頁banner*/
#banner-box{width:100%;margin: 0 auto;overflow:hidden;/* background:#110102; */}
/* #banner-inner{position:relative;height: 295px;background: url(../../images/banner-inner.jpg) top no-repeat;background-size: cover;} */
#banner-inner .overlay{display:flex;align-items:center;justify-content: center;/* flex-direction: column; */width:100%;height: 295px;/*background-color: rgba(0, 0, 0, 0.5);*/}
#banner-inner .title{opacity:0;text-align:center;color:#ffffff;font-size: 24px;/* font-weight: bold; */letter-spacing: 5px;padding: 10px 0vw 10px 0vw;/* background-color: rgba(0, 0, 0, 0.5); *//* border-bottom: 5px solid #c7e0d8; */text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);position: relative;}
#banner-inner .title::before,
#banner-inner .title::after{content: '';position: absolute;top: 50%;width: 70px;height: 1px;background-color: #ffffff;/* transform: translateY(-50%); */}
#banner-inner .title::before{left: -100px;}
#banner-inner .title::after{right: -100px;}
#banner-inner .title_en{margin: 20px 0;color: #ffffff;letter-spacing: 5px;font-size: 16px;text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.8);}

/*麵包屑*/
#sitemap{width:100%;margin: 0 0 25px 0;padding:0 10px;box-sizing: border-box;letter-spacing:1px;color: #737373;text-align: left;}
#sitemap .wrap{width:100%;max-width:1200px; line-height:1.3;overflow:hidden;margin: 0 auto;padding: 20px 0px;color: #696969;font-size: 13px;}
#sitemap .wrap i{ padding-right:5px; }
#sitemap .wrap a{color: #696969;text-decoration:none;}
#sitemap .wrap a{ text-decoration:underline; }


/*網站按鈕(一)*/
.btn-1 {
    position: relative;
    color: #ffffff !important;
    font-size: 15px !important;
    width: auto !important;
    padding: 12px 60px 12px 20px;
    border: 1px solid #8c1b01;
    background: #8c1b01;
    cursor: hand;
    cursor: pointer;
    display: inline-block;
    margin: 5px 0;
    border-radius: 30px;
    letter-spacing: 1px;
    text-decoration: none !important;
}

.btn-1{
    background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
    border: none;
    color: #ffffff !important;
    padding: 13px 65px 13px 25px;
    font-weight: bold;
    box-shadow: 0 4px 12px rgba(155, 199, 124, 0.3);
    transition: all 0.3s ease;
    position: relative;
    display: inline-block;
}

.btn-1:hover{
    background: linear-gradient(135deg, #83b261 0%, #9bc77c 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(155, 199, 124, 0.4);
}



/*按鈕*/
.btn-2{
	position:relative;
	display:inline-block;
	color: #ffffff!important;
	font-size: 16px !important;
	background: #83b261;
	width:auto !important;
	padding: 10px 40px 10px 40px;
	margin:0 0 0 0;
	cursor:pointer;
	text-align:left !important;
	outline:0;
	border: 0;
	/*-webkit-border-bottom-right-radius: 15px;*/
}
.btn-2:hover{background: #9bc77c;}

/* 首頁標題區塊 */
.b-title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0 0vw 0 0;
    /* min-width: 160px; */
    font-weight: bold;
  }

.b-title .en-title {
    font-size: 30px;
    font-weight: bold;
    background: linear-gradient(135deg, #98c479, #7eae58);
    margin-bottom: 20px;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.b-title .tw-title {
    font-size: 36px;
    color: black;
}
  
  .b-title .b-title-img {
    /* width: 90px; */
    height: auto;
    margin-top: 10px;
    align-self: flex-end;
  }

  /* 學會簡介標題 */
  #index-about .b-title {
    /* flex-direction: row; */
    /* align-items: center; */
    justify-content: flex-start;
    border-right: 5px solid #afaeaa;
  }

  #index-about .b-title .b-title-img,
  #index-links .b-title .b-title-img {
    margin-top: 0;
    margin-left: 30px;
    align-self: center;
  }

  /* 相關連結標題 */
  #index-links .b-title {
    /* flex-direction: row; */
    align-items: center;
    justify-content: center;
    padding-right: 10px; /* Add spacing on the right */
    margin-bottom: 30px;
  }
  
  @media screen and (max-width: 900px) {
    .b-title {
      align-items: flex-start;
      padding-right: 0;
    }
    #index-about .b-title,
    #index-links .b-title {
        justify-content: flex-start;
    }
  }

  .links-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    padding: 20px 0;
}

.link-item {
    text-align: center;
}

.link-item img {
    max-width: 100%;
    height: auto;
    border: 1px solid #ddd;
    border-radius: 15px;
    /* margin-bottom: 10px; */
}

.link-item a {
    text-decoration: none;
    color: #333;
    display: block;
}

.link-item span {
    display: block;
}

/* Responsive */
@media (max-width: 992px) {
    .links-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
    
    /* 活動花絮區塊中螢幕優化 */
    #index-album .items {
        flex: 0 0 calc(50% - 15px);
        margin-bottom: 30px;
    }
    
    .album-header {
        padding: 60px 0 40px 0;
    }
    
    #index-album .items img {
        height: 280px;
    }
}

@media (max-width: 576px) {
    .links-grid {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 15px 0;
    }
    
    .link-item {
        max-width: 290px;
        margin: 0 auto;
    }
    
    .link-item img {
        border-radius: 10px;
        /* margin-bottom: 8px; */
    }
}

/* 針對 480px 以下的相關連結優化 */
@media (max-width: 480px) {
    #index-links {
        padding: 50px 0;
        /* background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); */
    }
    
    #index-links .wrap {
        padding: 0 20px;
    }
    
    #index-links .b-title {
        margin-bottom: 25px;
    }
    
    #index-links .b-title .en-title {
        font-size: 24px;
    }
    
    #index-links .b-title .tw-title {
        font-size: 18px;
    }
    
    .links-grid {
        /* gap: 20px; */
        /* padding: 20px 0; */
        justify-items: center;
    }
    
    .link-item {
        max-width: 260px;
        width: 100%;
        /* padding: 15px; */
        /* background: white; */
        /* border-radius: 15px; */
        /* box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08); */
        /* transition: all 0.3s ease; */
        /* border: 2px solid transparent; */
    }
    
    .link-item:hover {
        transform: translateY(-5px);
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
        border-color: #e8f1de;
    }
    
    .link-item img {
        border-radius: 12px;
        /* box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1); */
        /* margin-bottom: 12px; */
        transition: transform 0.3s ease;
        width: 100%;
        height: auto;
    }
    
    .link-item:hover img {
        transform: scale(1.02);
    }
    
    .link-item a {
        text-decoration: none;
        color: #333;
        display: block;
    }
    
    .link-item a:hover {
        color: #356684;
    }
}  

  
/*內頁大標題*/
.b-innertitle{
    position: relative;
    color: #3f5c3d;
    font-weight: bold;
    background-color: #e8f1de;
    /* background-image:url(../../images/title-bg.jpg); */
    /* background-position:center right; */
    /* background-repeat:no-repeat; */
    font-size: 20px;
    padding: 13px 10px 13px 40px;
}
.b-innertitle:before{
    content: '';
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 60%;
    background: linear-gradient(to bottom, #7fb069 0%, #a8d08d 50%, #c7e0a8 100%);
    border-radius: 3px;
}
.b-innertitle .line{
    display: none;
    /* position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 5px;
    background: #c7e0d8; */
}

/*圖片延遲載入*/
img.lazy {
	display: block;
	/* optional way, set loading as background */
	background-image: url('../../images/ajax-loading.gif');
	background-repeat: no-repeat;
	background-position: 50% 50%;
}

/*活動圖片裁切*/
.album-cut {/* height: 210px; */overflow:hidden;/*border:1px solid #ccc;*//* line-height: 210px; *//* background: #ebebeb; */}
.album-cut img{vertical-align:middle;}
.album-cut2 {height:250px;overflow:hidden;/*border:1px solid #ccc;*/line-height: 250px;background: #ebebeb;}
.album-cut2 img{vertical-align:middle;}
.album-cut3 {/* height:172px; */overflow:hidden;/*border:1px solid #ccc;*//* line-height: 172px; */background: #ffffff;}
.album-cut3 img{ vertical-align:middle;}


@media screen and (max-width : 1200px) {
	.container .wrap .layout-left{ width:30%; }
	.container .wrap .layout-right{ width:70%; }	
}

@media screen and (max-width : 900px) {
	.container .wrap .layout-left{ display:none; }
	.container .wrap .layout-right{ width:100%; }

}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Common <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

#wrapper{ width:100%; overflow:hidden; }

.container{ position:relative; width:100%; overflow: hidden;}
.container.bg-gray{ background:#f9f9f9; }

.container.row-color:nth-child(even) {/*background: #ffffff;*/}
.container.row-color:nth-child(odd) {/*background: #f4f5ef;*/}

.container .wrap{position: relative;max-width: 1400px;overflow: hidden;margin: 0px auto;}
/*回上頁*/
.gotop{position:fixed;bottom: 5%;right:20px;z-index:99;opacity: 0.8;}

/*footer*/
#site_footer {
    background:url(../../images/footer-bg.png) no-repeat; 
    background-size:cover;
    /*background: #4f744b;*/
}

.footer_container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center; /* 垂直對齊 */
    justify-content: space-between; /* 左右內容對齊 */
    box-sizing: border-box;
    padding: 40px 0 40px 0;
}

/* 左側區塊樣式 */
.footer_left {
    width: 50%;
    display: flex;
    justify-content: center; /* 右對齊左側內容 */
    align-items: center; /* 垂直對齊 */
}

.footer_logo {
    max-width: 100%;
    height: auto;
    padding: 0 30px; /* 確保左右邊距一致 */
}

/* 右側區塊樣式 */
.footer_right {
    width: 50%;
    display: flex;
    flex-direction: column;
    /* align-items: flex-start; */ /* 左對齊右側內容 */
    color: #6c757d;
    line-height: 1.6;
    letter-spacing: 1px;
    font-size: 15px;
    margin: 0; /* 移除多餘的 margin */
    padding: 10px 0 0 0;
}

.footer_right .footer_right_content{/* border-left:1px solid #ffffff; */padding-left: 30px;}

.footer_right .contact-items {
    display: flex;
    align-items: flex-start;
    color: #ffffff;
    /* font-weight: bold; */
}

.footer_right .contact-items:not(:last-child) {
    padding-bottom: 10px;
}

.footer_right .contact-items .items-title {
    flex: 1;
    min-width: 90px;
}

.footer_right .contact-items .items-title i {
    color: #ffffff;
    padding: 0 8px 0 0;
}

.footer_right .contact-items .items-content {
    flex: 6;
    color: #ffffff;
    text-align: left;
}

#site_footer .designed_by {
	width:100%;
	max-width:1200px;
	border-top: 1px solid #859d83;
	margin: 20px auto 0px auto;
	padding: 35px 0 35px 0;
	/* margin-top: 50px; */
	align-self: flex-end; /* 右對齊 */
	color: #ffffff;
	text-align: center;
	font-size: 12px;
	letter-spacing: 1px;
}

#site_footer .designed_by a {
    color: #ffffff;
    text-decoration: none;
}

#site_footer .designed_by a:hover {
    text-decoration: underline;
}

/* Footer 手機版專業美化 */
@media (max-width: 768px) {

    .gotop img{ width: 70px; }

    /* 手機版footer使用相近綠色系漸層背景 */
    #site_footer {
        /* background: linear-gradient(135deg, #4f744b 0%, #456640 50%, #4f744b 100%); */
        position: relative;
        overflow: hidden;
    }
    
    #site_footer::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: radial-gradient(circle at 30% 20%, rgba(79, 116, 75, 0.15) 0%, transparent 50%),
                    radial-gradient(circle at 70% 80%, rgba(69, 102, 64, 0.15) 0%, transparent 50%);
        pointer-events: none;
    }

    .footer_container {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 40px 15px;
        position: relative;
        z-index: 1;
    }

    .footer_left, .footer_right {
        width: 100%;
        text-align: center;
        justify-content: center;
        align-items: center;
    }

    .footer_left {
        margin-bottom: 0px;
    }

    .footer_logo {
        padding: 15px;
        max-width: 240px;
        filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
    }

    .footer_right {
        align-items: center;
        color: #ecf0f1;
    }

    .footer_right_content {
        padding: 0 20px;
        border-left: none;
        border-top: 3px solid rgba(144, 195, 31, 0.6);
        padding-top: 30px;
    }

    .footer_right .contact-items {
        justify-content: center;
        text-align: center;
        padding: 12px 15px;
        margin-bottom: 12px;
        background: rgba(144, 195, 31, 0.15);
        border-radius: 12px;
        color: #ffffff;
        transition: all 0.3s ease;
    }

    .footer_right .contact-items:hover {
        background: rgba(144, 195, 31, 0.25);
        transform: translateY(-2px);
    }

    .footer_right .contact-items .items-title {
        min-width: 80px;
        font-size: 14px;
        color: #90c31f;
        font-weight: 600;
    }

    .footer_right .contact-items .items-title i {
        color: #90c31f;
        font-size: 15px;
    }

    .footer_right .contact-items .items-content {
        font-size: 14px;
        color: #e8f5e8;
    }

    #site_footer .designed_by {
        align-self: center;
        text-align: center;
        margin-top: 20px;
        padding: 25px 15px;
        font-size: 12px;
        color: #c8d4c8;
        line-height: 1.3;
        background: rgba(0, 0, 0, 0.15);
        border-top: 2px solid rgba(144, 195, 31, 0.4);
        position: relative;
        z-index: 1;
    }

    #site_footer .designed_by a {
        color: #90c31f;
        font-weight: 500;
        transition: all 0.3s ease;
    }

    #site_footer .designed_by a:hover {
        color: #a8d63f;
    }
}


/*表格樣式*/
#table-1 {
  font-family: Arial, Helvetica, sans-serif;
  border-collapse: collapse;
  width: 100%;
}

#table-1 td, #table-1 th {
  border: 1px solid #ddd;
  padding: 5px;
  text-align: center;
}

#table-1 tr:nth-child(even){background-color: #f2f1f1;}

#table-1 tr:hover {background-color: #ddd;}

#table-1 th {
  padding-top: 5px;
  padding-bottom: 5px;
  text-align: center;
  background-color: #90c31f;
  color: white;
}

@media screen and (max-width : 1200px) {
	.container{/* padding:0 10px; */}
	#footer-nav ul{ display:flex; flex-wrap:wrap; align-items:center; justify-content: center; }
}

@media screen and (max-width : 768px) {
	
}

@media screen and (max-width : 550px) {
	.logo-b{/* width:80%; *//* max-height: 65px; */}	
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Index <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


/*即時新聞*/
#index-report{width:100%;overflow: hidden;display:flex;justify-content: space-between;flex-wrap:wrap;}
#index-report .items{
    border: 1px solid #bcbcbc;
    flex: 0 32%;
    padding: 10px;
    margin: 10px 5px;
	transition: transform 0.1s ease-in-out, box-shadow 0.1s;
}
#index-report .items img{ width: 100%; }
#index-report .items:hover{ transform: translateY(-0.5rem); }

#index-report .items div{ width:100%; overflow:hidden; }
#index-report .items div.title{color:#000000;font-weight:bold;font-size: 16px;padding: 15px 0 0 0;}
#index-report .items div.title a{ /*color:#000000; text-decoration:none;*/ }
#index-report .items div.title:before{content:url(../../images/news-icon-1.png);vertical-align:middle;padding-right: 5px;}
#index-report img.lazy{ /*max-height:300px;*/ }

@media screen and (max-width : 900px) {
	#index-report .items{flex: 1 48%;}
}

@media screen and (max-width : 480px) {
	#index-report .items{flex: 0 100%;}
}

/*最新消息*/
.news-bg{ 
    background: url(../../images/news-bg3.png) bottom center no-repeat;
    position: relative;
}

.news-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(../../images/news-bg.png) top left no-repeat;
    background-size: auto;
    animation: newsBreathZoom 8s ease-in-out infinite;
    pointer-events: none;
    z-index: 0;
}

.news-bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(../../images/news-bg2.png) bottom right no-repeat;
    background-size: auto;
    animation: newsBreathZoom 8s ease-in-out infinite 1s; /* 1秒延遲，創造不同步效果 */
    pointer-events: none;
    z-index: 0;
}

#index-news{margin: 0px 0;padding: 80px 10px 100px 10px;text-align:center;display: flex;/*align-items:center;*/justify-content: center;}
#index-news .news-container{
    flex: 100%;
    margin: 0 0 0 0;
    text-align: left;
    position: relative;
    z-index: 1;
}
.news-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

#index-news .news-types{width: 80%;text-align:center;display: flex;align-items: center;justify-content: flex-end;/*flex-wrap: wrap;*/padding: 15px 0;border-left: 5px solid #e8f1de;}
#index-news .news-types span{
    padding: 15px 20px;
    margin: 8px 2px;
    color: #000000;
    /* background: #ffffff; */
    /* border: 1px solid #175c6c; */
    border-radius: 25px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    flex-basis: 150px;
    position: relative;
    transition: all 0.3s ease;
}

#index-news .news-types span:hover{
    color: #ffffff;
    background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
    border: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(155, 199, 124, 0.4);
}
#index-news .news-types span.active{
    color: #ffffff;
    background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
    border: none;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(155, 199, 124, 0.4);
}

/* 對話框尾巴效果 - 只在懸停時顯示 */
#index-news .news-types span::after{
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #83b261;
    transition: all 0.3s ease;
    opacity: 0;
}

#index-news .news-types span:hover::after{
    opacity: 1;
}
#index-news .news-types span.active::after{
    opacity: 1;
}
#index-news .news-frame{width:100%;overflow:hidden;border-top: 1px solid #dadada;/* border-bottom: 1px solid #dadada; */text-align: center;/* background: #ebebeb; */position: relative;}

/* Loading 動畫樣式 */
#index-news .news-loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
    flex-direction: column;
    align-items: center;
    z-index: 10;
}

#index-news .news-loading .spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #e8f1de;
    border-top: 4px solid #83b261;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 10px;
}

#index-news .news-loading .loading-text {
    color: #83b261;
    font-size: 14px;
    font-weight: bold;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* 內容淡入淡出效果 */
#index-news #news_content_ajax {
    transition: opacity 0.4s ease;
    opacity: 1;
}

#index-news #news_content_ajax.loading {
    opacity: 0;
}

#index-news #news_content_ajax.fade-in {
    opacity: 1;
}

/* 按鈕禁用狀態 */
#index-news .news-types span.disabled {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
}

/* 關於我們區塊視差滾動樣式 */
#index-about {
    position: relative;
    overflow: hidden;
}

#index-about .about-wrap {
    transform: translateY(0);
    transition: transform 0.1s ease-out;
}

#index-about .b-title {
    transform: translateY(0);
    transition: transform 0.1s ease-out;
}

#index-about .about-slogan,
#index-about .editor_index,
#index-about .pager {
    transform: translateY(0);
    transition: transform 0.1s ease-out;
}

/* 手機版優化 - 禁用視差效果 */
@media screen and (max-width: 768px) {
    #index-about .about-wrap,
    #index-about .b-title,
    #index-about .about-slogan,
    #index-about .editor_index,
    #index-about .pager {
        transform: none !important;
    }
}
#index-news .news-list{position: relative;display:flex;flex-wrap:wrap;width:100%;overflow:hidden;margin: 5px 0;text-align: left;padding: 10px 0px 16px 0;border-bottom: 1px solid #dadada;}
#index-news .news-list:last-child{ border:0; }
#index-news .news-list .types{flex: 1;color: #658b62;background: #ffffff;border: 1px solid #658b62;padding: 8px 20px;max-width: 110px;text-align: center;margin: 5px 0 5px 0;font-weight: normal;font-size: 15px;display: flex;align-items:center;justify-content: center;border-radius: 20px;}
#index-news .news-list .title{position: relative;flex: 5;color: #060606;font-size: 16px;line-height:22px;font-family: 'Noto Sans TC', sans-serif;display: flex;align-items:center;padding: 0px 0 0 20px;}
#index-news .news-list .title a:hover{ color:#28231c; text-decoration:underline; }
#index-news .news-list .date{position: relative;/* flex: 1; */min-width: 100px;padding: 0 15px 0 20px;font-size: 14px;display: flex;align-items: center;justify-content: center;/* flex-direction: column; */font-weight: bold;color: #89b868;/* font-style: italic; */}
#index-news .news-list .date span{
    padding: 5px 0 5px 25px;
    font-style: normal;
    font-size: 14px;
    position: relative;
}

#index-news .news-list:before{
    content: '';
    position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url('../../images/news-icon.png') no-repeat center center;
    background-size: contain;
}
#index-news .news-list .more{flex:1;padding:0 20px;min-width:150px;color: #143874;font-size: 14px;display: flex;align-items: flex-end;justify-content: center;}
#index-news .news-list .more a{ color:#143874; }
#index-news .pager{position:relative;text-align: right;margin: 30px auto;}

/* 顯示控制 */
.desktop-only {
    display: flex;
}
.mobile-tablet-only {
    display: none;
}

/* 平板版最新消息優化 */
@media screen and (max-width : 900px) {
	/* 切換顯示 */
	.desktop-only {
		display: none !important;
	}
	.mobile-tablet-only {
		display: block;
	}
	
	/* 平板版標題統一樣式 */
	.b-title {
		display: inline-block !important;
		text-align: center !important;
		justify-content: center !important;
		width: auto !important;
		border-right: none !important;
		border-bottom: 3px solid #e8f1de !important;
		padding: 0 0 15px 0 !important;
		margin-bottom: 20px;
	}
	
	/* 確保標題容器置中 */
	#index-about, #index-links {
		text-align: center;
	}
	
	/* 關於我們標題特殊處理 */
	#index-about .b-title {
		margin: 0 auto 20px auto !important;
	}
	
	.b-title .en-title {
		display: block;
		font-size: 26px;
		margin-bottom: 8px;
	}
	
	.b-title .tw-title {
		display: block;
		font-size: 18px;
	}
	
	#index-news {
		padding: 70px 20px 90px 20px;
	}

    #index-news .news-list:before{
        top: 30%;
        left: 10px;
    }    
	
	#index-news .news-header {
		flex-direction: column;
		align-items: center;
		margin-bottom: 20px;
	}
	
	#index-news .news-categories {
		margin-bottom: 35px;
		padding: 0 15px;
	}
	
	#index-news .news-categories .mobile-types {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 8px;
		padding: 15px;
		/* background: rgba(255, 255, 255, 0.95); */
		/* border-radius: 15px; */
		/* box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08); */
		/* border: 1px solid rgba(232, 241, 222, 0.3); */
		justify-content: center;
		width: 100%;
		display: flex;
	}
	
	#index-news .news-categories .mobile-types span {
		flex: 0 0 auto;
		min-width: 80px;
		margin: 0;
		padding: 12px 18px;
		font-size: 14px;
		font-weight: bold;
		border-radius: 25px;
		color: #000000;
		/* background: transparent; */
		/* border: none; */
		transition: all 0.3s ease;
		cursor: pointer;
		text-align: center;
		position: relative;
	}
	
	#index-news .news-categories .mobile-types span:hover {
		color: #ffffff;
		background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
		border: none;
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(155, 199, 124, 0.4);
	}
	
	#index-news .news-categories .mobile-types span.active {
		color: #ffffff;
		background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
		border: none;
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(155, 199, 124, 0.4);
	}
	
	/* 新聞列表樣式 */
	#index-news .news-list .types{
		max-width: 120px;
		font-size: 13px;
		padding: 7px 15px;
	}
	#index-news .news-list .date{
		justify-content: start;
		min-width: auto;
		flex-direction: inherit;
		font-size: 13px;
	}
	#index-news .news-list .date span{
		border: 0;
		padding: 0 0px 0px 30px;
		font-size: 13px;
	}
	#index-news .news-list .title{flex:100%;padding: 10px 20px;}
}

/* 手機設備上的最新消息分類樣式 */
@media screen and (max-width: 480px) {
	/* 所有區塊標題統一水平置中 - 與平板版一致 */
	.b-title {
		text-align: center !important;
		justify-content: center !important;
		width: auto !important;
		display: inline-block !important;
		border-right: none !important;
		border-bottom: 3px solid #e8f1de !important;
		padding: 0 0 15px 0 !important;
		margin-bottom: 20px;
	}
	
	/* 確保標題容器置中 */
	#index-about, #index-links {
		text-align: center;
		background: #ebebeb;
	}
	
	/* 關於我們標題特殊處理 */
	#index-about .b-title {
		margin: 20px auto 0px auto !important;
	}
	
	.b-title .en-title {
		display: block;
		font-size: 22px;
		margin-bottom: 8px;
	}
	
	.b-title .tw-title {
		display: block;
		font-size: 16px;
	}
	
	/* 關於我們區塊手機版優化 */
	#index-about {
		padding: 60px 20px;
	}
	
	#index-about .about-wrap {
		flex-direction: column;
		text-align: center;
		max-width: 100%;
		padding: 0;
	}
	
	#index-about .about-wrap .right {
		width: 100%;
		/* padding: 0; */
	}
	
	.about-slogan .slogan-tw {
		font-size: 18px;
		font-weight: 600;
		color: #356684;
		margin-bottom: 12px;
		line-height: 1.6;
	}
	
	.about-slogan .slogan-en {
		font-size: 14px;
		color: #666666;
		font-style: italic;
		line-height: 1.5;
	}
	
	#index-about .pager {
		text-align: center !important;
		margin-top: 30px;
	}
	
	#index-about .btn-1 {
		background: linear-gradient(135deg, #356684 0%, #2c5aa0 100%);
		color: #ffffff;
		padding: 12px 30px;
		border-radius: 25px;
		text-decoration: none;
		font-weight: 600;
		font-size: 14px;
		display: inline-flex;
		align-items: center;
		gap: 10px;
		transition: all 0.3s ease;
		box-shadow: 0 4px 15px rgba(53, 102, 132, 0.3);
	}
	
	#index-about .btn-1:hover {
		transform: translateY(-2px);
		box-shadow: 0 6px 20px rgba(53, 102, 132, 0.4);
	}
	
	/* 最新消息手機版專業優化 */
	#index-news {
		padding: 60px 15px 55px 15px;
	}

    .news-bg{ 
        background:none;
    }    
	
	#index-news .news-categories {
		margin-bottom: 25px;
		padding: 0px 0px;
	}
	
	#index-news .news-categories .mobile-types {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 8px;
		padding: 15px;
		background: rgba(255, 255, 255, 0.95);
		border-radius: 15px;
		box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
		border: 1px solid rgba(232, 241, 222, 0.3);
		justify-content: center;
	}
	
	#index-news .news-categories .mobile-types span{
		flex: 0 0 auto;
		min-width: 80px;
		margin: 0;
		padding: 10px 16px;
		font-size: 14px;
		font-weight: bold;
		border-radius: 25px;
		color: #000000;
		/* background: transparent; */
		/* border: none; */
		transition: all 0.3s ease;
		cursor: pointer;
		text-align: center;
		position: relative;
	}
	
	#index-news .news-categories .mobile-types span:hover {
		color: #ffffff;
		background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
		border: none;
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(155, 199, 124, 0.4);
	}
	
	#index-news .news-categories .mobile-types span.active {
		color: #ffffff;
		background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
		border: none;
		transform: translateY(-2px);
		box-shadow: 0 4px 12px rgba(155, 199, 124, 0.4);
	}
	
	/* 手機版隱藏桌面版分類和對話框尾巴 */
	.desktop-only {
		display: none !important;
	}
	
	#index-news .news-types span::after{
		display: none;
	}
	
	/* 活動花絮手機版排版 */
	.container:has(.album-header) .wrap {
		display: flex !important;
		flex-direction: column !important;
	}
	
	.album-header {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		padding: 30px 15px 20px 15px !important;
		gap: 15px !important;
		order: 1 !important;
	}
	
	.album-header-left {
		width: 100% !important;
		text-align: center !important;
		order: 1 !important;
	}
	
	.album-header-right {
		display: none !important; /* 手機版隱藏原本的MORE按鈕 */
	}
	
	/* 相簿內容區塊 */
	#index-album {
		display: flex !important;
		flex-direction: column !important; /* 手機版單列顯示 */
		gap: 20px !important;
		padding: 0 15px !important;
		margin-top: 0 !important;
		order: 2 !important;
	}
	
	#index-album .items {
		display: flex !important;
		flex-direction: column !important;
		background: #ffffff !important;
		border-radius: 12px !important;
		overflow: hidden !important;
		/* box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important; */
		transition: all 0.3s ease !important;
		margin: 0 !important;
		width: 100% !important;
	}
	
	#index-album .items:hover {
		transform: translateY(-3px) !important;
		/*box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15) !important;*/
	}
	
	#index-album .items img {
		width: 100% !important;
		height: 200px !important;
		object-fit: cover !important;
	}
	
	#index-album .items .album-info {
		padding: 12px !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 8px !important;
	}
	
	#index-album .items .date-container .date-text {
		font-size: 11px !important;
		color: #83b261 !important;
		font-weight: bold !important;
		padding-left: 0 !important; /* 移除預設的padding */
	}

	
	#index-album .items div.title {
		font-size: 13px !important;
		line-height: 1.4 !important;
		font-weight: 500 !important;
		padding: 0 !important;
	}
	
	/* 手機版MORE按鈕 */
	.album-more-mobile {
		display: block !important;
		text-align: center !important;
		/* margin-top: 25px !important; */
		padding: 0 15px !important;
		order: 3 !important;
	}

    .album-more-mobile .pager{ margin:20px auto 20px auto;}
	
	.album-more-mobile .btn-1 {
		background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%) !important;
		border: none !important;
		color: #ffffff !important;
		padding: 10px 35px !important;
		font-weight: bold !important;
		box-shadow: 0 3px 10px rgba(155, 199, 124, 0.3) !important;
		transition: all 0.3s ease !important;
		border-radius: 25px !important;
		font-size: 13px !important;
		display: inline-block !important;
		width: auto !important;
	}
	
	.album-more-mobile .btn-1:hover {
		background: linear-gradient(135deg, #83b261 0%, #9bc77c 100%) !important;
		transform: translateY(-2px) !important;
		box-shadow: 0 5px 15px rgba(155, 199, 124, 0.4) !important;
	}
	
}


/*活動剪影*/
.album-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5vw 0 30px 0;
    position: relative; /* For absolute positioning of ALBUM text */
}
.album-header-right {
    margin-right: 20px; /* 距離右邊留一些空間 */
}
.album-more-mobile {
    display: none; /* 桌面版隱藏手機版MORE按鈕 */
}

.album-header-left {
    display: flex;
    align-items: center;
    gap: 20px; /* Space between title and arrow */
}

.album-header .b-title {
    flex-grow: 0; /* Prevent title from growing */
    justify-content: flex-start;
    /* flex-direction: row; */ /* Align title and arrow horizontally */
    padding: 0 60px 0 30px; /* Remove padding */
    min-width: auto; /* Remove min-width */
    border-right: 5px solid #e8f1de;
}

/* 平板和手機版時覆蓋 album-header 的 b-title 樣式 */
@media screen and (max-width : 900px) {
    .album-header .b-title {
        border-right: none !important;
        padding: 0 0 15px 0 !important;
        text-align: center !important;
        justify-content: center !important;
        border-bottom: 3px solid #e8f1de;
        margin-bottom: 20px;
    }
}

.album-header .b-title-img {
    margin-top: 0;
    margin-left: 0;
    align-self: center;
}

.album-promo-text {
    width: 600px;
    max-width: 600px;
    text-align: left;
    line-height: 1.6;
    color: #7eae94;
    font-weight: bold;
    font-size: 18px;
    position: absolute; /* Position text relative to album-header */
    left: 200px; /* Adjust as needed */
    top: 55%;
    transform: translateY(-50%);
}

#index-album {
    width: 100%;
    overflow: hidden;
    display: flex;
    justify-content: space-around; /* Distribute items evenly */
    flex-wrap: wrap;
    padding: 30px 0;
    padding-top: 10px;
}

#index-album .items {
    flex: 0 0 30%; /* Set fixed width for 3 items per row */
    margin: 15px;
    transition: transform 0.1s ease-in-out, box-shadow 0.1s;
    /* background-color: #ffffff; */
    /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); */
    /* border-radius: 8px; */
    overflow: hidden;
}

#index-album .items-index {
    width: auto; /* Let flexbox handle width */
    overflow: hidden;
}

#index-album .items-content {
    width: auto; /* Let flexbox handle width */
}

#index-album.inner-album {
    display: flex !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    padding: 30px 0;
    padding-top: 30px;
    gap: 15px;
}

#index-album.inner-album .items-content {
    flex: 0 0 calc(33.333% - 10px) !important; /* Set fixed width for 3 items per row */
    margin: 0 !important;
    width: calc(33.333% - 10px) !important;
    max-width: calc(33.333% - 10px) !important;
}

#index-album .items img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    border-radius: 20px;
    border: 4px solid #7aac57;
}

#index-album .items:hover {
    transform: translateY(-3px);
}

#index-album .items div {
    /* width: 100%; */
    overflow: hidden;
}

#index-album .items .album-info {
    display: flex;
    padding: 15px 0;
    /* background: #ffffff; */
    /* border-radius: 0 0 5px 5px; */
    border-bottom: 3px solid #7aac57;
}

#index-album .items .date-container {
    /* margin-bottom: 10px; */
    text-align: left;
}

#index-album .items .date-container .date-text {
    color: #83b261;
    font-weight: bold;
    min-width: 130px;
    font-size: 14px;
    position: relative;
    padding-left: 30px;
}

#index-album .items .date-container .date-text:before {
    content: '';
    position: absolute;
    left: -8px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url('../../images/album-icon.png') no-repeat center center;
    /* background-size: contain; */
}

#index-album .items div.title {
    color: #000000;
    text-align: left;
    font-size: 14px;
    padding: 0 10px;
    margin: 0;
    display: flex;
    align-items: center;
}

#index-album .items div.title a {
    /* font-weight: bold; */
    text-decoration: none;
    color: #333333;
    line-height: 1.4;
}

#index-album .items div.title a:hover {
    text-decoration: underline; /* Add underline on hover */
}


#index-album .items div.title:before {
    content: none; /* Remove existing icon */
}

#index-album img.lazy {
    /*max-height:330px;*/
}

.album-cut {
    position: relative;
    overflow: hidden;
}

.album-mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
}

.album-cut:hover .album-mask {
    opacity: 1;
}

.icon-loupe {
    width: 30px;
    height: 30px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>');
    background-repeat: no-repeat;
    background-position: center;
}

.view-detail {
    color: white;
    margin-top: 10px;
    text-align: center;
}

.date-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 15px 10px 15px 10px;
    color: #666; /* Adjust date color */
    font-size: 14px; /* Adjust date font size */
}

.clock-icon {
    width: 16px;
    height: 16px;
    margin-right: 5px;
}

.album-pager {
    text-align: right;
    margin-top: 20px;
}

.album-pager .btn-1 {
    color: #18a2c7 !important;
    font-size: 16px !important;
    font-weight: bold;
    letter-spacing: 0px;
    padding: 15px 45px;
    border-radius: 30px;
    text-align: left !important;
    text-decoration: none;
    border: none; /* Remove border */
    background: none; /* Remove background */
}

.album-pager .btn-1:after {
    content: "\f2d1"; /* Font Awesome right arrow icon */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: relative;
    left: 10px;
    transition: all 0.3s ease;
}

.album-pager .btn-1:hover:after {
    left: 15px;
}

/* 平板橫向 */
@media screen and (max-width : 1200px) {
    #index-album .items {
        flex: 0 0 45%; /* Two items per row on tablet */
    }
    #index-album.inner-album .items-content {
        flex: 0 0 calc(50% - 15px) !important;
        width: calc(50% - 15px) !important;
        max-width: calc(50% - 15px) !important;
    }
}

/* 平板直向和小平板 */
@media screen and (max-width : 992px) {
    #index-album .items {
        flex: 0 0 50%; /* Two items per row on smaller screens */
    }
    #index-album.inner-album .items-content {
        flex: 0 0 calc(50% - 8px) !important;
        width: calc(50% - 8px) !important;
        max-width: calc(50% - 8px) !important;
    }
    .album-promo-text {
        position: static; /* Remove absolute positioning */
        transform: none;
        width: 100%;
        max-width: 100%;
        text-align: center;
        margin-top: 20px;
    }
    .album-header {
        flex-direction: column;
        align-items: center;
    }
    .album-header-left {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
}

/* 平板版 */
@media screen and (max-width : 1024px) {
    /* 活動花絮區塊整體設定 */
    .container:has(.album-header) .wrap {
        display: flex !important;
        flex-direction: column !important;
    }
    
    .album-header {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 40px 0 0px 0 !important;
        gap: 20px !important;
        order: 1 !important;
    }
    
    .album-header-left {
        width: 100% !important;
        text-align: center !important;
        order: 1 !important;
    }
    
    .album-header-right {
        display: none !important; /* 平板版隱藏原本的MORE按鈕 */
    }
    
    /* 相簿內容區塊 */
    #index-album {
        /* display: grid !important; */
        grid-template-columns: repeat(2, 1fr) !important; /* 平板版顯示2列 */
        padding: 0px 10px !important;
        margin-top: 20px !important;
        order: 2 !important;
        justify-items: stretch !important; /* 確保項目填滿格子 */
        align-items: start !important; /* 項目對齊頂部 */
    }
    
    #index-album .items {
        display: flex !important;
        flex-direction: column !important;
        /* background: #ffffff !important; */
        padding: 10px 0px;
        margin: 10px 0;
        /* border-radius: 12px !important; */
        overflow: hidden !important;
        /* box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important; */
        transition: all 0.3s ease !important;
    }
    
    
    #index-album .items img {
        width: 100% !important;
        height: 220px !important;
        object-fit: cover !important;
    }
    
    #index-album .items .album-info {
        padding: 15px !important;
        display: flex !important;
        flex-direction: column !important;
        /* gap: 10px !important; */
    }
    
    #index-album .items .date-container .date-text {
        font-size: 13px !important;
        color: #83b261 !important;
        font-weight: bold !important;
    }
    
    #index-album .items div.title {
        font-size: 14px !important;
        line-height: 1.4 !important;
        font-weight: 500 !important;
    }
    
    /* 手機版MORE按鈕 */
    .album-more-mobile {
        display: block !important;
        text-align: center !important;
        /* margin-top: 30px !important; */
        order: 3 !important;
    }
    
    .album-more-mobile .btn-1 {
        background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%) !important;
        border: none !important;
        color: #ffffff !important;
        padding: 12px 40px !important;
        font-weight: bold !important;
        box-shadow: 0 4px 12px rgba(155, 199, 124, 0.3) !important;
        transition: all 0.3s ease !important;
        border-radius: 30px !important;
        font-size: 14px !important;
        display: inline-block !important;
    }
    
    .album-more-mobile .btn-1:hover {
        background: linear-gradient(135deg, #83b261 0%, #9bc77c 100%) !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 16px rgba(155, 199, 124, 0.4) !important;
    }
    
    /* 相關連結區塊平板版優化 */
    #index-links {
        padding: 40px 0 60px 0 !important;
    }
    
    #index-links .wrap {
        padding: 0 30px;
    }
    
    .links-grid {
        /* grid-template-columns: repeat(2, 1fr); */
        /* gap: 25px; */
        /* padding: 25px 0; */
        justify-items: center;
    }
    
    .link-item {
        /* max-width: 320px; */
        /* width: 100%; */
        /* padding: 20px; */
        /* background: white; */
        /* border-radius: 15px; */
        /* box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08); */
        /* transition: all 0.3s ease; */
        /* border: 2px solid transparent; */
    }
    
    .link-item:hover {
        transform: translateY(-3px);
        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
        border-color: #e8f1de;
    }
    
    .link-item img {
        display: block;
        border-radius: 12px;
        /* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); */
        /* margin-bottom: 15px; */
        transition: transform 0.3s ease;
    }
    
    .link-item:hover img {
        transform: scale(1.02);
    }
    #index-album .items div.title {
        font-size: 13px;
        padding: 0 8px;
        display: flex;
        align-items: center;
    }
}

/* 手機直向 */
@media screen and (max-width : 576px) {
    #index-album .items {
         flex: 0 0 100% !important;
    }
    #index-album.inner-album .items-content {
        flex: 0 0 calc(100% - 0px) !important;
        width: calc(100% - 0px) !important;
        max-width: calc(100% - 0px) !important;
        margin: 0 0px !important;
    }
    #index-album.inner-album {
        gap: 15px;
        padding: 15px 10px;
        margin-top: 20px !important;
    }
    #index-album .items img {
        height: 220px; /* 手機版更小的圖片高度 */
    }
    #index-album .items .date-container .date-text {
        font-size: 10px;
        min-width: 100px;
        padding-left: 29px !important;
    }
    #index-album .items .date-container .date-text:before {
        /* width: 20px; */
        /* height: 20px; */
        left: -10px;
    }
    #index-album .items div.title {
        font-size: 12px;
        padding: 0 5px;
    }
    #index-album .items .album-info {
        padding: 10px 0 !important;
    }
}

@media screen and (max-width : 1036px) {
    #index-album .items-index {
        width: auto;
    }
}

@media screen and (max-width : 838px) {
    #index-album .items-index {
        width: auto;
        background: transparent !important;
    }
}

/* 清理舊的媒體查詢規則，已整合到上方的新規則中 */



/*系所介紹*/
#index-about{width:100%;overflow:hidden;padding: 0 0 30px 0;}
.about-bg{
    background:url(../../images/about-bg.png) bottom center no-repeat;
    background-size: cover;
    /*animation: breatheZoom 8s ease-in-out infinite;*/
}

/* 關於我們背景呼吸動畫 */
@keyframes breatheZoom {
    0%, 100% {
        background-size: 100%;
    }
    50% {
        background-size: 110%;
    }
}

/* 最新消息背景呼吸動畫 - 使用 transform */
@keyframes newsBreathZoom {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}
#index-about .about-wrap{display:flex;max-width:1300px;margin: 30px auto;flex-direction: row;flex-wrap: wrap;align-items: center;}
#index-about .about-wrap .b-title{
    text-align: left;
    margin-bottom: 20px;
    width: auto;
    max-width: 200px;
}
#index-about .about-wrap .b-title .en-title {
    color: #3f5c3e;
    -webkit-text-fill-color: #3f5c3e;
}

#index-about .about-wrap .b-title h5{ padding:20px 0px 20px 0px; }
#index-about .about-wrap .editor_index{ font-weight: bold;}

/* 關於我們標語樣式 */
.about-slogan{
    border-top: 1px solid #afaeaa;
    margin: 30px 0;
    padding: 30px 0 0 0;
}

.about-slogan .slogan-tw{
    font-size: 20px;
    color: #405b3c;
    font-weight: bold;
    line-height: 1.6;
    margin-bottom: 10px;
    font-style: italic;
    text-shadow: 1px 1px 1px #CCCCCC;
}

.about-slogan .slogan-en{
    font-size: 12px;
    color: #666666;
    font-style: italic;
    line-height: 1.4;
    text-shadow: 1px 1px 1px #CCCCCC;
}

#index-about .about-wrap .slogan{
    color: #81a237;
    font-size: 18px;
    font-style: italic;
    line-height: 22px;
    letter-spacing: 2px;
}
#index-about .right{
    flex: 2;
    padding: 0 50px 0 50px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    }
#index-about .right .service-area{position:relative;display: flex;justify-content: space-between;margin:20px 0;padding:30px 0;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4;}
#index-about .right .service-area .caption{position:absolute;background: #ffffff;padding: 5px 10px;top: -13px;left:0;text-transform:uppercase;color:#334e5f;font-size:16px;letter-spacing:2px;}
#index-about .right .service-area span{ width:102px; border:8px solid #698ba1; color:#fefefe; font-size:18px; margin:5px 0; padding: 30px 23px; letter-spacing: 2px; display:inline-block;
    
	background: linear-gradient(274deg, rgba(50, 77, 94, 1)51%, rgba(74, 105, 124, 0.9)100%);
	background: -moz-linear-gradient(274deg, rgba(50, 77, 94, 1)51%, rgba(74, 105, 124, 0.9)100%);
	background: -webkit-linear-gradient(274deg, rgba(50, 77, 94, 1)51%, rgba(74, 105, 124, 0.9)100%);
	background: -o-linear-gradient(274deg, rgba(50, 77, 94, 1)51%, rgba(74, 105, 124, 0.9)100%);
	
	border-radius:50%;
    -moz-border-radius:50%;
    -webkit-border-radius:50%;
}
#index-about .pager{text-align: left;}
#index-about .pager .btn-1{
    background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
    border: none;
    color: #ffffff !important;
    padding: 10px 75px 10px 25px;
    font-weight: bold;
    box-shadow: 0 4px 12px rgba(155, 199, 124, 0.3);
    transition: all 0.3s ease;
    position: relative;
    display: inline-block;
}

#index-about .pager .btn-1:hover{
    background: linear-gradient(135deg, #83b261 0%, #9bc77c 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(155, 199, 124, 0.4);
}

#index-about .pager .btn-1 .arrow-circle{
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    /* background: #ffffff; */
    padding: 5px 7px 5px 8px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    color: #ffffff;
    border: 1px solid #ffffff;
}

/* 活動花絮 MORE 按鈕樣式 */
.album-header .pager .btn-1{
    background: linear-gradient(135deg, #9bc77c 0%, #83b261 100%);
    border: none;
    color: #ffffff !important;
    padding: 15px 70px 15px 25px;
    font-weight: bold;
    box-shadow: 0 4px 12px rgba(155, 199, 124, 0.3);
    transition: all 0.3s ease;
    position: relative;
    display: inline-block;
}

.album-header .pager .btn-1:hover{
    background: linear-gradient(135deg, #83b261 0%, #9bc77c 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(155, 199, 124, 0.4);
}

.album-header .pager .btn-1 .arrow-circle{
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    padding: 5px 7px 5px 8px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: bold;
    color: #ffffff;
    border: 1px solid #ffffff;
}


#index-about .left{
    display: flex;
    flex: 1;
    text-align: center;
    align-items: center;
    justify-content: center;
    padding: 0 50px 0 0;
    min-width: 160px;
}
#index-about .left img{ 
    border-radius: 20px;
    max-width: 100%;
    height: auto;
}

@media screen and (max-width : 900px) {
	#index-about .about-wrap{ display:block; }
	#index-about .right{flex:1;padding: 0 20px 0 20px;}
}

@media screen and (max-width :1230px) {
    #index-about .about-wrap{  flex-direction: column; }
    #index-about .about-wrap .left img{margin-bottom: 30px;}
}

 #index-about .about-wrap .right img{max-width:  550px !important;}

/*相關連結*/
.links-container{text-align:center;width:100%;margin: 5vw 0;/* vertical-align: top; */}
.links-container a{margin: 10px 8px;max-width:280px;width:100%;text-align:left;display:inline-block;vertical-align: top;}
.links-container a img{width:100%;box-shadow: 2px 2px 8px rgba(15%,15%,40%,0.1);}

/*相關連結-輪播*/
.links-bg{/* background:#f0dccb; */}
#index-links{padding-bottom:80px;padding-top: 80px; background: url(../../images/links-bg.png) bottom right no-repeat; }
#index-links .b-title{ color:#d7925a; }
#index-links .b-title span{ color:#413c3c; }
#index-links .b-title .line{ background:#d7925a; }
#index-pdt .pdt-carousel{display: flex;position: relative;margin-bottom: 20px;}
#index-pdt .owl-left{/*position: absolute;*/left: 20px;top: 40%;cursor:pointer;display:flex;align-items:center;justify-content: center;width: 10%;float:left;}
#index-pdt .owl-center{width: 80%;float:left;padding: 0 0vw;margin: 0 auto;}
#index-pdt .owl-right{/*position: absolute;*/right: 20px;top: 40%;cursor:pointer;display:flex;align-items:center;justify-content: center;width: 10%;text-align: right;float:left;}
#index-pdt .contain{position: relative;text-align:center;font-size:22px;}
#index-pdt .contain a{position: absolute;bottom: -10%;width: 80%;display: inline-block;padding: 25px 0 25px 0;margin: 20px 0;left: 0;right: 0;margin-left: auto;margin-right: auto;t-decoration: none;font-size: 16px;border-radius: 50px;/* font-weight: bold; */background: #d7925a;color: #ffffff;}
#index-pdt .contain span{
    color: #747474;
    font-size: 16px;
    font-weight: bold;
    word-break: break-all;
    padding: 0 25px;
    display: inline-block;
}
#index-pdt .contain a:hover{ /*text-decoration:underline;*/ }
#index-pdt .item{margin: 0 auto;/* padding: 10px 1vw; */margin: 10px 10px;max-width: 100%;max-height: 100%;height: 300px;overflow:hidden;display:flex;align-items:center;justify-content: center;/* -webkit-box-shadow: 0px 0px 10px #cccccc; *//* background:#ffffff; */}
#index-pdt .item img{max-width: 100%;max-height: 100%;cursor:pointer;border-radius: 30px;}
#index-pdt .pager{ text-align: right; max-width: 1370px; }

@media screen and (max-width: 1400px) {
	#index-pdt .pager{text-align: center;margin: 10px auto 10px auto;}
	#index-pdt .pager .btn1{ margin:0 0 0 0; }	
	#index-pdt .pager .btn1:after{ position:inherit; }
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Content <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


/*最新消息*/
#inner-news{margin: 0px 0;padding: 20px 0 0 0px;text-align:center;}
#inner-news .news-list{width:100%;overflow:hidden;margin: 0 0 10px 0;text-align: left;padding: 10px 0px 10px 0;}
#inner-news .news-list{display:flex;flex-wrap:wrap;border-bottom: 1px dashed #c9c9c9;}
#inner-news .news-list .title{flex: 6;color: #28231c;font-size: 16px;line-height:22px;font-family: 'Noto Sans TC', sans-serif;display: flex;align-items:center;}
#inner-news .news-list .title a{ color:#28231c; }
#inner-news .news-list .title a:hover{ text-decoration:underline; }
/* Performance 專用標題圖示 */
#inner-news .news-list .title.performance-title{
    position: relative;
    padding-left: 40px;
}
#inner-news .news-list .title.performance-title:before{
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: url(../../images/album-icon.png);
}
#inner-news .news-list .date{flex: 1;min-width: 160px;padding: 0 0px;font-size: 14px;display: flex;align-items: center;/* justify-content: center; */font-weight: bold;color: #3f5c3d;}
#inner-news .news-list .date span{position: relative;letter-spacing: 2px;padding: 0 15px 0 50px;color: #7bab5b;}
#inner-news .news-list .types{flex: 1;color: #658b62;background: #ffffff;border: 1px solid #658b62;padding: 8px 20px;max-width: 110px;text-align: center;margin: 5px 14px 5px 0;font-weight: normal;font-size: 15px;display: flex;align-items: center;justify-content: center;border-radius: 20px;}
/* #inner-news .news-list .date span:before{position: absolute;left: 5px;top: -30px;content:"‧";font-size:60px;color: #90c31f;} */
#inner-news .news-list .date span:before{position: absolute;top: -4px;left: 13px;content: url(../../images/album-icon.png);}
#inner-news .news-list .more{flex:1;padding:0 20px;min-width:150px;color: #143874;font-size: 14px;display: flex;align-items: flex-end;justify-content: center;}
#inner-news .news-list .more a{ color:#143874; }


@media screen and (max-width : 900px) {
	#inner-news .news-list .date{ justify-content: start; min-width: auto;}
	#inner-news .news-list .date span{border:0;}
	#inner-news .news-list .title{flex:100%;padding: 10px 15px;}
	#inner-news .news-list .types{max-width: 120px;font-size: 13px;padding: 7px 15px;}
}

/*影音花絮*/
#inner-video{width:100%;overflow:hidden;margin: 20px auto 0 auto;}
#inner-video .video_area{width: 47.5%;margin: 0px 1%;display: inline-block;vertical-align: top;line-height: 25px;/* border: 1px solid #ebebeb; */padding: 10px;/* box-shadow: 1px 1px 5px #ebebeb; */}
#inner-video .video_area .title{
    color:#000000;
    font-size: 16px;
    padding: 15px 0 10px 35px;
    text-align: left;
    position: relative;
    border-bottom: 3px solid #7aac57;
    margin-bottom: 15px;
}
#inner-video .video_area .title a{ color:#000000; text-decoration:none; }
#inner-video .video_area .title:before{
    content: '';
    position: absolute;
    left: 0;
    top: 58%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background: url('../../images/album-icon.png') no-repeat center center;
    /* background-size: contain; */
}

#inner-video .video-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	border-radius: 20px;
}
#inner-video .video-container iframe, .video-container object, .video-container embed {
	position: absolute;
	top: 0;left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (max-width : 768px) {
	#inner-video .video_area{width:100%;margin: 0 0 0px 0;}	
}


/*圖片連結*/
#inner-imglink {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin: 40px 0;
    justify-content: flex-start;
}

#inner-imglink .imglink-card {
    flex: 0 0 calc(33.333% - 15px);
    max-width: calc(33.333% - 15px);
}

#inner-imglink .card-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

#inner-imglink .card-image {
    position: relative;
    width: 100%;
    height: 250px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 15px;
    overflow: hidden;
    margin-bottom: 15px;
    background-color: #f5f5f5;
}

#inner-imglink .card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
    border-radius: 20px;
}

#inner-imglink .card-image:hover .card-overlay {
    opacity: 1;
}

#inner-imglink .overlay-content {
    text-align: center;
    color: white;
}

#inner-imglink .overlay-icon {
    width: 50px;
    height: 50px;
    background: #87b568;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px;
    font-size: 20px;
}

#inner-imglink .overlay-title {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    max-width: 200px;
    margin: 0 auto;
}

#inner-imglink .card-footer {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 0 10px 0;
    border-bottom: 2px solid #87b568;
}

#inner-imglink .footer-icon {
    width: 30px;
    height: 30px;
    background: #0c4d7f;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 14px;
    flex-shrink: 0;
}

#inner-imglink .footer-title {
    font-size: 16px;
    font-weight: bold;
    color: #333333;
    flex: 1;
}

/* 響應式設計 */
@media screen and (max-width : 1024px) {
    #inner-imglink .imglink-card {
        flex: 0 0 calc(50% - 15px);
        max-width: calc(50% - 15px);
    }
}

@media screen and (max-width : 600px) {
    #inner-imglink .imglink-card {
        flex: 0 0 100%;
        max-width: 100%;
    }

    #inner-imglink .card-image {
        height: 200px;
        background-size: contain;
    }
}

/*圖片輪播*/
#inner-carousel{width: 100%;overflow: hidden;margin:30px 0 30px 0;}

/*最新消息日期顯示*/


/*下載與連結*/
#inner-download{margin: 0px 0;padding: 20px 0 0 0px;text-align:center;}
#inner-download .download-list{width:100%;overflow:hidden;margin: 0px 0;text-align: left;padding: 0px 0px 5px 0;margin: 10px 0 10px 0;}
#inner-download .download-list{display:flex;flex-wrap:wrap;border-bottom: 1px dashed #cccccc;}
#inner-download .download-list .title{flex: 6;color: #28231c;font-size: 16px;padding: 0 10px 0 10px;line-height:22px;font-family: 'Noto Sans TC', sans-serif;display: flex;align-items:center;}
#inner-download .download-list .title a{ color:#28231c; }
#inner-download .download-list .title a:hover{ text-decoration:underline; }
#inner-download .download-list .types{/* flex: 1; *//* width: 120px; */padding: 8px 5px;margin: 0 0px 0 0;font-size: 18px;display: flex;align-items: center;justify-content: center;color: #ffffff;}
#inner-download .download-list .types span{
    padding: 0 10px 0 15px;
    color: #7bab5b;
    font-size: 14px;
    border-right: 1px solid #ebebeb;
}
#inner-download .download-list .types.color-bule1{/* background: #bed38f; */border-radius: 15px;font-weight: bold;color: #155489;}
#inner-download .download-list .types.color-bule2{background: #90c31f;border-radius: 15px;}

@media screen and (max-width : 480px) {
	#inner-download .download-list .types{flex: inherit;}
	#inner-download .download-list .title{flex: 80%;padding: 10px 0;}
}

/*教師實驗室列表*/
#teacher-lab-list {
    margin: 20px auto;
    padding: 0;
    width: 100%;
    max-width: 1200px;
    overflow-x: auto;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border-radius: 8px;
    background: #ffffff;
    border: 1px solid #e9ecef;
}

#teacher-lab-list table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    background: #ffffff;
    border-radius: 8px;
    overflow: hidden;
}

/* 表格標題行 */
#teacher-lab-list .lab-list-header {
    background: #f8f9fa;
    color: #495057;
    font-weight: 600;
    text-align: center;
    /* border-bottom: 2px solid #dee2e6; */
}

#teacher-lab-list .lab-list-header th {
    padding: 16px 15px;
    font-size: 15px;
    letter-spacing: 0.5px;
    border: none;
    position: relative;
    color: #495057;
}

#teacher-lab-list .lab-list-header th:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 25%;
    height: 50%;
    width: 1px;
    background: #dee2e6;
}

/* 表格資料行 */
#teacher-lab-list .lab-list {
    transition: all 0.2s ease;
    border-bottom: 1px solid #f1f3f4;
    text-align: center;
}

#teacher-lab-list .lab-list:hover {
    background: #f8f9fa;
}

#teacher-lab-list .lab-list td {
    /* padding: 15px 15px; */
    vertical-align: middle;
    border: none;
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
}

/* 實驗室類型欄位 */
#teacher-lab-list .lab-list .types {
    text-align: center;
    color: #6c757d;
    background: #e9ecef;
    font-weight: 500;
    font-size: 13px;
    padding: 6px 12px;
    margin: 10px 10px;
    border-radius: 12px;
    display: inline-block;
    min-width: 70px;
    border: 1px solid #dee2e6;
}

/* 實驗室名稱欄位 */
#teacher-lab-list .lab-list .title {
    color: #333333;
    font-size: 15px;
    font-weight: 500;
    font-family: 'Noto Sans TC', sans-serif;
    text-align: left;
}

#teacher-lab-list .lab-list .title a {
    color: #333333;
    text-decoration: none;
    transition: color 0.2s ease;
    display: inline-block;
}

#teacher-lab-list .lab-list .title a:hover {
    color: #6c757d;
    text-decoration: underline;
}

/* 位置欄位 */
#teacher-lab-list .lab-list .location {
    text-align: center;
    color: #6c757d;
    font-size: 14px;
    background: #f8f9fa;
    padding: 6px 12px;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    font-weight: 400;
    min-width: 80px;
    display: inline-block;
}

/* 空資料提示 */
#teacher-lab-list .lab-list td[colspan="3"] {
    text-align: center;
    padding: 50px 20px;
    color: #6c757d;
    font-size: 15px;
    background: #f8f9fa;
    font-style: italic;
}

/* 平板版響應式設計 */
@media screen and (max-width: 768px) {
    #teacher-lab-list {
        margin: 15px auto;
        border-radius: 6px;
        max-width: 100%;
    }
    
    #teacher-lab-list .lab-list-header th {
        padding: 14px 10px;
        font-size: 14px;
    }
    
    #teacher-lab-list .lab-list td {
        padding: 16px 10px;
        font-size: 13px;
    }
    
    #teacher-lab-list .lab-list .title {
        font-size: 14px;
    }
    
    #teacher-lab-list .lab-list .types {
        font-size: 12px;
        padding: 5px 10px;
        min-width: 60px;
    }
    
    #teacher-lab-list .lab-list .location {
        font-size: 13px;
        padding: 5px 10px;
        min-width: 70px;
    }
}

/* 手機版響應式設計 */
@media screen and (max-width: 480px) {
    #teacher-lab-list {
        margin: 10px auto;
        border-radius: 6px;
        box-shadow: 0 1px 4px rgba(0,0,0,0.08);
        max-width: 100%;
    }
    
    #teacher-lab-list table {
        font-size: 12px;
    }
    
    /* 隱藏表格標題，改用卡片式佈局 */
    #teacher-lab-list .lab-list-header {
        display: none;
    }
    
    /* 將表格行改為卡片式佈局 */
    #teacher-lab-list .lab-list {
        display: block;
        margin-bottom: 12px;
        padding: 16px;
        background: #ffffff;
        border: 1px solid #e9ecef;
        border-radius: 6px;
        box-shadow: 0 1px 3px rgba(0,0,0,0.08);
        transition: all 0.2s ease;
        text-align: left;
    }
    
    #teacher-lab-list .lab-list:hover {
        background: #f8f9fa;
        box-shadow: 0 2px 6px rgba(0,0,0,0.12);
    }
    
    #teacher-lab-list .lab-list td {
        display: block;
        padding: 6px 0;
        border: none;
        text-align: left;
    }
    
    /* 實驗室類型標籤 */
    #teacher-lab-list .lab-list .types {
        display: inline-block;
        margin-bottom: 8px;
        margin-left: 0;
        font-size: 11px;
        padding: 4px 8px;
        min-width: 50px;
        background: #e9ecef;
        color: #6c757d;
    }
    
    /* 實驗室名稱 */
    #teacher-lab-list .lab-list .title {
        font-size: 15px;
        font-weight: 500;
        margin-bottom: 8px;
        text-align: left;
        color: #333333;
    }
    
    #teacher-lab-list .lab-list .title a {
        color: #333333;
    }
    
    #teacher-lab-list .lab-list .title a:hover {
        color: #6c757d;
    }
    
    /* 位置資訊 */
    #teacher-lab-list .lab-list .location {
        background: #f8f9fa;
        padding: 5px 8px;
        border-radius: 6px;
        border: 1px solid #e9ecef;
        font-size: 12px;
        min-width: auto;
        text-align: left;
        display: inline-block;
        color: #6c757d;
    }
    
    /* 空資料提示 */
    #teacher-lab-list .lab-list td[colspan="3"] {
        padding: 40px 15px;
        font-size: 14px;
        text-align: center;
        background: #f8f9fa;
        border-radius: 6px;
    }
}

/*成員執掌*/
#inner-member{width:100%;overflow:hidden;margin: 30px auto 0 auto;}
#inner-member .member-list{margin: 0px 1%;vertical-align: top;line-height: 25px;padding: 0 0 20px 0px;/* box-shadow: 0 0px 6px rgb(0 0 0 / 15%); */border-radius: 20px;}
#inner-member .member-list .caption{width:100%;overflow:hidden;font-size: 18px;font-weight: bold;border-bottom: 2px solid #c7e0d8;padding: 0 0 10px 0;margin: 0 0 20px 0;}
#inner-member .member-list .caption span{
    font-size: 12px;
    color: #b6b6b6;
    padding: 0 15px;
}

/* 三欄式成員內容佈局 */
#inner-member .member-list .member-content{
    display: flex;
    gap: 20px;
    align-items: flex-start;
    border-bottom: 1px solid #e1e1e1;
    padding: 0 0 20px 0;
}

/* 左欄：大頭照 */
#inner-member .member-list .member-photo{
    flex: 0 0 200px;
    text-align: center;
}

#inner-member .member-list .member-photo img{
    width: 100%;
    max-width: 200px;
    border-radius: 20px;
    /* border: 3px solid #e8f1de; */
}

/* 中欄：基本資訊 */
#inner-member .member-list .member-info{
    flex: 1;
    min-width: 250px;
}

#inner-member .member-list .member-info .info{
    display: flex;
    align-items: stretch;
    /* border-bottom: 1px solid #e8e8e8; */
    margin-bottom: 3px;
}

#inner-member .member-list .member-info .info:last-child{ 
    border:0; 
    margin-bottom: 0;
}

#inner-member .member-list .member-info .info .left{
    min-width: 80px;
    color: #256b5e;
    font-size: 16px;
    padding: 6px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-wrap: nowrap;
    background-color: #e7f1df;
    /* border-radius: 5px 0 0 5px; */
    font-weight: bold;
}

#inner-member .member-list .member-info .info .right{
    flex: 1;
    font-size: 15px;
    padding: 6px 12px;
    /* background-color: #f9f9f9; */
    border-radius: 0 5px 5px 0;
    display: flex;
    align-items: center;
    word-break: break-all;
}

#inner-member .member-list .member-info .info .right a{
    color: #333333;
    text-decoration: none;
}

#inner-member .member-list .member-info .info .right a:hover{
    color: #7fb069;
    text-decoration: underline;
}

/* 右欄：職掌業務 */
#inner-member .member-list .member-work{
    flex: 1;
    min-width: 250px;
    /* background-color: #f8faf6; */
    /* border-radius: 15px; */
    /* padding: 20px; */
    /* border: 2px solid #e8f1de; */
}

#inner-member .member-list .work-title{
    color: #256b5e;
    font-size: 16px;
    display: inline-block;
    font-weight: bold;
    margin-bottom: 15px;
    padding: 6px 15px;
    background-color: #e8f1de;
    /* border-radius: 8px; */
    text-align: center;
}

#inner-member .member-list .work-content{
    font-size: 14px;
    line-height: 1.8;
    color: #333333;
}

@media screen and (max-width : 1200px){
	#inner-member .member-list{ width:98%; }
	#inner-member .member-list .member-content{
		gap: 15px;
	}
	#inner-member .member-list .member-photo{
		flex: 0 0 180px;
	}
	#inner-member .member-list .member-photo img{
		max-width: 180px;
	}
}

@media screen and (max-width : 992px){
	#inner-member .member-list .member-content{
		flex-direction: column;
		gap: 20px;
	}
	#inner-member .member-list .member-photo{
		flex: none;
		align-self: center;
	}
	#inner-member .member-list .member-photo img{
		max-width: 200px;
	}
	#inner-member .member-list .member-info{
		min-width: auto;
	}
	#inner-member .member-list .member-work{
		min-width: auto;
	}
}

@media screen and (max-width : 768px){
	#inner-member .member-list .member-photo img{
		max-width: 180px;
	}
	#inner-member .member-list .member-info .info .left{
		min-width: 70px;
		font-size: 13px;
		padding: 6px 10px;
	}
	#inner-member .member-list .member-info .info .right{
		font-size: 14px;
		padding: 6px 10px;
	}
}

@media screen and (max-width : 480px){
	#inner-member .member-list{ 
		width: 98%;
		padding: 15px;
	}
	#inner-member .member-list .member-content{
		gap: 15px;
	}
	#inner-member .member-list .member-photo img{
		max-width: 150px;
	}
	#inner-member .member-list .member-info .info .left{
		font-size: 12px;
		min-width: 60px;
		padding: 5px 8px;
	}
	#inner-member .member-list .member-info .info .right{
		font-size: 13px;
		padding: 5px 8px;
	}
	#inner-member .member-list .work-title{
		font-size: 14px;
		padding: 8px 12px;
	}
	#inner-member .member-list .work-content{
		font-size: 13px;
	}
	#inner-teacher .member-list{width: 98%;}
	#inner-teacher .member-list .title-area{display:block;text-align: center;}
}


/*教師卡牌*/
#inner-teacher{
    width: 100%;
    overflow: hidden;
    margin: 0px auto 0px auto;
    padding: 30px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: flex-start;
}

#inner-teacher .teacher-card{
    flex: 0 0 calc(33.333% - 15px);
    background: #ffffff;
    border-radius: 20px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    /* padding: 25px 20px 20px 20px; */
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 2px solid #f0f0f0;
}

#inner-teacher .teacher-card:hover{
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* 教師照片 */
#inner-teacher .teacher-card .teacher-photo{
    margin-top: 10px;
    margin-bottom: 10px;
}

#inner-teacher .teacher-card .teacher-photo img{
    width: 100%;
    height: 250px;
    object-fit: contain;
    object-position: center;
    border-radius: 20px;
    /* border: 3px solid #e8f1de; */
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

/* 教師職稱和姓名 */
#inner-teacher .teacher-card .teacher-title{
    margin-bottom: 20px;
    padding: 0 15px;
    min-height: 50px;
}

#inner-teacher .teacher-card .teacher-title .position{
    color: #7fb069;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 10px;
    min-height: 5px;
}

#inner-teacher .teacher-card .teacher-title .name{
    color: #333333;
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 0;
}

/* 教師資訊 */
#inner-teacher .teacher-card .teacher-info{
    margin-bottom: 25px;
    text-align: left;
    padding: 0 15px; /* 添加左右間距 */
    min-height: 200px;
}

#inner-teacher .teacher-card .teacher-info .info-item{
    margin-bottom: 15px;
    padding: 0;
    border-bottom: 1px dashed #c1c1c1;
    padding: 0 0 10px 0;
}

#inner-teacher .teacher-card .teacher-info .info-item:last-child{
    margin-bottom: 0;
}

#inner-teacher .teacher-card .teacher-info .info-item .info-label{
    display: flex;
    align-items: center;
    margin-bottom: 0px;
    padding: 5px 0px;
}

#inner-teacher .teacher-card .teacher-info .info-item .info-label i{
    color: #3f5a3d;
    width: 18px;
    margin-right: 8px;
    flex-shrink: 0;
    font-size: 14px;
}

#inner-teacher .teacher-card .teacher-info .info-item .info-label span{
    color: #3f5a3d;
    font-weight: bold;
    font-size: 14px;
}

#inner-teacher .teacher-card .teacher-info .info-item .info-content{
    color: #333333;
    font-size: 14px;
    line-height: 1.5;
    word-break: break-all;
    padding: 0 0 0 25px;
}

/* MORE按鈕 */
#inner-teacher .teacher-card .teacher-more{
    text-align: center;
    padding: 0 15px 15px 15px; /* 添加左右間距避免貼邊 */
}

#inner-teacher .teacher-card .teacher-more .btn-1{
    font-size: 12px !important;
    padding:13px 65px 13px 15px !important;
}

#inner-teacher .teacher-card .btn-1 .arrow-circle{
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    padding: 5px 7px 5px 8px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    border: 1px solid #ffffff;
}

/* 教師卡牌響應式設計 */
@media screen and (max-width : 1200px){
    #inner-teacher .teacher-card{
        flex: 0 0 calc(50% - 15px);
    }
}

@media screen and (max-width : 768px){
    #inner-teacher{
        /* justify-content: center; */
    }
}

@media screen and (max-width : 480px){
    #inner-teacher .teacher-card .teacher-info{
        min-height:auto;
    }    
    #inner-teacher .teacher-card{
        flex: 0 0 calc(100% - 10px);
        /* padding: 20px 15px 15px 15px; */
    }
    #inner-teacher .teacher-card .teacher-photo img{
        width: 100%;
        height: 200px;
    }
    #inner-teacher .teacher-card .teacher-title .name{
        font-size: 18px;
    }
    #inner-teacher .teacher-card .teacher-info .info-item{
        padding: 6px 0;
    }
    #inner-teacher .teacher-card .more-btn{
        padding: 8px 20px;
        font-size: 13px;
    }
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Sitemap <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

#sitemap-area{ max-width:1200px; width:100%; overflow:hidden; margin:30px auto; }
#sitemap-area .sitemap-list{display: inline-block;vertical-align: top;width: 22.5%;margin: 0 1% 40px 1%;min-height:300px;overflow:hidden;}
#sitemap-area .title{width:100%;padding: 10px 0px;color: #3d3d3d;font-size:20px;font-family: 'Noto Sans TC', sans-serif;font-weight: bold;border-bottom: 5px solid #e8f1de;display: flex;align-items:center;/* justify-content: center; */}
#sitemap-area .title span{
    font-size: 36px;
    font-weight: normal;
    color: #ffffff;
    background: #c7e0d8;
    padding: 7px 10px 15px 18px;
    margin: 0 20px 0 0;
    border-radius: 50px;
}
#sitemap-area .list{position: relative;clear:both;border-bottom: 1px dashed #cccccc;color: #e8f1de;font-size:16px;letter-spacing:1px;margin:0 20px;padding: 17px 10px;}
#sitemap-area .list.type-2{
    padding-left: 30px;
}
#sitemap-area .list.type-1:before{ content:"●"; }
#sitemap-area .list.type-2:before{content:"○";left: 30px !important;}
#sitemap-area .list.type-1:before , #sitemap-area .list.type-2:before{position: absolute;left: 8px;top: 20px;padding-right: 5px;font-size:12px;}
#sitemap-area .list a{display: inline-block;line-height: 20px;color: #3d3d3d;font-weight: bold;text-decoration:none;padding-left: 20px;}
#sitemap-area .list a:hover{ color:#3f5c3d; }
#sitemap-area .list:first-child{ border:0; }
#sitemap-area .list.sub{border:0;padding: 15px 35px;}
#sitemap-area .list.sub:before{font-family: "Font Awesome 5 Free";font-weight: 900;content: "\f1ce";padding-right: 10px; font-size:14px; }


@media screen and (max-width : 1023px) {	
	#sitemap-area .sitemap-list{ width:47%; }
	
}
@media screen and (max-width : 720px) {
 	#sitemap-area .sitemap-list{ width:98%; }
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> News <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


/*檔案與連結*/
.download-list{width:100%;overflow:hidden;padding: 15px 20px 15px 20px;box-sizing:border-box;margin:5px 0;border-bottom:1px dotted #919191;}
.download-list .down-left{float:left;font-size: 16px;max-width: 30px;width: 10%;color: #90c31f;}
.download-list .down-left img{ vertical-align:-15%; width:20px; }
.download-list .down-right{float:left;width: 90%;}
.download-list .down-right a{color: #000000;font-size:15px;text-decoration:none;}
.download-list .down-right a:hover{ color:#90c31f; }

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Contact <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

/*聯絡我們*/
#index-contact{width:100%;max-width: 1300px;margin: 0 auto;min-height:190px;padding: 30px 0px;overflow:hidden;/* background:url(../../images/contact-bg.png) no-repeat top center; */}
#index-contact .contact-form{/*display:flex;*/}
#index-contact .contact-form > .left{flex:1;padding: 0 15px;}
#index-contact .contact-form > .right{flex:1;padding: 0 15px;}

#contact_info{ position:relative; max-width:1200px; overflow:hidden; }
#contact_info .contact_info_left{float:left;width: 50%;margin: 20px 0 30px 0;}
#contact_info .contact_info_right{/* float:left; *//* max-width:400px; *//* width: 50%; */font-size:15px;padding: 10px 0 0 10px;box-sizing: border-box;letter-spacing:1px;color:#4f4f4f;line-height:30px;}

#contact_info .slogan{ background:url(../../images/about_line.png) top center no-repeat; padding:90px 0 0 0; position:absolute; top:0; right:0; }
.contact_info_btitle{ width:100%; border-bottom:1px solid #6d6b64; }
.contact_info_area{width:100%;overflow:hidden;line-height:25px;padding: 5px 0;/* border-bottom:1px dashed #a7a7a4; */}
.contact_info_title{float:left;width:10%;color: #548450;/* background:#c6e0a8; */text-align:center;margin:0 5% 0 0;padding:0 5px;-webkit-border-radius: 5px;-moz-border-radius: 5px;border-radius: 5px;text-wrap: nowrap;}
.contact_info_content{ float:left; width:70%; }

/*聯絡我們表單*/
.contact-form .input-item{width:100%;display: flex;align-items:center;justify-content: center;background:#ffffff;margin: 25px 0;padding: 0px 10px 0px 10px;border:1px solid #cecece;transition: all 0.5s ease;line-height: 25px;}
.contact-form .input-item:hover{border:1px solid #ebdfc7; border-left:5px solid #ebdfc7;}
.contact-form .input-item .left{flex:1.5;color: #000000;font-size: 16px;letter-spacing: 1px;}
.contact-form .input-item .left span{ color:#cb333e; width:13px; display:inline-block; }
.contact-form .input-item .right{flex: 3.5;padding: 0 0px;border-left: 1px solid #d5d5d5;}
.contact-form .input-item .right input{width:100%;font-size:16px;border:0;padding: 10px 10px 10px 10px;background:transparent;outline: 0;}
.contact-form .input-item .right select{width:90%;font-size:16px;border:0;padding: 10px 10px 10px 10px;background:transparent;outline: 0;}
.contact-form .input-item .right textarea{width:100%;padding:10px;font-size:16px;height: 175px;border:0;background:transparent;resize:none;outline: 0;}
.contact-form .input-item .right .rand-img{position:absolute;right: 10px;top: 8px;cursor:pointer;}
.contact-form .pager .btn-1:before{ left:10px; }
.contact-form .pager{ text-align:right; }

#contact-info{ background:url(../../images/contact-bg.png) no-repeat; }
#contact-info .wrap{min-height:600px;display:flex; justify-content: space-between; flex-wrap:wrap; }
#contact-info .left{width:40%; padding:10px; }
#contact-info .left .css-table{ padding:10px; }
#contact-info .left .css-td:first-child{width: 20px; color:#71c6b2; }
#contact-info .left .css-td:nth-child(2){ width:40px; }
#contact-info .left .css-td{width:30px;padding: 15px 0;font-size: 16px;border-bottom: 1px dotted #cccccc;}
#contact-info .right{width:50%; padding:10px; }
#contact-info .right .map{width:100%;color:#385170;font-size:16px;display: flex;justify-content: flex-end;}
#contact-info .right .map .iframe{width:100%;/* max-width:500px; */height:400px;border:0;}


@media screen and (max-width : 1200px) {
	#contact-info .left{ flex:1; width:auto; }
	#contact-info .right{ flex:1; width:auto; }	
}
@media screen and (max-width : 1024px) {
	#contact-info .wrap{ display:block; }
	#index-contact .contact-form{padding-top: 0px;}
	.contact-form .input-item .left{ flex:2; }
}
@media screen and (max-width : 768px) {
	#index-contact { min-height: 180px; }
	#index-contact .contact-form{ display:block; }
	.contact-form .input-item .right{ flex:3; }
	.contact-form .input-item .left{ flex:1; }

	#contact_info .contact_info_left { float: none; width: 100%; }
    #contact_info .contact_info_right { padding: 0px; width: 100%; }
	
}
@media screen and (max-width : 480px) {
	#contact-info .left .css-td:nth-child(2){ display:none; }
	.contact-form .input-item .right{ flex:1.5; }	
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Mobile Menu <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


body { transition: background-color .2s; }
#wrapper { transition: margin-left .2s; }
.sidenav { display:flex; flex-direction: column; height: 100%;overflow:hidden;width: 0;position: fixed;z-index: 9999;top: 0;right: 0;background-color: rgba(255, 255, 255, 1);overflow-x: hidden;transition: 0.2s;/*padding-top: 60px;*/box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);}
.sidenav .closebtn {font-size: 25px;position: absolute;top: 25px;right: 10px;color: #356684;}
.sidenav .head {width:100%;position: relative;overflow:hidden;/* text-align: center; */padding: 15px 0 15px 5px;border-top: 3px solid #356684;border-bottom: 1px solid #ebebeb;background: #ffffff;}
.sidenav .head img{max-width: 259px;}

.sidenav .menu-top{ }
.sidenav .menu-bottom{width: 100%;height: 100%;background: #ebebeb;padding: 20px 0 10px 0;display: flex;align-items: flex-end;justify-content: center;}
.sidenav .menu-bottom .search{padding:10px 20px;}
.sidenav .menu-bottom .search .items{
    margin: 20px 0;
    display:flex;
}
.sidenav .menu-bottom .search .items .lefter{
	flex: 1;
	width: 80px;
	font-size: 16px;
	color: #3c3c3c;
	display: flex;
	align-items:center;
	justify-content: center;
}
.sidenav .menu-bottom .search .items .lefter i{color: #0557A1;padding-right:8px;}
.sidenav .menu-bottom .search .items .righter{flex: 1;padding: 0 0 0 10px;}
.sidenav .menu-bottom .search .items .righter .search-items{ display:flex;}
.sidenav .menu-bottom .search .items .righter .search-items .input{flex: 1;}
.sidenav .menu-bottom .search .items .righter .search-items .input input[type="text"]{border:0;outline: 0;max-width: 100px;padding: 15px;-webkit-border-top-left-radius: 20px;-webkit-border-bottom-left-radius: 20px;-moz-border-radius-topleft: 20px;-moz-border-radius-bottomleft: 20px;border-top-left-radius: 20px;border-bottom-left-radius: 20px;}
.sidenav .menu-bottom .search .items .righter .search-items .button{flex:1;background: #0557A1;color: #ffffff;padding: 15px 20px;-webkit-border-top-right-radius: 20px;-webkit-border-bottom-right-radius: 20px;-moz-border-radius-topright: 20px;-moz-border-radius-bottomright: 20px;border-top-right-radius: 20px;border-bottom-right-radius: 20px;}

.sidenav .menu-bottom .community{padding: 10px 5px;text-align: center;}
.sidenav .menu-bottom .copyright a{color: #939797;text-decoration:none;}
.sidenav .menu-bottom .copyright a:hover{ text-decoration:underline; }


@media screen and (max-height: 450px) {
 .sidenav {padding-top: 15px;}
 .sidenav a {font-size: 18px;}
}
/*選單 - 選項*/
#ajax-sidenav > div {position:relative;width: 100%;border-left: 5px solid #356684;border-bottom: 1px solid #ebebeb;color: #000000;padding: 15px 25px;line-height:20px;box-sizing:border-box;cursor: pointer;cursor: hand;font-size: 14px;letter-spacing: 3px;}
#ajax-sidenav > div:before {/*content:url(../../images/header-icon.png);vertical-align:0; padding-right:10px;color: #000000;*/}

#ajax-sidenav > div i {position:absolute;right: 15px;top: 17px;}
#ajax-sidenav > div.title { background: #b19bb5; color: #ffffff; }
#ajax-sidenav > div:hover { /*color:#57708e;*/ }
#ajax-sidenav > div span { position:absolute; right:0; top: 0; display:block; padding: 15px 20px; border-left: 1px solid #ebebeb;/* border-right: 1px solid #ebebeb; */ }
#ajax-sidenav > div.nav {background:#ECECEC;border-bottom: 1px solid #CDCDCD;color: #333333;}
#ajax-sidenav > div.nav:before { content:""; padding-right:0px; }
#ajax-sidenav > div img { vertical-align:middle; padding-right:8px; }
.submenu-nav { width: 100%; overflow:hidden; display:none; background-color: #FFFFFF; }
.submenu-nav div {position:relative;font-size: 14px;background: #ffffff;line-height: 20px;border-bottom: 1px solid #ebebeb!important;padding: 18px 30px 18px 55px !important;cursor:pointer;}
.submenu-nav div:before{position: absolute;left: 30px;top: 20px;font-family: "Font Awesome 5 Free";font-weight: 900;content: "\f111";color: #e2e2e2;padding-right: 8px;}
.submenu-nav div a{font-size: 14px;color: #000000 !important;}
.submenu-nav div i{position:absolute;top:20px;right: 16px;color: #000000;}
.submenu-nav.layer3 div{padding: 18px 10px 18px 80px !important;}
.submenu-nav.layer3 div:before{position: absolute;left: 55px;top: 20px;font-family: "Font Awesome 5 Free";font-weight: 100;content: "\f111";color: #e2e2e2;padding-right: 8px;}


.submenu2{background:#ebebeb !important;border-left: 5px solid #9B7354;}
.submenu3{background:#f5f5f5 !important;border-left: 5px solid #9B7354;}

.copyright{text-align: center;color: #939797;line-height: 18px;padding: 20px 10px;}

@media screen and (max-height: 450px) {
 .sidenav { padding-top: 15px;}

 .sidenav a { font-size: 18px;}
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Menu Search <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

.jq-submenu.srh{position:relative;padding:0 !important;}
.jq-submenu.srh .srh-btn{position:absolute;right: 30px;top: 20px;}
.jq-submenu.srh input[type="text"]{
	/* max-width:218px; */
	background: #F2f2f2;

	-webkit-appearance: none;
	border-radius: 0;
	width: 100%;
	height: 50px;
	border:0;
	font-size: 14px;
	padding: 0 50px 0 25px;

	box-sizing: border-box;
	letter-spacing:1px;

	color:#333;
	outline:0;
}

.jq-submenu.nav{ border-left:0 !important; }
.jq-submenu.nav i{ position:initial !important; padding-right:8px; }

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Bxslider <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

ul.bxslider { margin:0; padding:0; }
#home_banner {display: inline-block;width: 100%;margin: 0px 0 0 0;overflow: hidden;position: relative;background:#f3f8fb;}


#home_banner ul{ list-style:none; }
#home_banner li { 
    width: 100%; 
    background-repeat: no-repeat; 
    background-size: cover; 
    background-position: center;
    background-attachment: fixed;
    will-change: transform;
}
#home_banner .bxslider { opacity: 0; }
#home_banner .bx-wrapper .bx-pager.bx-default-pager a:hover, #home_banner .bx-wrapper .bx-pager.bx-default-pager a.active {background: transparent;border: 2px solid #ffffff;}
#home_banner .bx-wrapper .bx-pager.bx-default-pager a {background-color: white;/* border: 1px solid #2d2727; */width: 13px;height: 13px;margin: 0 5px;border-radius: 50%;box-shadow:2px 2px 8px rgba(15%,15%,40%,0.1);}
#home_banner .bx-wrapper .bx-pager { bottom: 32px; opacity: 1; }
#home_banner .bx-wrapper .bx-controls-direction{ opacity: 0; }
#home_banner .word { font-size: 15px; position: absolute; margin-left: -187px; margin-top: -116px; left: 50%; top: 50%; color: #673D3A; letter-spacing: 25px; opacity: 0.2; }
#home_banner .word b { font-weight: bold; }
#home_banner .down { position: absolute; right: 30px; bottom: 32px; width: 34px; height: 28px; z-index: 99; cursor: pointer; opacity: 0; }
#home_banner .down img { display: block; }
#home_banner .bx-prev{ left:5%; }
#home_banner .bx-next{ right:5%; }
#home_banner .bx-next:hover , #home_banner .bx-prev:hover{ opacity:.8; }

/* Banner 圖片 zoom-in 動畫效果 */
#home_banner li img {
    transition: transform 1.2s ease-in-out;
    transform: scale(1);
}

#home_banner .bx-wrapper .bx-viewport .bxslider li.bx-clone img,
#home_banner .bx-wrapper .bx-viewport .bxslider li:not(.bx-clone) img {
    animation: zoomIn 1.2s ease-in-out forwards;
}

@keyframes zoomIn {
    0% {
        transform: scale(1.3);
        opacity: 0.8;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* line 84, scss/_header.scss */
.headerTitleContainer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
  /*
  @media only screen and (max-width: 640px), screen and (max-height: 900px) {     
  	.headline {
  		margin: 13rem auto 0 auto;
  	}
  }
  @media only screen and (min-width: 641px) and (max-width: 768px) {
  	.headline {
  		margin: 10rem auto 0 auto;
  	}
  }
  */
}
/* line 90, scss/_header.scss */
.headerTitleContainer .headline {
  text-align: center;
  /*margin: 15rem auto 0 auto;*/
  margin: 0 auto;
  width: 100%;
  max-width: 600px;
  color: #ffffff;
  /* background: #ebebeb; */
  /* border-bottom: 1px solid #ffffff; */
  background-color: rgba(33, 33, 33, 0.6);
  padding: 10px 20px 10px 20px;
}

.headerTitleContainer a{ 
  text-decoration:none;
}

.headerTitleContainer .headline h2{
    padding: 0px 0 0px 0;
    margin: 20px 0;
    font-size: 65px;
    letter-spacing: 10px;
    /*font-family: "標楷體", "KaiTi", sans-serif;*/
    font-weight: normal;
    text-shadow: 1px 1px 1px #9a9a9a;
    font-weight: bold;
}
.headerTitleContainer .headline p{
    letter-spacing: 2px;
    font-size: 24px;
    color: #F4D885;
    /*font-family: "標楷體", "KaiTi", sans-serif;*/
    /* font-weight: bold; */
}



/* line 96, scss/_header.scss */
.headerTitleContainer .button, .headerTitleContainer .headerButton {
  display: none;
}


@media screen and (max-width : 1024px) {
	
	#home_banner .bx-controls-direction
	{
		display:none;	
	}
	
	#home_banner .bx-wrapper .bx-pager.bx-default-pager a {
		 width: 15px;
		 height: 15px;
	}
	#home_banner, #home_banner li {
		/*max-height: 275px;
		height: 275px;
		margin-top: 75px;*/
	}
}

@media only screen and (max-width: 1024px) {
  /* line 104, scss/_header.scss */
  .headerTitleContainer .headline {
   /* margin: 7rem auto 0 auto;*/
   margin: 0 auto;
  }
  .headerTitleContainer .headline p{ font-size:19px; padding:1px 0; letter-spacing: 2px;}  
  .headerTitleContainer .headline h2{ letter-spacing: 3px;font-size: 22px;color: #F4D885; }

}
@media only screen and (min-width: 641px) and (max-width: 768px) {
  /* line 110, scss/_header.scss */
  .headerTitleContainer .headline {
    /*margin: 7rem auto 0 auto;*/
    margin: 0 auto;
  }
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Effect <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/



/*scroll progress bar*/
.KW_progressContainer {
  left:0;
  width: 100%;
  height: 0.6em;
  margin-bottom: 0px;
  position: fixed;
  top: 0px;
  overflow: hidden;
  background-color: #81a237;
  content: "";
  display: table;
  table-layout: fixed;
  z-index:999;
}

.KW_progressBar {
  width: 0%;
  float: left;
  height: 100%;
  z-index:99;
  max-width: 100%;
  background-color: #9cd420;
  -webkit-transition: width .6s ease;
  -o-transition: width .6s ease;
  transition: width .6s ease;
}

/*圖片放大*/
.zoom-in img {

	width: 100%;	
}


.zoom-in:hover img {
	transform: scale(1.1);
	transition: all 0.5s ease;
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Common Animation <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

@keyframes widthGroup-1 {
    0% { width: 0; }
    60% { width: 70px; }	
    100%   { width: 60px; }
}


.scaleZoom {
	-webkit-animation: scaleZoom 2s ease both;
	animation: scaleZoom 2s ease both;
}
@-webkit-keyframes scaleZoom {
	from { opacity: 0; -webkit-transform: scale(1.2); }
}
@keyframes scaleZoom {
	from { opacity: 0; -webkit-transform: scale(1.2); transform: scale(1.2); }
}

.scaleZoom-2 {
	-webkit-animation: scaleZoom-2 2s ease both;
	animation: scaleZoom-2 2s ease both;
}
@-webkit-keyframes scaleZoom-2 {
	from { opacity: 0; -webkit-transform: scale(1.05); }
}
@keyframes scaleZoom-2 {
	from { opacity: 0; -webkit-transform: scale(1.05); transform: scale(1.05); }
}

/*------image mask--------*/
.photo-mask{opacity:0;position:absolute;left:0;bottom:0;color:#ffffff;width:100%;height:100%;background-color: rgba(155, 155, 155, 0.9);letter-spacing:3px;text-align:center;padding: 4vw;box-sizing:border-box;line-height:22px;-webkit-transition:.2s;-ms-transition:.2s;-moz-transition:.2s;}

.photo-mask-content{ width:100%; height:100%; display:flex; align-items:center; justify-content: center; }
.photo-mask-content span{color:#8dbb00 !important;font-weight:normal !important;font-size: 18px !important;}
.photo-mask .line{border:1px solid #FFFFFF;}
.gallery{ position:relative; }
.gallery .photo-mask{ opacity:0; cursor:pointer; }
.gallery:hover .photo-mask{ opacity:1; }
.gallery:hover .title{ opacity:0; }	
	

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Location <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

.Loadaction_Box { position:relative; height: 100%; width: 0%; position: fixed; overflow:auto; top: 0; left: 0; overflow:auto; background-color:rgba(0, 0, 0, 0.5); z-index:100000000 }
.Loadaction {width: 220px;height: 60px;top: 42%;position: absolute;margin-left: auto;margin-right: auto;padding-top: 10px;left: 0;right: 0;background-color:rgba(0, 0, 0, 0.5);-webkit-border-radius: 2px;-moz-border-radius: 2px;border-radius: 2px;}
.Actionupload_Text {font-size:13px;color:#FFFFFF;height: 25px;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------------------------------->>> pagelink <<<--------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


.pageselect{border:1px solid #CCCCCC;padding: 4px 5px;font-size:12px;}
.pageselect:hover{ background:#ebebeb; }
a.pagelink_no{color:#333333;text-decoration:none;border: 1px solid #cccccc;padding: 7px 5px;display: inline-block;margin: 5px 0;}
a.pagelink_no:hover{ background:#ebebeb; }
a.pagelink{color:#333333;text-decoration:none;border: 1px solid #CCCCCC;padding: 5px 10px;}
a.pagelink:hover{ background:#ebebeb; }
a.pagelink_ch{color:#333333;padding: 5px 10px;border: 1px solid #cccccc;background: #ebebeb;text-decoration:none;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Content <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

/*師資介紹*/
.member_list{width:100%;overflow:hidden;margin: 20px 0 20px 0;}
.member_list_left{width: 30%;margin: 0 4% 0 0;float:left;}
.member_list_left img{width:100%;margin-right: 5%;border:2px solid #eaeaea;max-width: 275px;border-radius: 35px;}
.member_list_center{width: 43%;margin: 0 5% 0 0;float:left;}
.member_list_center2{width: 65%;margin: 0 0 0 0;float:left;}
.member_list_right{ width:30%; float:left; padding:0 0; box-sizing:border-box; }
.member_title{color: #413c3c;font-size:20px;border-bottom: 5px solid;border-image: linear-gradient(to bottom, #7fb069 0%, #548450 50%, #c7e0a8 100%) 1;padding: 40px 0 15px 0;}
.member_title:before{ /*content:url(../../images/teacher_title.png); vertical-align:middle; padding:0 10px 0 0;*/ }
.more_area{width:95%; text-align:right;}

.member{width:100%; overflow:hidden; margin:0 auto; line-height:40px; color:#2D2D2D; font-size:15px; letter-spacing:1px;}
.member_name{font-size:20px;color: #010101;/* font-weight:bold; */margin: 0 0 5px 0;/* border-bottom: 1px dashed #a7a7a4; */}
.member_name a{color: #000000;text-decoration: inherit;}
.member_name span{/* display:block; */margin: 0 20px;color: #009090;font-size: 16px;text-shadow:none;}
.member_info_area{width:100%;overflow:hidden;line-height:25px;padding: 7px 0 7px 0;border-bottom:1px dashed #a7a7a4;}
.member_info_title{float:left;width: 22%;/* height: 35px; */line-height: 35px;color: #548450;/* font-weight: bold; */}
.member_info_title i{ padding:0 10px 0 0; }
.member_info_content{float:left;width: 78%; line-height: 2;}
.member_info_content a{ color:#000000; text-decoration:underline; }
.member_info_content a:hover{ color:#90c31f; }
.member_info_content .form-input {border: 1px solid #b9b7b7;background: #f9f9f9;border-radius: 4px;width: 100%;height: 35px;padding: 5px 10px;box-sizing: border-box;color: #646464; outline: none;}

/*教師留校時間*/


.table-1 { border-collapse:collapse; }
.table-1 th,.table-1 td{ text-align:center;  border:1px solid #cccccc; }

@media screen and (max-width : 768px){
	.member_list_left{ float:none; text-align:center; margin:0 auto; width:60%; }
	.member_list_center, .member_list_center2{ width:100%; float:left }
	.member_list_right{ float:none; width:100%; }	
	.more_area{width:100%; text-align:center;}
	.member_info_title{ float:none; width:100%; }	
}

.form-input input[type="text"],input[type="password"]{border: 1px solid #b9b7b7;background: #f9f9f9;border-radius: 4px;margin:5px 0;width:100%;height:35px;padding:5px 10px;box-sizing:border-box;color: #000;outline: none;font-size: 14px;}
.form-input select{max-width:130px;width:100%;height:35px;border:1px solid #696868;padding:0 7px;outline:0;letter-spacing:1px;font-size:15px;font-family:"微軟正黑體";border: 1px solid #b9b7b7;background: #f9f9f9;border-radius: 4px;}
.form-input textarea {border:1px solid #696868;width:100%; font-size:14px; padding:5px 10px;box-sizing:border-box;color:#646464;-webkit-transition: width 0.4s ease-in-out;transition: height 0.4s ease-in-out;height:100px;outline: none;border: 1px solid #b9b7b7;background: #f9f9f9;border-radius: 4px;}

/*活動花絮*/
.activity-square{float:left;display: inline-block;width: 45%;margin:2%;vertical-align: top;border-radius: 15px;}
.activity-square img{width:100%;}
.activity-square .title{width:100%;overflow:hidden;padding: 10px 0;display: flex;}
.activity-square .title .left{width: 25%;float:left;line-height: 20px;border-right:1px solid #b9b9b9;padding: 0 10px;box-sizing:border-box;}
.activity-square .title .left table td{ color:#143874; text-align:center; height:20px; letter-spacing:1px; }
.activity-square .title .right{width: 75%;float:left;font-size:18px;line-height: 22px;color:#282828;font-weight:bold;letter-spacing:1px;padding: 0 0 0 15px;box-sizing:border-box;display: flex;align-items:center;/* justify-content: center; */}
.activity-square .title .right a{ color:#282828; text-decoration:none; }
.activity-square .content{ cursor:hand; cursor:pointer; width:100%;position: relative;overflow:hidden;min-height: 30px;color: #5c5c5c;font-size: 15px;line-height: 24px;letter-spacing: 1px;}
.activity-square .content a{position:absolute;display:inline-block;right: 0px;bottom: 0px;color:#d67e01;font-size:12px;text-decoration:none;}
.activity-square .content a:before{ content:url(../../images/news-icon1.png); letter-spacing:2px; padding-right:5px; }

.main-box{width:100%;overflow: hidden;/* border:1px solid #e6e5e5; *//* box-shadow: 1px 1px 5px #EBEBEB; */color:#0e0e0e;font-size:16px;margin: 7px 0;letter-spacing: 1px;box-sizing:border-box;align-items: center;/* justify-content: center; */}
.main-box .main-title{ width:100%; background:#143874; color:30px; color:#ffffff; font-size:30px; padding:15px 30px; box-sizing:border-box; }
.main-box .main-content{padding:30px;background: #ffffff;}
.main-box .main-content .end-line{width:100%;height:1px;margin: 0 0 20px 0;border-bottom:1px dotted #919191;}
.main-box .main-content .subtitle{font-size:20px;font-weight:bold;letter-spacing:1px;padding: 0 0 15px 0;color:#143874;}
.main-box .main-content .subtitle img{vertical-align: -30%;padding-right:7px;width:25px;}
.news-content{font-size: 16px;padding: 15px 0 25px 0;overflow:hidden;clear:both;letter-spacing:1px;line-height:30px;/* border-bottom:1px solid #d3d3d3; */}

@media screen and (max-width : 900px) {
	.member_info_content{ width: 100%; }
}

@media screen and (max-width : 550px) {
	.news-square, .activity-square{ width:96%; margin:2%; }	
	.img-demo, .img-demo2 { height:auto; line-height:inherit; }
}

/* 教師 */
.teacher-table {
	min-height: 200px;
	margin: 30px 0;
}

.teacher-table table{
	line-height: 60px;
}

.teacher-table table .title{
	font-size: 16px;
	width: 150px;
}

#privacy_policy_hint {
	position: fixed;
	top: 40%;
	background: #000;
	width: 500px;
	color: #fff;
	font-size: 20px;
	line-height: 34px;
	padding: 15px 10px;
	max-width: 100%;
}
#privacy_policy_hint .link {
	color: #90c31f;
	text-decoration: underline;
}
#privacy_policy_hint .btn_area {
	text-align: center;
	margin: 15px 0 0 0;
}
#privacy_policy_hint .btn {
	background: #90c31f;
	color: #fff;
	font-size: 20px;
	padding: 10px 15px;
	border-radius: 5px;
	cursor: pointer;

}
.max-h-527{max-height: 527px !important;}
.radius-20{border-radius: 20px !important;}
table.table-list {  border-spacing: 0px;
    border-collapse: separate;}

table.table-list tr td{
    padding: 10px 0;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
}


#index-album .items div{
    /* max-height: 248px; */
}

.table-teacher .line{border-bottom:2px #c7e0d8 solid;}
.table-teacher				        {border:2px #c7e0d8 solid;}
.table-teacher	td,
.table-teacher th			        {padding:6px 10px; color:#000; font-size:13px;}
.table-teacher th			        {text-align:center;background:#ddebe6;}
.table-teacher td.lasttd	        {}
.table-teacher thead               {border-bottom:1px #999 solid;}
.table-teacher thead th,
.table-teacher thead td	        {color:#000;  text-align:center; font-weight: bold;}
.table-teacher thead th	        {text-align:left;}
.table-teacher tbody th,
.table-teacher tbody td	        {}
.table-teacher tbody th	        {text-align:left;}
.table-teacher tbody tr.even th,
.table-teacher tbody tr.even td	{background:#f8f8f8;}


@media screen and (max-width : 768px) {
    #home_banner .bx-default-pager{ display:none; }
}

/* 最新消息區塊（獨立版） */
.news-block {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  padding-right: 10px;
  min-width: 160px;
}

.news-block .news-title {
  width: 100%;
  text-align: left;
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 3px;
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.news-block .news-img {
  width: 90px;
  height: auto;
  margin-top: 10px;
  align-self: flex-end;
}

@media screen and (max-width: 900px) {
  .news-block {
    align-items: flex-start;
    padding-right: 0;
  }
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Loading 遮罩畫面 <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

.loading-overlay {
    position: fixed; /* 固定位置，不隨捲動而移動 */
    top: 0;
    left: 0;
    width: 100vw; /* 100% 視窗寬度 */
    height: 100vh; /* 100% 視窗高度 */
    background: rgba(255, 255, 255, 0.85); /* 半透明白色背景 */
    z-index: 9999; /* 確保在最上層 */
    display: flex;
    flex-direction: column;
    align-items: center; /* 水平置中 */
    justify-content: center; /* 垂直置中 */
    transition: opacity 0.4s ease-out; /* 用於淡出效果 */
  }
  
  /* --- Loading 旋轉圖示 --- */
  .loading-spinner {
    border: 8px solid #f3f3f3; /* 淺灰色軌道 */
    border-top: 8px solid #3498db; /* 藍色旋轉部分 */
    border-radius: 50%; /* 圓形 */
    width: 80px;
    height: 80px;
    animation: spin 1s linear infinite; /* 旋轉動畫 */
    margin-bottom: 20px;
  }
  
  /* 旋轉動畫定義 */
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  
  /* --- Loading 文字 --- */
  .loading-text {
    color: #333; /* 深灰色文字 */
    font-size: 1.5em;
    letter-spacing: 2px;
  }

.menu-item::before {
    content: '';
    display: inline-block;
    width: 20px; /* or the width of your image */
    height: 20px; /* or the height of your image */
    background-image: url(../../images/menu-icon.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: top;
    margin-right: 5px;
    margin-top: -1px;
    visibility: hidden;
}

.menu-item:hover::before {
    visibility: visible;
}

/*最新消息日期顯示*/
.news-date-display {
    display: inline-block;
    font-size: 15px;
    color: #578fa2;
    padding: 15px 0px;
    margin: 25px 0;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.news-date-display::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
}

.news-date-display .date-text {
    font-weight: 600;
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> 網站表單 <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

.website-frame{width:100%;overflow:hidden;margin: 20px 0 30px 0 !important;padding: 20px 20px;min-height:200px;/* border: 1px solid #cac6be; */background: #ffffff;/* border-radius: 25px; *//* border-bottom: 3px solid #d6eddf; */}
.website-frame .frame-title{
    position: relative;
    color: #000000;
    /* background-color: #f9e9c6; */
    background-position:center right;
    text-align: left;
    background-repeat:no-repeat;
    color: #256b5e;
    border-bottom: 1px solid #b5b5b5;
    /* font-weight: bold; */
    font-size: 20px;
    padding: 13px 20px 13px 45px;
    margin: 0 0 20px 0px;
    /* border-top-right-radius: 20px; */
    /* border-bottom-left-radius: 20px; */
}
.website-frame .frame-title:before{position: absolute;left: 0px;top: 8px;content:url(../../images/menu-icon.png);/*filter: brightness(0) invert(1);*/}

.website-frame .frame-content{ padding: 30px 0;}


#inner-signup{}
#inner-signup .caption{font-size: 16px;color: #6a6a6a;line-height:25px;font-family: 'Noto Sans TC', sans-serif;margin-bottom:50px;text-align: center;}
#inner-signup .caption span{ color:#ae0101; font-size:14px; }
#inner-signup .flex-table{display:flex;max-width:870px;width:100%;margin:0 auto;padding:0 10px;/* border-bottom:1px dashed #e1e1e1; */}
#inner-signup .flex-table.line{border-bottom:1px dashed #b2b2b2;}
#inner-signup .flex-table .flex-th{width:120px;text-align:left;display:flex;align-items:center;font-size: 16px;color: #3a291a;/* border-top:1px solid #c9c9c9; *//* border-right: 1px solid #c9c9c9; */}
#inner-signup .flex-table .flex-th font{color:#8c1b01;margin-right: 5px;}
#inner-signup .flex-table .flex-th i{ display:inline-block; width:10px; font-style:inherit; color:#F00; padding-right:5px; }
#inner-signup .flex-table .flex-th span{ display:inline-block; color:#067d97; font-size:12px; }

#inner-signup .flex-table .flex-td{flex:4;padding: 5px 10px;text-align:left;/* border-top:1px solid #c9c9c9; */min-height: 50px;font-size: 15px;/* display: flex; */align-items:center;}
#inner-signup .flex-table .middle{ display:flex; align-items:center; }

#inner-signup input[type='text'],
#inner-signup input[type='file'],
#inner-signup select{

outline:0;

/*width:100%;*/

background: #ffffff;

border: 1px solid #bfbfbf;

color:#333333;

font-size:15px;

padding: 12px 20px;

margin: 5px 0;

box-sizing: border-box;

border-radius: 15px;

border: 1px solid #c9c5be;

padding: 7px 16px;

box-sizing: border-box;

margin: 0 0 10px 0;

font-size: 16px;

border-radius: 10px;

color: #000000;

letter-spacing: 1px;
}

#inner-signup .flex-table{min-height: 100px;outline:0;width:100%;background: #ffffff;border: 1px solid #e7d4b5;color: #b3a48a;font-size:15px;padding: 15px 15px;margin: 5px 0;box-sizing: border-box;border-radius: 15px;}
#inner-signup .flex-area{display:flex;}

#inner-signup .flex-area .flex-column{flex: 1;padding: 0 5px; font-size:15px; }
#inner-signup .flex-area .flex-column2{flex: 2;padding: 0 5px;}
#inner-signup .flex-area .flex-column5{flex: 5;padding: 0 5px;}
#inner-signup .flex-table .zipcode{ font-size:15px; color:#787878; }
#inner-signup .flex-table .zipcode span{ font-size:13px; color:#00629f; padding:0 10px; }
#inner-signup span.btn{display: inline-block;border: 1px solid #cf6b00;color: #cf6b00;cursor:pointer;margin: 5px 3px;text-decoration: none;padding: 10px 20px;-webkit-border-radius: 20px;-moz-border-radius: 20px;border-radius: 20px;}

#fancy-frame{ width:100%; padding:40px 5%; }
#fancy-frame .bottom{ width:100%; padding:30px 30px; text-align:center; }


@media screen and (max-width : 768px) {
  	#inner-signup .flex-area{/* display:block; */}
  	#inner-signup .flex-area .flex-column{ padding:5px; }
}

@media screen and (max-width : 480px) {
	#inner-signup .flex-table .flex-th{ border:0; padding:15px 0 0 0; font-weight:bold; }
	#inner-signup .flex-table{ display:block; }
}



@media screen and (max-width : 600px) {
    .website-frame{padding: 20px 20px;}
}


.employment-form {
  font-family: sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #222;
}

.employment-form__section {
  margin-bottom: 20px;
}

.employment-form__sub-options {
  margin-left: 24px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.employment-form__indent {
  margin-left: 30px;
  margin-bottom: 0px;
}

.employment-form__input {
  width: 60px;
  padding: 4px;
  margin-left: 4px;
}

@media (max-width: 600px) {
  .employment-form {
    font-size: 15px;
  }

  .employment-form__input {
    width: 50px;
  }
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> 學員專區 <<<------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

.login-area{ width:100%; overflow:hidden; margin:30px 0; }
.login-title{ display:flex; width:100%; padding:15px 30px; background:#46C5EA; color:#ffffff; border:2px solid #46C5EA; font-size:24px;
-webkit-border-top-left-radius: 10px;
-webkit-border-top-right-radius: 10px;
-moz-border-radius-topleft: 10px;
-moz-border-radius-topright: 10px;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
.login-title .left{ padding-right:30px; }
.login-title .right{ display:flex; border-left:1px dashed #ffffff; padding-left:30px; align-items:center; justify-content: center;}
.login-content{width:100%;padding:15px 10px;font-size:16px;color:#222222;line-height:30px;text-align: center;/* background:#ffffff; */-webkit-border-bottom-right-radius: 10px;-webkit-border-bottom-left-radius: 10px;-moz-border-radius-bottomright: 10px;-moz-border-radius-bottomleft: 10px;border-bottom-right-radius: 10px;border-bottom-left-radius: 10px;}

#login-area{width:100%;margin: 30px auto;overflow:hidden;padding:0 10px;box-sizing:border-box;/* background: #eeeeee; */}
#login-area .input{ cursor:hand; cursor:pointer; background:#f3f3f3;border:1px solid #d6d6d6;max-width:450px; color:#323232; font-size:16px; letter-spacing:2px;margin: 30px auto 0px auto;padding: 5px 30px 5px 30px;-webkit-border-radius: 25px;-moz-border-radius: 25px;border-radius: 25px;}
#login-area .input input[type=text],#login-area .input input[type=password]{ border:0; background:#F3F3F3;width: 70%; outline:0; font-size:14px;padding: 10px 0;letter-spacing:1px; color:#333;}

.login-submit{ display:inline-block; border:1px solid #dadada; margin:30px auto; padding:12px 28px; letter-spacing:1px; color:#585858; font-size:16px; text-decoration:none; background:#ffffff; }

@media (max-width: 480px) {
	.hide480{ display:none; }	

}


.login-area{ width:100%; overflow:hidden; margin:0px auto; text-align:center; }
.login-title{ font-size:18px; color:#395069; font-weight:bold; border-bottom:1px solid #bebebe; padding-bottom:10px; }
.login-area table{ margin:30px 0;}
.login-area table td {color:#3b3a3a;padding: 10px 0px 10px 0px;font-size: 15px;text-align:left;/* height: 50px; */border-bottom: 1px dashed #d1d1d1;line-height: 1.5;}
.login-area table td:first-child span{display: inline-block;width: 15px;color: red;padding-right:3px;}
.login-area table td img{ vertical-align:middle; }

.form-input input[type="text"],input[type="password"],input[type="email"],input[type="number"]{border: 1px solid #b9b7b7;/* background: #f9f9f9; *//* border-radius: 4px; */margin:5px 0;width:100%;height:35px;padding:5px 10px;box-sizing:border-box;color: #000;outline: none;font-size: 14px;}
.form-input select{max-width: 300px;width:100%;height:35px;border:1px solid #696868;padding:0 7px;box-sizing: border-box;outline:0;letter-spacing:1px;font-size:15px;font-family:"微軟正黑體";border: 1px solid #b9b7b7;/* background: #f9f9f9; *//* border-radius: 4px; */}
.form-input textarea {border:1px solid #696868;width:100%;font-size:14px;padding:5px 10px;box-sizing:border-box;color:#646464;-webkit-transition: width 0.4s ease-in-out;transition: height 0.4s ease-in-out;height:100px;outline: none;border: 1px solid #b9b7b7;/* background: #f9f9f9; *//* border-radius: 4px; */}

@media (max-width: 767px) {
  .login-area table,
  .login-area tbody,
  .login-area tr,
  .login-area td {
    display: block;
    width: 100% !important;
    box-sizing: border-box;
  }

  .login-area tr {
    /* margin-bottom: 15px; */
    border-bottom: 2px solid #eee;
    padding-bottom: 15px;
    border-bottom: 1px dashed #d1d1d1;
  }

  .login-area tr:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .login-area td {
    height: auto !important;
    padding: 5px 0;
    text-align: left !important; /* Align text to the left */
    border-bottom: 0 !important;
  }

  .login-area td:first-child {
    font-weight: bold;
    padding-bottom: 5px;
    color: #256b5e;
    /* border-bottom: 0; */
  }
  .login-area table td:first-child span{width:auto;}
  .login-area table tr:nth-child(odd) td {
    background-color: transparent !important;
    border-bottom: 0;
  }

  .login-area input[type="text"],
  .login-area input[type="password"] {
    width: 100%; /* Make inputs take full width */
  }

  .login-area .frame-title {
    margin-top: 20px;
  }
}


.professional-login-container {
    /* max-width: 450px; */
    margin: 2rem auto;
    padding: 1.5rem;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 6px 15px rgba(0,0,0,0.2);
    text-align: center;
}
.professional-login-container .b-innertitle {
    text-align: center;
    margin-bottom: 1.5rem;
}
.professional-login-container .b-innertitle .line {
    display: none;
}
.login-area.form-input .input {
    display: flex;
    align-items: center;
    margin-bottom: 1.2rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 5px 10px;
}
.login-area.form-input .input i {
    color: #888;
    margin-right: 10px;
}
.login-area.form-input .input .hide480,
.login-area.form-input .input span[style*="color:#c7c7c7"] {
    display: none;
}
.login-area.form-input .input input[type="text"],
.login-area.form-input .input input[type="password"] {
    border: none;
    flex: 1;
    padding: 10px 5px;
}
.login-area.form-input .input input[type="text"]:focus,
.login-area.form-input .input input[type="password"]:focus {
    outline: none;
}

.extra-links {
    margin-top: 1.5rem;
    font-size: 0.9rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.extra-links a {
    color: #4a90e2;
    text-decoration: none;
    white-space: nowrap;
    padding: 4px 8px;
    border-radius: 4px;
    transition: all 0.2s ease;
}
.extra-links a:hover {
    text-decoration: underline;
    background-color: rgba(74, 144, 226, 0.1);
}
.extra-links .separator {
    color: #ccc;
    margin: 0 4px;
}

/* 論文管理頁面的狀態文字樣式 */
.status-text {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 500;
    border: 1px solid;
    background-color: transparent;
}

/* 審查結果狀態樣式 */
.status-text.status-pending {
    color: #856404;
    border-color: #ffeaa7;
    background-color: #fff3cd;
}

.status-text.status-accepted {
    color: #155724;
    border-color: #c3e6cb;
    background-color: #d4edda;
}

.status-text.status-rejected {
    color: #721c24;
    border-color: #f5c6cb;
    background-color: #f8d7da;
}

.status-text.status-revised {
    color: #0c5460;
    border-color: #bee5eb;
    background-color: #d1ecf1;
}

/* 付款狀態樣式 */
.status-text.payment-paid {
    color: #155724;
    border-color: #c3e6cb;
    background-color: #d4edda;
}

.status-text.payment-unpaid {
    color: #721c24;
    border-color: #f5c6cb;
    background-color: #f8d7da;
    text-wrap-mode: nowrap;
}

/* 論文管理頁面的操作按鈕樣式 */
.action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    margin: 0 4px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    min-width: 80px;
    background: none;
    cursor: pointer;
}

/* 確保按鈕在表單中也能正常顯示 */
.action-btn[type="submit"] {
    background: none;
    border: 2px solid transparent;
    font-family: inherit;
}

.action-btn i {
    margin-right: 6px;
    font-size: 16px;
}

.action-btn span {
    font-size: 13px;
}

.action-btn.edit-btn {
    background-color: #4a90e2;
    color: #ffffff;
    border-color: #4a90e2;
}

.action-btn.edit-btn:hover {
    background-color: #357abd;
    border-color: #357abd;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(74, 144, 226, 0.3);
}

.action-btn.delete-btn {
    background-color: #dc3545;
    color: #ffffff;
    border-color: #dc3545;
}

.action-btn.delete-btn:hover {
    background-color: #c82333;
    border-color: #c82333;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(220, 53, 69, 0.3);
}

/* 禁用狀態的按鈕樣式 */
.action-btn.disabled {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    color: #ffffff !important;
    opacity: 0.7;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}

.action-btn.disabled:hover {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    transform: none !important;
    box-shadow: none !important;
}

/* 刪除中狀態的特殊樣式 */
.action-btn.delete-btn.disabled {
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    opacity: 0.8;
}

.action-btn.delete-btn.disabled i.fa-spinner {
    color: #ffffff;
}

/* 已審核論文的刪除按鈕禁用樣式 */
.action-btn.delete-btn.disabled:not(.fa-spinner) {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    color: #ffffff !important;
    opacity: 0.6;
    cursor: not-allowed !important;
}

.action-btn.delete-btn.disabled:not(.fa-spinner):hover {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    transform: none !important;
    box-shadow: none !important;
}

/* 響應式設計 - 小螢幕優化 */
@media screen and (max-width: 768px) {
    .action-btn {
        padding: 6px 12px;
        margin: 2px;
        min-width: 70px;
    }
    
    .action-btn i {
        margin-right: 4px;
        font-size: 14px;
    }
    
    .action-btn span {
        font-size: 12px;
    }
}

@media screen and (max-width: 480px) {
    .action-btn {
        display: block;
        width: 100%;
        margin: 4px 0;
        text-align: center;
    }
    
    .action-btn i {
        margin-right: 8px;
    }
}

/* 響應式設計 - 小螢幕優化 */
@media screen and (max-width: 480px) {
    .extra-links {
        flex-direction: column;
        gap: 12px;
    }
    .extra-links .separator {
        display: none;
    }
    .extra-links a {
        padding: 8px 16px;
        border: 1px solid #e0e0e0;
        border-radius: 20px;
        background-color: #f8f9fa;
        min-width: 120px;
        text-align: center;
        text-decoration: none;
    }
    .extra-links a:hover {
        background-color: #e9ecef;
        border-color: #4a90e2;
    }
}

/* 中等螢幕優化 */
@media screen and (max-width: 768px) and (min-width: 481px) {
    .extra-links {
        gap: 6px;
    }
    .extra-links a {
        padding: 6px 12px;
        font-size: 0.85rem;
    }
}


/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> 廠商求才表單樣式 <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


.company-article {

    padding: 15px;
    margin-bottom: 24px;
    line-height: 1.5;
    font-size: 14px;
    text-align: left;
  }

.company-form-section {
    background: #fff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 30px;
}

/* 區塊標題樣式 */
.section-header {
    border-bottom: 2px solid #578fa2;
    margin-bottom: 30px;
    padding-bottom: 15px;
}

.section-header h3 {
    font-size: 24px;
    font-weight: 600;
    color: #333;
    margin: 0 0 5px 0;
    letter-spacing: 1px;
}

.section-header .section-subtitle {
    font-size: 14px;
    color: #666;
    margin: 0;
    font-style: italic;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* 表格樣式 */
.company-form-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-bottom: 30px;
}

.company-form-table tr {
    border-bottom: 1px solid #f0f0f0;
}

.company-form-table tr:last-child {
    border-bottom: none;
}

.company-form-table td {
    padding: 15px 10px;
    vertical-align: top;
}

.form-label {
    width: 200px;
    font-weight: 600;
    color: #333;
    text-align: right;
    padding-right: 20px;
    white-space: nowrap;
}

.form-label .required {
    color: #e74c3c;
    font-weight: bold;
    margin-right: 3px;
}

.form-label .optional {
    color: #95a5a6;
    font-size: 12px;
}

/* 輸入框樣式 */
.company-form-section input[type="text"],
.company-form-section input[type="email"],
.company-form-section input[type="tel"],
.company-form-section textarea,
.company-form-section select {
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 12px 15px;
    width: 100%;
    max-width: 400px;
    font-size: 14px;
    color: #333;
    background: #fff;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.company-form-section input[type="text"]:focus,
.company-form-section input[type="email"]:focus,
.company-form-section input[type="tel"]:focus,
.company-form-section textarea:focus,
.company-form-section select:focus {
    border-color: #578fa2;
    box-shadow: 0 0 0 2px rgba(87, 143, 162, 0.1);
    outline: none;
}

.company-form-section textarea {
    max-width: 500px;
    min-height: 100px;
    resize: vertical;
    line-height: 1.5;
}

/* 字元計數器 */
.char-counter {
    font-size: 12px;
    color: #666;
    margin-top: 5px;
    /* text-align: right; */
    /* max-width: 500px; */
}

/* 錯誤訊息樣式 */
.error-msg {
    color: #e74c3c;
    font-size: 12px;
    margin-left: 10px;
    font-weight: 500;
}

/* 徵才類別區塊 */
.recruit-categories-header {
    font-weight: 600;
    color: #333;
    padding: 20px 10px 10px 10px;
    border-bottom: 1px solid #eee;
}

.recruit-group {
    padding: 20px 0px;
}

.recruit-category {
    margin-bottom: 25px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 6px;
    border-left: 4px solid #e8f1de;
}

.category-title {
    display: block;
    font-weight: 600;
    color: #333;
    margin-bottom: 12px;
    font-size: 15px;
}

.category-title .required {
    color: #e74c3c;
    margin-left: 3px;
}

.recruit-inputs {
    display: flex;
    gap: 15px;
    align-items: center;
    flex-wrap: wrap;
}

.recruit-inputs input {
    flex: 1;
    min-width: 150px;
    max-width: 200px;
}

/* 複選框和單選框群組 */
.checkbox-group,
.employment-type {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    align-items: center;
    margin-top: 10px;
}

.checkbox-group label,
.employment-type label {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #333;
    cursor: pointer;
    padding: 8px 12px;
    /* background: #f8f9fa; */
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

.checkbox-group label:hover,
.employment-type label:hover {
    background: #e9ecef;
}

.checkbox-group input[type="checkbox"],
.checkbox-group input[type="radio"],
.employment-type input[type="radio"] {
    width: auto;
    max-width: none;
    margin-right: 8px;
    margin-top: 0;
}

/* 語言能力區塊 */
.language-section {
    margin-top: 15px;
}

.language-item {
    /* margin-bottom: 15px; */
    padding: 5px 10px;
    /* background: #f8f9fa; */
    border-radius: 6px;
}

.language-checkbox {
    display: block;
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
    cursor: pointer;
}

.language-checkbox input {
    width: auto;
    max-width: none;
    margin-right: 8px;
}

.skill-level {
    display: flex;
    gap: 15px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.skill-level label {
    display: flex;
    align-items: center;
    background: #fff;
    padding: 6px 12px;
    border-radius: 4px;
    border: 1px solid #ddd;
    cursor: pointer;
    transition: all 0.3s ease;
}

.skill-level label:hover {
    background: #e9ecef;
    border-color: #e9ecef;
}

.skill-level input {
    width: auto;
    max-width: none;
    margin-right: 6px;
}

.other-language-input,
.other-welfare-input {
    margin-top: 10px;
    max-width: 300px;
}

/* 日期輸入區塊 */
.date-inputs {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.date-input {
    max-width: 100px;
}

/* 驗證碼區塊 */
.verification-area {
    display: flex;
    gap: 15px;
    align-items: center;
    flex-wrap: wrap;
}

.verification-area input {
    max-width: 200px;
}

.img_verification {
    border: 1px solid #ddd;
    border-radius: 4px;
}

/* 提交按鈕區塊 */
.submit-section {
    text-align: center;
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid #eee;
}

.submit-btn {
    background: linear-gradient(135deg, #578fa2, #4a7a8c);
    color: #fff;
    padding: 15px 40px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
    transition: all 0.3s ease;
    display: inline-block;
    box-shadow: 0 3px 8px rgba(87, 143, 162, 0.3);
}

.submit-btn:hover {
    background: linear-gradient(135deg, #4a7a8c, #3d6674);
    transform: translateY(-2px);
    box-shadow: 0 5px 12px rgba(87, 143, 162, 0.4);
    color: #fff;
}

#add-category{margin-top:10px; float:right;}

/* 響應式設計 */
@media (max-width: 768px) {

    #add-category{ float:none;}

    .company-form-section {
        padding: 20px 15px;
    }
    
    .company-form-table td {
        padding: 10px 5px;
    }
    
    .form-label {
        width: 100%;
        text-align: left;
        padding-right: 0;
        padding-bottom: 5px;
        white-space: normal;
    }
    
    .company-form-table tr {
        display: block;
        border-bottom: 1px solid #eee;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    
    .company-form-table td {
        display: block;
        width: 100%;
    }
    
    .recruit-inputs {
        flex-direction: column;
        gap: 10px;
    }
    
    .recruit-inputs input {
        max-width: 100%;
    }
    
    .checkbox-group,
    .employment-type,
    .skill-level {
        /* flex-direction: column; */
        align-items: flex-start;
        gap: 3px;
    }
    
    .verification-area {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .section-header h3 {
        font-size: 20px;
    }
    
    .date-inputs {
        /* flex-direction: column; */
        align-items: flex-start;
        gap: 8px;
    }
    
    .date-input {
        max-width: 150px;
    }
}

@media (max-width: 480px) {
    .company-form-section {
        padding: 15px 10px;
    }
    
    .section-header {
        margin-bottom: 20px;
        padding-bottom: 10px;
    }
    
    .section-header h3 {
        font-size: 18px;
    }
    
    .recruit-category {
        padding: 15px;
        margin-bottom: 20px;
    }
    
    .submit-btn {
        padding: 12px 30px;
        font-size: 15px;
    }

}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> Safari select 樣式統一 <<<----------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/


/*fix safari*/
input, select, textarea{ -ms-box-sizing:content-box; -moz-box-sizing:content-box; box-sizing:content-box; -webkit-box-sizing:content-box;}
input[type='text'],input[type='password'],input[type='button'],input[type='submit']{  -webkit-appearance: none; }

/* Safari select 樣式統一 */
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="%23666" d="M2 0L0 2h4zm0 5L0 3h4z"/></svg>');
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 12px;
    padding-right: 30px !important;
}

/* 針對不同容器的 select 統一樣式 */
.form-input select,
select[name="topics_sn"],
select[name="presentation_format"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-image: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="%23666" d="M2 0L0 2h4zm0 5L0 3h4z"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 8px center !important;
    background-size: 12px !important;
    padding-right: 30px !important;
    border: 1px solid #b9b7b7 !important;
    border-radius: 4px !important;
    height: 35px !important;
    font-size: 14px !important;
    color: #333 !important;
    background-color: #fff !important;
}

/* ================================================== Performance 研發績效專用樣式 ================================================== */

/* Performance 提示區域 */
.performance-notice {
    padding: 40px 20px;
    font-size: 18px;
    text-align: center;
    color: #666;
    background: #f8f9fa;
    border-radius: 8px;
    margin: 20px 0;
    min-height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Performance 表格容器優化 */
.performance-table-container {
    position: relative;
    margin-bottom: 30px;
}

.performance-table-wrapper {
    overflow-x: auto;
    overflow-y: auto;
    max-height: 800px;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    background: #fff;
    position: relative; /* 確保滾動容器正確定位 */

    /* 美化捲軸 */
    scrollbar-width: thin;
    scrollbar-color: #658b62 #f0f0f0;
}

.performance-table-wrapper::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}

.performance-table-wrapper::-webkit-scrollbar-track {
    background: #f0f0f0;
    border-radius: 6px;
}

.performance-table-wrapper::-webkit-scrollbar-thumb {
    background: #658b62;
    border-radius: 6px;
    transition: background 0.3s ease;
}

.performance-table-wrapper::-webkit-scrollbar-thumb:hover {
    background: #578fa2;
}

/* 表格滾動陰影效果 */
.performance-table-wrapper.scrolled-left::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 100%;
    background: linear-gradient(to right, rgba(0,0,0,0.1), transparent);
    z-index: 5;
    pointer-events: none;
}

.performance-table-wrapper.scrollable-right::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 20px;
    height: 100%;
    /*background: linear-gradient(to left, rgba(0,0,0,0.1), transparent);*/
    z-index: 5;
    pointer-events: none;
}

/* 提示器可點擊樣式 */
.table-scroll-indicator:hover {
    background: linear-gradient(135deg, #e9ecef, #dee2e6);
    cursor: pointer;
    transform: translateY(-1px);
    transition: all 0.2s ease;
}

.table-scroll-indicator:active {
    transform: translateY(0);
}

/* 捲軸提示器 */
.table-scroll-indicator {
    text-align: center;
    padding: 10px 15px;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border: 2px dashed #658b62;
    border-radius: 6px;
    margin-bottom: 15px;
    color: #658b62;
    font-weight: 500;
    font-size: 14px;
    position: relative;
    overflow: hidden;
}

.table-scroll-indicator::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(101, 139, 98, 0.1), transparent);
    animation: scrollHint 3s infinite;
}

@keyframes scrollHint {
    0% { left: -100%; }
    100% { left: 100%; }
}

/* Performance 表格樣式優化 */
.performance-table {
    border-collapse: separate;
    border-spacing: 0;
    table-layout: auto; /* 使用自動表格佈局讓欄位根據內容調整 */
    width: max-content; /* 讓表格寬度完全根據內容決定 */
    min-width: 100%; /* 確保表格至少占滿容器寬度 */
}

.performance-table th {
    background: linear-gradient(135deg, #658b62, #7a9c77) !important;
    color: #fff !important;
    font-weight: bold;
    text-align: center;
    padding: 15px 18px !important;
    font-size: 14px !important;
    line-height: 1.4;
    border: 1px solid #5a7a57;
    white-space: nowrap; /* 防止標題換行 */

    /* 固定標題 */
    position: sticky;
    top: 0;
    z-index: 10;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.performance-table th:first-child {
    /* border-top-left-radius: 8px; */
}

.performance-table th:last-child {
    /* border-top-right-radius: 8px; */
}

.performance-table td {
    text-align: left;
    vertical-align: middle;
    position: relative;
    padding: 12px 18px !important;
    font-size: 14px !important;
    line-height: 1.5;
    border: 1px solid #e0e0e0;
    background: #fff;
    transition: all 0.2s ease;
    white-space: nowrap; /* 防止內容換行 */
}

.performance-table tbody tr:hover {
    background: #f0f8f0 !important;
    box-shadow: 0 2px 8px rgba(101, 139, 98, 0.1);
}

.performance-table tbody tr:hover td {
    background: inherit !important;
}

/* 斑馬紋效果 */
.performance-table tbody tr:nth-child(even) td {
    background: #f9f9f9;
}

.performance-table tbody tr:nth-child(even):hover td {
    background: #f0f8f0 !important;
}

/* Performance 表格連結樣式 */
.performance-table .year-link,
.performance-table .data-link {
    color: #578fa2;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.3s ease;
    display: inline-block;
    padding: 2px 4px;
    border-radius: 3px;
}

.performance-table .year-link:hover,
.performance-table .data-link:hover {
    color: #3d6674;
    background: rgba(87, 143, 162, 0.1);
    text-decoration: underline;
}

/* Performance 無資料狀態 */
.performance-table .no-data {
    text-align: center;
    padding: 30px 20px;
    color: #666;
    font-style: italic;
    background: #f8f9fa;
}

/* Performance Detail 樣式 */
.performance-detail-content {
    background: #fff;
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.performance-basic-info {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 6px;
    margin-bottom: 30px;
    border-left: 4px solid #658b62;
}

.performance-basic-info h3 {
    margin: 0 0 15px 0;
    color: #333;
    font-size: 18px;
    font-weight: bold;
}

.basic-info-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.basic-info-grid > div {
    font-size: 15px;
    color: #555;
}

.basic-info-grid strong {
    color: #333;
}

/* Performance Detail Section */
.performance-detail-section {
    margin-bottom: 30px;
}

.performance-detail-section h3 {
    margin: 0 0 20px 0;
    color: #333;
    font-size: 18px;
    font-weight: bold;
    padding-bottom: 10px;
    border-bottom: 2px solid #658b62;
}

.detail-grid {
    display: grid;
    gap: 15px;
}

.detail-item {
    background: #fafafa;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 15px;
    transition: all 0.3s ease;
}

.detail-item:hover {
    background: #f5f5f5;
    border-color: #d0d0d0;
}

.detail-label {
    font-weight: bold;
    color: #555;
    margin-bottom: 8px;
    font-size: 14px;
}

.detail-value {
    color: #333;
    line-height: 1.6;
    font-size: 15px;
}

/* Performance Meta Info */
.performance-meta-info {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #ddd;
}

.meta-time {
    color: #666;
    font-size: 14px;
}

.meta-time > div {
    margin-bottom: 5px;
}

/* Performance Button Group */
.performance-btn-group {
    text-align: center;
    margin: 30px 0;
}

.performance-btn-group .btn-1,
.performance-btn-group .btn-2 {
    margin: 0 10px;
}

/* 手機版滑動提示 */
.mobile-scroll-toast {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(0, 0, 0, 0.85);
    color: white;
    padding: 10px 15px;
    border-radius: 15px;
    z-index: 1000;
    display: none;
    font-size: 13px;
    font-size: 16px;
    font-weight: 500;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.toast-icon {
    font-size: 18px;
    margin-right: 8px;
    animation: swipeAnimation 2s infinite;
}

@keyframes swipeAnimation {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-3px); }
    75% { transform: translateX(3px); }
}

.mobile-scroll-toast.show {
    display: block;
    animation: fadeInOut 4s ease-in-out forwards;
}

@keyframes fadeInOut {
    0% { opacity: 0; transform: translate(-50%, -50%) scale(0.8); }
    10%, 90% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
    100% { opacity: 0; transform: translate(-50%, -50%) scale(0.8); }
}

/* Performance Summary 總覽樣式 */
.performance-summary {
    background: #fff;
    border-radius: 8px;
    padding: 30px 0 0 0;
    /* box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08); */
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.performance-summary h3 {
    margin: 0 0 25px 0;
    color: #333;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 15px;
    border-bottom: 2px solid #658b62;
    width: 100%;
}

.summary-item {
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    display: inline-block;
    width: 100%;
}

.summary-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.summary-link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    background: #f8f9fa;
    text-decoration: none;
    color: #333;
    transition: all 0.3s ease;
}

.summary-link:hover {
    background: #658b62;
    color: #fff;
}

.summary-link.active {
    background: #658b62;
    color: #fff;
    font-weight: bold;
}

.summary-title {
    font-size: 16px;
    font-weight: 500;
}

.summary-count {
    background: #578fa2;
    color: #fff;
    padding: 4px 12px;
    border-radius: 15px;
    font-size: 14px;
    font-weight: bold;
    transition: all 0.3s ease;
}

.summary-link:hover .summary-count {
    background: #fff;
    color: #658b62;
}

.summary-total {
    margin-top: 25px;
    padding: 15px 20px;
    background: #658b62;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    font-size: 18px;
    font-weight: bold;
    width: 100%;
}

/* 響應式設計 */
@media (max-width: 768px) {
    .performance-notice {
        padding: 30px 15px;
        font-size: 16px;
        min-height: 80px;
    }
    
    .performance-detail-content {
        padding: 20px 15px;
    }
    
    .basic-info-grid {
        flex-direction: column;
        gap: 10px;
    }
    
    .performance-btn-group .btn-1,
    .performance-btn-group .btn-2 {
        display: block;
        margin: 10px auto;
        max-width: 200px;
    }
    
    .detail-item {
        padding: 12px;
    }
    
    .performance-table {
        min-width: 600px;
        font-size: 13px;
    }
    
    .performance-table th,
    .performance-table td {
        padding: 10px 12px !important;
    }
    
    .table-scroll-indicator {
        padding: 8px 12px;
        font-size: 13px;
        margin-bottom: 10px;
    }
    
    .performance-table-container {
        margin-bottom: 20px;
    }
    
    .performance-table-wrapper {
        max-height: 450px;
    }
}

@media (max-width: 480px) {
    .performance-notice {
        padding: 20px 10px;
        font-size: 15px;
    }
    
    .performance-detail-content {
        padding: 15px 10px;
    }
    
    .performance-basic-info,
    .detail-item {
        padding: 10px;
    }
    
    .performance-table {
        min-width: 500px;
        font-size: 12px;
    }
    
    .performance-table th,
    .performance-table td {
        padding: 8px 10px !important;
    }
    
    .table-scroll-indicator {
        padding: 6px 10px;
        font-size: 12px;
        margin-bottom: 8px;
    }
    
    .mobile-scroll-toast {
        padding: 8px 12px;
        font-size: 12px;
    }
    
    .performance-table-wrapper {
        max-height: 350px;
    }
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> 實驗室展示系統 <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/



/* 實驗室網格展示 */
#laboratory-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 30px;
    padding: 30px 0;
}

.laboratory-item {
    background: #ffffff;
    border-radius: 15px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: all 0.3s ease;
    border: 2px solid #f0f0f0;
}

.laboratory-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
    border-color: #548450;
}

.lab-image {
    position: relative;
    overflow: hidden;
    height: 200px;
}

.lab-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
}

.laboratory-item:hover .lab-image img {
    transform: scale(1.05);
}

.lab-info {
    padding: 20px;
}

.lab-category {
    display: inline-block;
    background: #548450;
    color: #ffffff;
    font-size: 12px;
    padding: 4px 12px;
    border-radius: 12px;
    margin-bottom: 10px;
    font-weight: bold;
}

.lab-title {
    font-size: 18px;
    font-weight: bold;
    color: #333;
    margin-bottom: 10px;
    line-height: 1.4;
}

.lab-title a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
}

.lab-title a:hover {
    color: #548450;
}

.lab-location {
    color: #666;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.lab-location i {
    color: #548450;
}

/* 無資料提示 */
.no-data {
    grid-column: 1 / -1;
    text-align: center;
    padding: 80px 20px;
    color: #666;
    font-size: 18px;
    background: #f8f9fa;
    border-radius: 10px;
    border: 2px dashed #ddd;
}

/* 實驗室詳細頁面唯讀樣式 */
.laboratory-detail-readonly .member_info_content.readonly-content {
    /* background: #f8f9fa; */
    /* border: 1px solid #e9ecef; */
    border-radius: 4px;
    padding: 10px 15px;
    color: #333;
    font-size: 15px;
    line-height: 1.5;
}

.laboratory-detail-readonly .readonly-editor {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    padding: 20px;
    color: #333;
    line-height: 1.6;
}

/* 響應式設計 */
@media screen and (max-width: 1024px) {
    #laboratory-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        gap: 25px;
    }
}

@media screen and (max-width: 768px) {
    #laboratory-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 20px;
        padding: 20px 0;
    }
    
    .laboratory-item {
        border-radius: 10px;
    }
    
    .lab-image {
        height: 180px;
    }
    
    .lab-info {
        padding: 15px;
    }
    
    .lab-title {
        font-size: 16px;
    }
    
}

@media screen and (max-width: 480px) {
    #laboratory-grid {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 15px 0;
    }
    
    .lab-image {
        height: 160px;
    }
    
    .lab-info {
        padding: 12px;
    }
    
    .lab-title {
        font-size: 15px;
    }
    
    .lab-category {
        font-size: 11px;
        padding: 3px 10px;
    }
    
    .no-data {
        padding: 50px 15px;
        font-size: 16px;
    }
}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ------------------------------>>> 網站統一樣式 <<<----------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/

/*網站統一表格樣式*/
.common-table {
    border-collapse: separate;
    border-spacing: 0;
    table-layout: auto; /* 使用自動表格佈局讓欄位根據內容調整 */
    width: max-content; /* 讓表格寬度完全根據內容決定 */
    min-width: 100%; /* 確保表格至少占滿容器寬度 */
}

.common-table tbody tr:hover {
    background: #f0f8f0 !important;
    box-shadow: 0 2px 8px rgba(101, 139, 98, 0.1);
}

.common-table tbody tr:hover td {
    background: inherit !important;
}

/* 當 td 為 header-style 時，不套用 hover 背景色 */
.common-table tbody tr:hover td.header-style {
    background: linear-gradient(135deg, #658b62, #7a9c77) !important;
    color: #fff !important;
}

.common-table th {
    background: linear-gradient(135deg, #658b62, #7a9c77) !important;
    color: #fff !important;
    font-weight: bold;
    text-align: center;
    padding: 15px 18px !important;
    font-size: 14px !important;
    line-height: 1.4;
    border: 1px solid #5a7a57;
    white-space: nowrap; /* 防止標題換行 */
}

.common-table th:first-child {
    /* border-top-left-radius: 8px; */
}

.common-table th:last-child {
    /* border-top-right-radius: 8px; */
}

.common-table td {
    text-align: left;
    vertical-align: middle;
    position: relative;
    padding: 12px 18px !important;
    font-size: 14px !important;
    line-height: 1.5;
    border: 1px solid #e0e0e0;
    background: #fff;
    transition: all 0.2s ease;
    white-space: nowrap; /* 防止內容換行 */
}

/* 儲存格樣式 class */
.common-table td.header-style {
    background: linear-gradient(135deg, #658b62, #7a9c77) !important;
    color: #fff !important;
    font-weight: bold !important;
    text-align: center !important;
    border: 1px solid #5a7a57 !important;
}

.common-table td.normal-style {
    background: #fff !important;
    color: inherit !important;
    font-weight: normal !important;
    text-align: left !important;
}

/*特殊段落樣式*/
.important-notice {
    background: #fff3cd;
    border-left: 4px solid #ff6b6b;
    padding: 15px 20px;
    margin: 15px 0;
    border-radius: 4px;
    font-weight: bold;
    color: #856404;
}

.notice {
    background: #d1ecf1;
    border-left: 4px solid #17a2b8;
    padding: 12px 18px;
    margin: 12px 0;
    border-radius: 4px;
    color: #0c5460;
}

blockquote {
    background: #f8f9fa;
    border-left: 4px solid #6c757d;
    padding: 15px 20px;
    margin: 15px 0;
    font-style: italic;
    color: #495057;
}

pre {
    background: #f4f4f4;
    border: 1px solid #ddd;
    padding: 12px 15px;
    margin: 12px 0;
    border-radius: 4px;
    font-family: 'Courier New', monospace;
    font-size: 13px;
    line-height: 1.4;
    overflow-x: auto;
}

mark {
    background: #fff3cd;
    padding: 2px 4px;
    border-radius: 2px;
}

small {
    font-size: 11px;
    color: #6c757d;
}