.formmain{border: 1px solid #e6e6e6;margin-bottom: 20px;}
.formmaintl{font-size: 18px;font-weight: bold;text-align: center;background:#f3e9df;padding: 10px 0px;color: #8b776d;margin: 0px;}
.formmainbody{padding: 15px 7px 5px 7px;}
.formTabTl{font-size: 22px;font-weight: bold;color: #555555;margin: 20px 0px 15px 0px;}
.formTabHint{color: #EA6152;font-weight: bold;line-height: 25px;margin-bottom: 10px;}
.formGpC{margin-bottom: 2px;}
.requiredIco{font-size: 16px!important;font-weight: bold;color: #EC6D6C;line-height: 48px;}
.formGpCRt{padding-left: 20px;}
.formGpinp{-webkit-appearance:none;background-color: #f1f1f1;height: 48px!important;line-height: 48px;border: none;box-sizing: border-box;padding: 0px 15px;font-size: 12px;width: 100%;}
.formGpSurname{width: 23%;margin-right: 2%;}
.formGpName{width: 33%;margin-right: 2%;}
.formGpSexGp{line-height: 48px;font-size: 16px;color: #666666;}
.formGpSexGp input{width: 16px;height: 16px;vertical-align: -2px;}
.formGpSexGp{margin-right: 10px;}
.formGpSex label{font-weight: normal;font-size: 12px;}
.form-note p{color: #dc5555;line-height: 19px;font-size: 12px;}
.formTl{color: #999999;font-size: 18px;font-weight: bold;padding: 7px 0px 15px 10px;margin: 0px;}
.form-hint-item{padding-left: 18px;}
.contact-mobile{width: 45%;}
.no-mobile{color:#444!important;font-size: 12px;text-decoration: underline!important;padding-left: 5%;line-height: 36px;display: inline-block;}
.no-mobile i{color:#444!important;margin-right: 5px;}
.service-contact .no-mobile{padding-left: 2%;}
.contact-mobile-alert{background: #F2F2F2;border: 2px solid #e6e6e6;padding: 30px 14px;box-sizing: border-box;width: 600px;position: fixed;left: 50%;margin-left: -300px;top: 50%;z-index: 1200;margin-top: -167px;display: none;}
.contact-mobile-alert p{color: #4D4D4D;font-size: 15px;line-height: 25px;}
.contact-mobile-alert p a{color: #8b776d;font-weight: bold;text-decoration: underline;}
.contact-mobile-alert li{list-style-type:decimal;color: #4D4D4D;font-size: 15px;line-height: 25px;}
.contact-mobile-alert ul{padding-left: 15px!important;margin-bottom: 20px;}
.contact-mobile-close{position: absolute;color: #4D4D4D;font-size: 15px;position: absolute;right: 5px;top: 7px;display: inline-block;text-align: center;line-height: 6px;}
.contact-mobile-close p{font-size: 12px;}
.contact-mobile-close i{color: #4D4D4D;font-size: 15px;}
.plan-item{margin: 20px 0;}
.plan-item-li{width: 25%;color: #8b776d;font-size: 16px;font-weight: bold;text-align: center;padding: 10px 0;border-bottom: 5px solid #e6e6e6;}
.plan-item-li i{color: #8b776d;font-size: 16px;margin-right: 5px;}
.plan-item-li.active{border-color: #8b776d;}
.plan-item-fix{position: fixed;margin: 0;width: 100%;z-index: 1200;left: 0;top: 84px;background: rgba(255,255,255,0.8);}
@media (max-width: 1510px) {
	.plan-item-fix{top: 81px;}
}
@media (max-width: 1279px) {
	.plan-item-fix{top: 48px;}
}
@media (min-width: 1080px){
	.no-mobile:hover{opacity: 0.8;}
}
@media (max-width: 767px){
	.formTl{font-size: 16px;}
	.form-hint-item{padding-left: 0px;}
	.form-note p{padding: 0!important;}
	.contact-mobile{width: 100%;}
	.no-mobile{font-size: 12px;margin-top: 5px;line-height: normal;padding-left: 0;}
	.service-contact .no-mobile{padding-left: 0;}
	.contact-mobile-alert p,.contact-mobile-alert li{font-size: 14px;line-height: 22px;}
	.contact-mobile-alert{padding: 30px 15px;width: 92%;left: 4%;margin-left: 0;margin-top: -218px;}
	.contact-mobile-alert ul{padding-left: 20px!important;}
	.plan-item-li{padding: 5px 0;}
	.plan-item-li,.plan-item-li i{font-size: 12px;}
}
.formGptown{width: 49%;}
.formGpC select{background: #f1f1f1;height: 48px;border: none;box-sizing: border-box;padding: 0px 10px;font-size: 12px;width: 100%;}
.formGpPl{padding-left: 7px;}
.formTl .requiredIco{line-height: normal;}
.formTl .formGpCRt{font-size: 18px;line-height: 22px;}
.formcheck{margin-left: 7px;margin-bottom: 8px;}
.formservice{display: none;}
.formupload{position: relative;width: 80%;margin-bottom: 10px;}
.formupload input[type="file"]{position: absolute;width: 100%;left: 0;height: 100%;top: 0;opacity: 0;}
.formupload input[type="button"]{width: 30%;background:#8b776d;-webkit-appearance:none;border: none;border-radius: 0;color: #fff;font-size: 14px;text-align: center;height: 40px;line-height: 40px;}
#uploadPath{display: block;width: 70%;height: 40px;line-height: 40px;background: #ececec;font-size: 14px;box-sizing: border-box;padding: 0px 10px;}
.formcheckGp{margin-bottom: 10px;font-size: 16px;color: #666666;margin-right: 10px;line-height: 20px;}
.formcheckGp input[type="checkbox"],.formcheckGp input[type="radio"]{width: 16px;height: 16px;display: block;margin-top: 0px;margin-top: 2px;}
.formcheckGp label{line-height: 16px;font-weight: normal;font-size:12px;}
.formcheckGpRt{padding-left: 24px;}
.small-form{padding: 0;margin: 10px 0;}
.formcheckGpRt input{-webkit-appearance:none;display: inline-block;width: 115px;border: none;border-bottom: 1px solid #b8b5b2;margin-left: 10px;margin-right: 10px;height: 20px;line-height: 20px;background: none;vertical-align: top;font-size:12px;}
.formcheckGpRt .small-input-item{width: 60px;}
.formGpPer{width: 32.3%;}
.formGpTime{width: 31.3%;margin: 0px 2%;}
.formGpDate{width: 32.3%;}
.formGpinpDate{/*background-image: url(../images/sj.png);*/background-repeat: no-repeat;background-position: 96% center;}
.formGpC textarea{-webkit-appearance:none;background-color: #f1f1f1;height: 160px;line-height: 48px;border: none;box-sizing: border-box;padding: 10px 15px;font-size: 12px;width: 100%;font-family: "微軟正黑體";resize: none;overflow: auto;line-height: 25px;}
.formGpB{margin-bottom: 10px;}
.formGpBtn{-webkit-appearance:none;background: #8b776d;color: #fff;font-size: 16px;font-weight: bold;border-radius: 5px;cursor: pointer;height: 32px;width: 150px;text-align: center;line-height: 32px;border: none;margin-top: 40px;}
.formPhone{display: none;}
.formLink .xinde-share2{padding: 0px;}
.formLink{padding-top: 15px;}
@media (max-width: 767px){
.formcontainer{ width: 100%;box-sizing: border-box;padding: 0px 5px;}
.formTabA{display: none;}
.formText{width: 100%;}
/*.formGpSex{width: 100%;box-sizing: border-box;padding-left: 25px;}*/
.formGpSurname{width: 25%;}
.formGpName{width: 36%;}
.formGpDate{width: 49%;}
.formGpTime{width: 49%;margin-left: 2%;margin-right: 0px;margin-bottom: 8px;}
.formGpPer{float: left!important;width: 49%;}
.formoutside{width: 100%;padding-top: 7px;}
.formGpBtn{float: left!important;margin-top: 20px;margin-left: 25px;}
.formPhone{display: block;border: 1px solid #d7d7d7;background: #f2f2f2;height: 40px;padding: 0px 10px;font-size: 16px;box-sizing: border-box;width: 100%;}
.formLink{margin-bottom: 10px;}
.xinde-share1{padding-bottom: 10px;}
}
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    #c1c1c1;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #c1c1c1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #c1c1c1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:    #c1c1c1;
}
.form-group-other{position: relative;padding-right: 130px;}
.send-button{position: absolute;height: 48px;background: #8b776d;color: #fff;-webkit-appearance: none;font-size: 12px;text-align: center;right: 0;top: 0;width: 120px;text-align: center;border: none;cursor: pointer;}
@media (min-width: 1080px){
	.send-button:hover{opacity: 0.8;}
}
.step2-div{display:none;}
.check-input{width:70%;}
.message-button{right: auto; top: auto; height: 30px; width: 84px;margin-left:10px;border-radius: 5px;}
.disabled-link {
    pointer-events: none;
    background: #9e9e9e;
}
.gallery_type {
	color: #000;
}
.gallery_type.changed {
	color: #333;
}

.successtext {
    border: 1px solid #3c763d !important;
}
.radio-item-right{margin-left: 110px;}
.radio-item{line-height: 48px;}
.radio-item label{font-weight: normal;font-size: 12px;}
.select-item{width: 28%;margin-right: 2%;}
.code-item{width: 25%;margin-right: 2%;}
.mobile-item{margin-top: 8px;}
.mobile-item-other{width: 43%;}
@media (max-width: 1279px) {
	.radio-item{width: 100%;}
	.radio-item-right{margin-left: 0;}
	.code-item{margin-right: 0;width: 40%;}
	.select-item{width: 58%;margin-right: 2%;margin-bottom: 3px;}
	.mobile-item-other{width: 100%;}
}

/* ===== Select2 關閉狀態：與 .formGpC select 視覺一致 ===== */
/* Select2 有時會在 container 寫死 inline width，用 !important 蓋掉 */
#select1 + .select2-container {
    width: 100% !important;
}

/* 外框樣式對應 .formGpC select */
#select1 + .select2-container .select2-selection--single {
    background: #f1f1f1;
    height: 48px;
    border: 0;
    border-radius: 0;
    box-sizing: border-box;
    padding: 0 10px;
    width: 100%;
}

/* 顯示已選文字：垂直置中 + 字級 12px */
#select1 + .select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 48px;
    padding: 0 18px 0 0;
    font-size: 12px;
    color: #444;
}

/* 右側箭頭跟著 48px 垂直置中 */
#select1 + .select2-container .select2-selection--single .select2-selection__arrow {
    height: 48px;
    top: 0;
    right: 8px;
}

/* ===== 展開後的下拉清單 ===== */
/* 整個下拉外框 */
.select2-dropdown {
    border: none;
    border-radius: 6px;
    box-shadow: 0 6px 20px rgba(120, 90, 50, 0.12);
    overflow: hidden;
    background-color: #f1f1f1;
}

/* optgroup 群組標題 */
.select2-results__group {
    font-size: 14px;
    font-weight: 700;
    color: #b89a78;
    background-color: #faf4ea;
    padding: 12px 16px;
    letter-spacing: 0.5px;
}

/* 每個 option */
.select2-results__option {
    font-size: 12px;
    color: #444;
    padding: 12px 16px 12px 28px;
    line-height: 1.5;
    background-color: transparent;
}

/* 鍵盤上下／滑鼠 hover 的選項 */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #b89a78;
    color: #fff;
}

/* 已選取的選項 */
.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: #e5e5e5;
    color: #333;
}

/* 「請選擇預約項目」這種無 value 的提示選項 */
.select2-results__option[role="presentation"] {
    color: #999;
}

/* ===== 手機微調 ===== */
@media (max-width: 768px) {
    .select2-results__group {
        font-size: 14px;
        padding: 10px 14px;
    }
    .select2-results__option {
        font-size: 12px;
        padding: 11px 14px 11px 24px;
    }
}

.form-note p a{ color:#ea6152; text-decoration:underline; }

/* 諮詢切換頁籤 */
.consult-tabs {
	width: 100%;
	display: flex;
	margin-bottom: 15px;
	border-radius: 6px 6px 0 0;
	overflow: hidden;
}
.consult-tabs .consult-tab {
	flex: 1 1 50%;
	display: block;
	text-align: center;
	padding: 14px 10px;
	font-size: 17px;
	line-height: 1.4;
	color: #8b776d;
	background: #f3e9dc;
	text-decoration: none;
	letter-spacing: 1px;
	transition: background .2s, color .2s;
}
.consult-tabs .consult-tab i {
	margin-right: 6px;
}
.consult-tabs .consult-tab:hover {
	background: #e8d9c6;
	color: #6f5d54;
}
.consult-tabs .consult-tab.active {
	background: #8b776d;
	color: #fff;
	font-weight: bold;
}
.consult-tabs .consult-tab.active:hover {
	background: #8b776d;
	color: #fff;
}
@media (max-width: 640px) {
	.consult-tabs .consult-tab {
		font-size: 15px;
		padding: 12px 6px;
		letter-spacing: 0;
	}
}


/* ============================================================
   2026-09 諮詢表版面優化 v2（測試版）
   以下為覆寫區塊，原始規則保留在上方不動，方便比對與回復。
   套用範圍：contact_us_test.html + contact_form_test.html
   重點：拿掉步驟列與 ※ 欄、欄位改真正的 label、台灣／海外改分段切換、
        複選改膠囊標籤、右欄改主色卡片＋兩個主要動作按鈕
   ============================================================ */

/* ----- 兩欄比例：表單 66% / 聯絡資訊 34%，右欄捲動時固定 ----- */
@media (min-width: 768px){
	.xindezx1{display: flex;align-items: stretch;}
	.xindezx1 .xindezx-lf{float: none;width: 66%;padding-right: 40px;box-sizing: border-box;}
	.xindezx1 .xindezx-rt{float: none;width: 34%;padding-left: 0;box-sizing: border-box;}
	.xindezx1 .xindezx-rt .contact-side{position: sticky;top: 110px;}
}
@media (min-width: 768px) and (max-width: 1279px){
	.xindezx1 .xindezx-lf{width: 62%;padding-right: 24px;}
	.xindezx1 .xindezx-rt{width: 38%;}
	/* 原始 CSS 在 1279 以下把地區欄位堆成兩行，這裡維持同一行 */
	.formContainer .radio-item{width: auto;}
	.formContainer .radio-item-right{margin-left: 140px;}
}

/* ============================================================
   表單：一張白色卡片，內部用小標題與留白分段
   ============================================================ */
/* 整形諮詢／痔瘡手術諮詢頁籤：改成與 area-tabs 同款的分段切換樣式，不放 icon */
.consult-tabs{display: flex;width: 100%;border: 1px solid #e6dfd8;border-radius: 6px;overflow: hidden;margin-bottom: 20px;background: #fff;}
.consult-tabs .consult-tab{flex: 1 1 50%;display: block;text-align: center;padding: 0 16px;height: 46px;line-height: 46px;font-size: 15px;font-weight: normal;letter-spacing: .5px;color: #767676;background: #fff;text-decoration: none!important;transition: background .3s, color .3s;}
.consult-tabs .consult-tab + .consult-tab{border-left: 1px solid #e6dfd8;}
/* hover：未選中轉淺棕底＋主色字；已選中底色加深 */
.consult-tabs .consult-tab:hover{background: #f3e9df;color: #8b776d;opacity: 1!important;}
.consult-tabs .consult-tab.active{background: #8b776d;color: #fff;font-weight: bold;}
.consult-tabs .consult-tab.active:hover{background: #6f5d54;color: #fff;}
.consult-tabs .consult-tab i{display: none;}
.formContainer{background: #fff;border: 1px solid #e6dfd8;border-radius: 8px;padding: 8px 32px 32px;box-sizing: border-box;}
.formContainer > .formTabHint{margin: 0;}
.formContainer > .formTabHint p{font-size: 14px!important;font-weight: normal!important;line-height: 1.7!important;color: #767676!important;margin: 16px 0 0;}
.formContainer .formmain{border: none;border-radius: 0;background: none;margin: 0;padding: 28px 0 0;}
.formContainer .formmain + .formmain,
.formContainer .formmain.step2-div{padding-top: 44px;}
/* 段落標題：不帶底色（帶底色會像輸入框），用字級與左側一小段主色豎線標記 */
.formContainer .formmaintl{font-size: 20px;line-height: 1.3;font-weight: bold;text-align: left;background: none;padding: 0 0 0 12px;border-left: 4px solid #8b776d;border-radius: 0;margin: 0 0 22px;color: #6f5d54;letter-spacing: .5px;}
.formContainer .formmaintl #item-span{margin-right: 6px;}
.formContainer .formmainbody{padding: 0;}
.formContainer .formText{width: 100%;}

/* 區塊內小標題（其他整形需求說明、期望預約時間…）：與欄位 label 同一階 */
.formContainer .formTl{font-size: 15px;line-height: 1.5;font-weight: bold;color: #444;padding: 0;margin: 24px 0 8px;border: none;}
.formContainer .formmainbody .formText > .formTl:first-child{margin-top: 0;}
.formContainer .formTl .formGpCRt{font-size: 15px;line-height: 1.5;}

/* 頂部提示（※為必填、請放心）：收成一則淺色資訊區塊 */
.formContainer .form-hint-item{background: #faf7f4;border-radius: 6px;padding: 12px 16px;margin: 0 0 24px;color: #6f5d54;}
.formContainer .form-hint-item p{font-size: 14px!important;font-weight: normal!important;line-height: 1.7!important;color: #6f5d54!important;margin: 0;padding: 0!important;}
/* 第一句「※為必填項目」用與必填 ※ 相同的紅色，第二句「請放心…」維持主色 */
.formContainer .form-hint-item p:first-child{color: #d9534f!important;font-weight: bold!important;}
/* 合併 CSS 裡有 .formTabHint p / .form-note p 帶 !important 的紅字規則，這裡必須同樣加 !important 才壓得過 */
.formContainer .formTabHint{font-size: 14px;font-weight: normal;line-height: 1.7;color: #767676;margin-bottom: 12px;}
.formContainer .formTabHint p{font-size: 14px!important;font-weight: normal!important;line-height: 1.7!important;color: #767676!important;margin: 0;}
.formContainer .formTabHint.bmi_div p{color: #8b776d!important;font-weight: bold!important;}

/* 說明小字：灰色、放在對應欄位下方，紅色留給錯誤訊息 */
.formContainer .form-note{margin: 0 0 22px;}
.formContainer .formGp + .form-note{margin-top: -12px;}
.formContainer .form-note p{font-size: 14px!important;line-height: 1.7!important;font-weight: normal!important;color: #767676!important;margin: 0;padding: 0!important;}
.formContainer .form-note p a{color: #8b776d!important;font-weight: bold!important;text-decoration: underline!important;text-underline-offset: 2px;}
.formContainer .form-note p a:hover{color: #6f5d54!important;opacity: 1!important;}
.formContainer .form-note .no-mobile{margin-top: 4px;}
.formContainer .form-note:empty{display: none;margin: 0;}

/* ----- 欄位：label 在上、輸入框滿寬，※ 欄整個拿掉 ----- */
.formContainer .formGp{margin-bottom: 22px;}
.formContainer .formGpC{margin-bottom: 0;}
.formContainer .requiredIco{display: none;}
.formContainer .formGpCRt,.formContainer .formGpPl{padding-left: 0;}
.formContainer .formcheck{margin-left: 0;}
.formContainer .field-label{display: block;font-size: 15px;line-height: 1.5;font-weight: bold;color: #444;margin: 0 0 8px;cursor: default;}
.formContainer .field-label.is-required::after{content: "※";color: #d9534f;font-size: 13px;margin-left: 4px;vertical-align: 1px;}
.formContainer .field-label[for]{cursor: pointer;}

/* 姓名列：姓 28% / 名 44% / 性別放右側 */
.formContainer .formGpSurname{width: 28%;margin-right: 3%;}
.formContainer .formGpName{width: 44%;margin-right: 3%;}
.formContainer .formGpSex{line-height: 48px;}
.formContainer .formGpSexGp{font-size: 14px;margin-right: 16px;line-height: 48px;}
.formContainer .formGpSexGp input{vertical-align: -3px;margin-right: 6px;}
.formContainer .formGpSex label{font-size: 14px;color: #767676;}

/* 輸入框與下拉：14px 字、純填色、圓角，焦點時才出現主色邊框 */
.formContainer .formGpinp,
.formContainer .formGpC select,
.formContainer .formGpC textarea,
.formContainer .formcheck select{font-family: inherit;font-size: 14px;color: #767676;background-color: #f5f1ed;border: 1px solid transparent;border-radius: 6px;height: 48px;box-sizing: border-box;width: 100%;transition: border-color .3s, background-color .3s;}
.formContainer .formGpinp{padding: 0 16px;line-height: 46px;}
.formContainer .formGpC select,.formContainer .formcheck select{padding: 0 12px;}
.formContainer .formGpC textarea{padding: 12px 16px;line-height: 1.7;height: 150px;}
.formContainer .formGpinp:focus,
.formContainer .formGpC select:focus,
.formContainer .formGpC textarea:focus,
.formContainer .formcheck select:focus{outline: none;border-color: #8b776d!important;background-color: #fff;box-shadow: 0 0 0 3px rgba(139,119,109,.18);}
.formContainer input.error,.formContainer select.error,.formContainer textarea.error{border: 1px solid #d9534f!important;background-color: #fff;}
.formContainer .successtext{border: 1px solid transparent!important;}
.formContainer label.error{display: block;font-size: 14px;line-height: 1.6;font-weight: normal;color: #d9534f;margin: 6px 0 0;}
.formContainer .formGpSex label.error,.formContainer .formcheckGp label.error{display: none;}

/* placeholder：原本 #c1c1c1 在 #f5f1ed 底上對比不足，加深到 #8f8781（對比約 3.3:1） */
.formContainer .formGpinp::placeholder,
.formContainer .formGpC textarea::placeholder,
.formContainer .formcheckGpRt input[type="text"]::placeholder{color: #8f8781;opacity: 1;}
.formContainer .formGpinp::-webkit-input-placeholder,
.formContainer .formGpC textarea::-webkit-input-placeholder,
.formContainer .formcheckGpRt input[type="text"]::-webkit-input-placeholder{color: #8f8781;}
.formContainer .formGpinp::-moz-placeholder,
.formContainer .formGpC textarea::-moz-placeholder{color: #8f8781;opacity: 1;}
.formContainer #select1 + .select2-container .select2-selection__placeholder,
.formContainer #select1 + .select2-container .select2-selection__rendered{color: #8f8781;}
.formContainer #select1.changed + .select2-container .select2-selection__rendered{color: #767676;}

/* Select2 外框同步 */
.formContainer #select1 + .select2-container .select2-selection--single{background: #f5f1ed;border: 1px solid transparent;border-radius: 6px;padding: 0 12px;height: 48px;}
.formContainer #select1 + .select2-container .select2-selection--single .select2-selection__rendered{font-size: 14px;line-height: 46px;}
.formContainer #select1 + .select2-container .select2-selection--single .select2-selection__arrow{height: 46px;}
.formContainer #select1 + .select2-container--open .select2-selection--single,
.formContainer #select1 + .select2-container--focus .select2-selection--single{border-color: #8b776d;background: #fff;box-shadow: 0 0 0 3px rgba(139,119,109,.18);}
.formContainer #select1.error + .select2-container .select2-selection--single{border-color: #d9534f;}
.select2-results__option{font-size: 14px;line-height: 1.5;color: #767676;padding: 12px 16px 12px 28px;}
.select2-results__option[role="group"],
.select2-container--default .select2-results__option[role="group"]{padding: 0;}
/* 下拉分類標題（optgroup）：原本淡棕字配米色底看不出是分類，改深主色粗體＋明顯淺棕底＋左側主色線 */
/* 分類標題與子項目同高：都是 14px 字、1.5 行高、上下 12px 內距 */
.select2-results__group,
.select2-container--default .select2-results__group{display: block;font-size: 14px;line-height: 1.5;font-weight: bold;color: #6f5d54;background-color: #f3e9df;padding: 12px 16px 12px 13px;border-left: 3px solid #8b776d;letter-spacing: .5px;box-sizing: border-box;}
.select2-results__options .select2-results__option + .select2-results__option[role="group"],
.select2-results__options .select2-results__option[role="group"] + .select2-results__option[role="group"]{margin-top: 4px;}
.select2-dropdown{background-color: #fff;border: 1px solid #e6dfd8;box-shadow: 0 8px 24px rgba(111,93,84,.12);}
.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color: #8b776d;color: #fff;}
/* 已選取的項目：主色粗體字、白底，避免跟分類標題的淺棕底混淆 */
.select2-container--default .select2-results__option[aria-selected=true]{background-color: #fff;color: #8b776d;font-weight: bold;}
.select2-container--default .select2-results__option--highlighted[aria-selected=true]{background-color: #8b776d;color: #fff;}
/* 下拉清單高度：套件預設 200px 一次只看得到幾項，拉高到 420px（手機用視窗高度 55%） */
.select2-container .select2-results > .select2-results__options{max-height: 420px;}

/* ----- 台灣／海外：分段切換鈕，選了哪個才展開對應欄位（預設台灣） ----- */
.formContainer .area-radio{position: absolute;opacity: 0;width: 0;height: 0;margin: 0;pointer-events: none;}
.formContainer .area-switch{position: relative;}
.formContainer .area-tabs{display: inline-flex;border: 1px solid #e6dfd8;border-radius: 6px;overflow: hidden;margin-bottom: 12px;}
.formContainer .area-tab{display: block;margin: 0;padding: 0 20px;height: 40px;line-height: 40px;font-size: 15px;font-weight: normal;color: #767676;background: #fff;cursor: pointer;transition: background .3s, color .3s;}
.formContainer .area-tab + .area-tab{border-left: 1px solid #e6dfd8;}
.formContainer .area-tab:hover{background: #f3e9df;color: #8b776d;}
.formContainer #area-tw:checked ~ .area-tabs .area-tab[for="area-tw"],
.formContainer #area-oversea:checked ~ .area-tabs .area-tab[for="area-oversea"]{background: #8b776d;color: #fff;font-weight: bold;}
.formContainer #area-tw:checked ~ .area-tabs .area-tab[for="area-tw"]:hover,
.formContainer #area-oversea:checked ~ .area-tabs .area-tab[for="area-oversea"]:hover{background: #6f5d54;color: #fff;}
.formContainer .area-panel{display: none;}
.formContainer #area-tw:checked ~ .area-panel-tw,
.formContainer #area-oversea:checked ~ .area-panel-oversea{display: block;}
.formContainer .select-item{width: 32%;margin-right: 2%;}
.formContainer .code-item{width: 24%;margin-right: 2%;}
.formContainer .mobile-item-other{width: 40%;}
.formContainer .area-panel-oversea .form-groups-select{margin: 0;font-family: inherit;font-size: 14px;color: #767676;background-color: #f5f1ed;border: 1px solid transparent;border-radius: 6px;height: 48px;}
.formContainer .area-panel-oversea .form-groups-select:focus{outline: none;border-color: #8b776d!important;background-color: #fff;box-shadow: 0 0 0 3px rgba(139,119,109,.18);}

/* ----- 複選 / 單選：膠囊標籤，選中變主色 ----- */
.formContainer .formcheckGp{font-size: 14px;line-height: 1.6;margin: 0 8px 8px 0;position: relative;}
.formContainer .formcheckGp > input.left[type="checkbox"],
.formContainer .formcheckGp > input.left[type="radio"]{position: absolute;opacity: 0;width: 0;height: 0;margin: 0;pointer-events: none;}
.formContainer .formcheckGpRt{padding-left: 0;}
.formContainer .formcheckGp > input[type="checkbox"] + .formcheckGpRt > label,
.formContainer .formcheckGp > input[type="radio"] + .formcheckGpRt > label{display: inline-block;margin: 0;padding: 0 16px;height: 36px;line-height: 34px;box-sizing: border-box;border: 1px solid #e6dfd8;border-radius: 18px;font-size: 14px;font-weight: normal;color: #767676;background: #fff;cursor: pointer;transition: background .3s, color .3s, border-color .3s;}
.formContainer .formcheckGp > input[type="checkbox"] + .formcheckGpRt > label:hover,
.formContainer .formcheckGp > input[type="radio"] + .formcheckGpRt > label:hover{border-color: #8b776d;color: #8b776d;}
.formContainer .formcheckGp > input:checked + .formcheckGpRt > label{background: #8b776d;border-color: #8b776d;color: #fff;}
.formContainer .formcheckGp > input:checked + .formcheckGpRt > label:hover{background: #6f5d54;border-color: #6f5d54;color: #fff;}
.formContainer .formcheckGpRt input[type="text"]{width: 140px;height: 36px;line-height: 36px;margin: 0 0 0 8px;font-size: 14px;border: none;border-bottom: 1px solid #d8cfc6;background: none;vertical-align: top;}
.formContainer .formcheckGpRt input[type="text"]:focus{outline: none;border-bottom-color: #8b776d;}

/* 個人資料（年齡／身高／體重）：不是膠囊，維持底線輸入 */
.formContainer .small-form{margin: 0 24px 10px 0;}
.formContainer .small-form label{font-size: 15px;line-height: 40px;color: #767676;font-weight: normal;}
.formContainer .formcheckGpRt input.small-input-item[type="text"]{width: 80px;height: 40px;line-height: 38px;margin: 0 8px;padding: 0 8px;text-align: center;font-size: 15px;color: #767676;background: #f5f1ed!important;border: 1px solid transparent!important;border-radius: 6px;box-sizing: border-box;vertical-align: top;transition: border-color .3s, background-color .3s, box-shadow .3s;}
.formContainer .formcheckGpRt input.small-input-item[type="text"]:focus{outline: none;border-color: #8b776d!important;background: #fff!important;box-shadow: 0 0 0 3px rgba(139,119,109,.18);}
/* BMI 試算結果：做成主色底的提示塊，讓結果一眼看到 */
.formContainer .formTabHint.bmi_div{margin: 6px 0 10px;}
.formContainer .formTabHint.bmi_div p{display: inline-block;background: #8b776d;color: #fff!important;font-size: 15px!important;font-weight: bold!important;line-height: 1.5!important;padding: 8px 14px;border-radius: 6px;}
.formContainer .personal-data .formTabHint{margin-bottom: 6px;}

/* 期望預約 / 方便聯絡時間：兩個下拉各佔一半 */
.formContainer .formGptown{width: 48.5%;}

/* 送出區：驗證在上、按鈕滿寬 */
.formContainer .formGpB{display: flex;flex-direction: column;align-items: stretch;gap: 16px;margin: 32px 0 0;padding: 0;border: none;}
.formContainer .formoutside{float: none;width: auto;padding: 0;}
.formContainer .formGpBtn{float: none;width: 100%;height: 52px;line-height: 52px;font-size: 16px;border-radius: 6px;margin: 0;transition: background-color .3s;}
.formContainer .formGpBtn:hover{background: #6f5d54;}

/* 步驟列：v2 已從 HTML 移除，若被還原也不顯示 */
.formContainer .plan-item{display: none;}

/* ============================================================
   右欄：主色卡片，最上面是兩個主要動作（LINE、電話）
   ============================================================ */
.xindezx-rt .contact-side{background: #faf7f4;padding: 28px 24px;border-radius: 8px;color: #767676;font-size: 14px;}
.contact-side .contact-side-title{font-size: 18px;line-height: 1.4;color: #6f5d54;font-weight: bold;margin: 0 0 18px;padding: 0;border: none;}

/* 主要動作按鈕（右欄與手機 CTA 共用） */
.contact-side-actions{display: flex;flex-direction: column;gap: 10px;margin: 0 0 24px;}
.contact-side-btn{display: flex;align-items: center;gap: 14px;padding: 12px 18px;border-radius: 6px;background: #8b776d;border: 1px solid #8b776d;color: #fff!important;text-decoration: none!important;transition: background .3s, color .3s;}
/* 全站有 a:hover{opacity:.7!important}，這裡要用 !important 壓回不透明 */
.contact-side-btn:hover{background: #6f5d54;border-color: #6f5d54;color: #fff!important;opacity: 1!important;}
.contact-side-btn.is-outline{background: #fff;color: #8b776d!important;}
/* 電話（外框式）hover：底色反轉成主色、字轉白 */
.contact-side-btn.is-outline:hover{background: #8b776d;border-color: #8b776d;color: #fff!important;}
.contact-side-btn i{font-size: 22px;width: 24px;text-align: center;flex: 0 0 24px;}
.contact-side-btn .contact-side-svg{width: 24px;height: 24px;flex: 0 0 24px;display: block;color: inherit;}
.contact-side-btn-text{display: block;line-height: 1.4;}
.contact-side-btn-label{display: block;font-size: 15px;}
.contact-side-btn-value{display: block;font-size: 16px;font-weight: bold;letter-spacing: .3px;}
.contact-side-btn .contact-side-note{font-size: 15px;margin-left: 4px;}

/* 其他聯絡資訊：icon 清單，字級統一 14px */
.contact-side-list{margin: 0;padding: 0;list-style: none;}
.contact-side-list li{display: flex;align-items: flex-start;margin: 0 0 14px;padding: 0;line-height: 1.6;}
.contact-side-list li:last-child{margin-bottom: 0;}
/* icon 加大到 20px，行高與 15px 標籤同為 24px，底部對齊標籤文字 */
.contact-side-list li i{flex: 0 0 24px;width: 24px;height: 24px;font-size: 20px;line-height: 24px;color: #8b776d;text-align: center;margin-right: 12px;display: flex;align-items: flex-end;justify-content: center;padding-bottom: 4px;box-sizing: border-box;}
.contact-side-list li i::before{line-height: 1;}
.contact-side-list .contact-side-label{display: block;font-size: 15px;line-height: 1.6;color: #8b776d;font-weight: bold;}
.contact-side-list p,.contact-side-list a{font-size: 14px;line-height: 1.6;color: #767676;margin: 0;display: block;}
.contact-side-list a{text-decoration: none;transition: color .3s;}
/* 連結 hover：轉主色並加底線 */
.contact-side-list a:hover{color: #8b776d;text-decoration: underline!important;text-underline-offset: 3px;opacity: 1!important;}
.contact-side-list a .contact-side-note{font-size: 14px;color: #999;margin-left: 4px;}
.contact-side-list a:hover .contact-side-note{color: #8b776d;}

/* 只留 LINE 一張 QR code */
.contact-side-qr{margin: 24px 0 0;padding: 20px 0 0;border-top: 1px solid #ece4dc;text-align: center;}
.contact-side-qr a{display: inline-block;text-decoration: none!important;color: #767676;}
.contact-side-qr a:hover{opacity: 1!important;}
.contact-side-qr img{display: block;width: 120px;height: 120px;margin: 0 auto 8px;border-radius: 6px;background: #fff;padding: 6px;box-sizing: border-box;}
.contact-side-qr img:hover{opacity: 1;}
.contact-side-qr p{font-size: 14px;line-height: 1.6;color: #6f5d54;font-weight: bold;margin: 0;}
.contact-side-qr p .contact-side-note{font-size: 14px;color: #999;font-weight: normal;margin-left: 4px;}


/* ============================================================
   手機
   ============================================================ */
@media (max-width: 767px){
	.xindezx1 .xindezx-rt{margin-top: 32px!important;}
	.xindezx-rt .contact-side{padding: 22px 16px;margin: 0;}
	/* 手機：LINE 與電話按鈕留在聯絡資訊卡片內，一排一個 */
	.contact-side-actions{display: flex;flex-direction: column;gap: 10px;margin-bottom: 20px;}
	.formContainer{padding: 4px 16px 24px;border-radius: 6px;}
	.formContainer .formmain{padding-top: 22px;}
	.formContainer .formmain + .formmain,.formContainer .formmain.step2-div{padding-top: 36px;}
	.formContainer .formmaintl{font-size: 18px;padding-left: 10px;margin-bottom: 18px;}
	.formContainer .formGp{margin-bottom: 18px;}
	.formContainer .formGp + .form-note{margin-top: -8px;}
	.formContainer .form-note{margin-bottom: 18px;}
	/* 姓／名／性別同一行：26% + 38% + 剩餘給性別 */
	.formContainer .formGpSurname{width: 24%;margin-right: 3%;}
	.formContainer .formGpName{width: 36%;margin-right: 3%;}
	.formContainer .formGpSex{width: 34%;line-height: 48px;margin-top: 0;padding-left: 0;}
	.formContainer .formGpSex > .clearfix{display: flex;flex-wrap: nowrap;align-items: center;height: 48px;}
	.formContainer .formGpSexGp{float: none;flex: 0 0 auto;line-height: 48px;margin-right: 10px;white-space: nowrap;}
	.formContainer .formGpSexGp:last-child{margin-right: 0;}
	.formContainer .formGpSexGp input{margin-right: 3px;}
	.consult-tabs{display: flex;width: 100%;}
	.consult-tabs .consult-tab{flex: 1 1 50%;text-align: center;padding: 0;height: 44px;line-height: 44px;letter-spacing: 0;}
	.formContainer .area-tabs{display: flex;}
	.formContainer .area-tab{flex: 1 1 50%;text-align: center;padding: 0;}
	.formContainer .select-item{width: 60%;margin-right: 2%;margin-bottom: 8px;}
	.formContainer .code-item{width: 38%;margin-right: 0;margin-bottom: 8px;}
	.formContainer .mobile-item-other{width: 100%;}
	.formContainer .formcheckGp{margin: 0 6px 8px 0;}
	.formContainer .formcheckGp > input[type="checkbox"] + .formcheckGpRt > label,
	.formContainer .formcheckGp > input[type="radio"] + .formcheckGpRt > label{padding: 0 14px;height: 34px;line-height: 32px;}
	.formContainer .formcheckGpRt input[type="text"]{width: 120px;height: 34px;line-height: 34px;}
	.formContainer .formGpB{margin-top: 24px;}
	.formContainer .formGpBtn{height: 50px;line-height: 50px;}
}
@media (max-width: 767px){
	.select2-container .select2-results > .select2-results__options{max-height: 55vh;}
	.formContainer .small-form{margin-right: 14px;}
	.formContainer .formcheckGpRt input.small-input-item[type="text"]{width: 64px;margin: 0 6px;}
}
