@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@300;400;500;600;700;800;900&family=Prompt:wght@300;400;500;600;700;800;900&display=swap");
:root{--orange:#ff8a00;--orange-dark:#d76e00;--black:#101820;--cream:#fff6eb;--muted:#64748b;--line:#f0d7b8}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6,.brand-text,.section-title,.hero-title,.navbar,.btn,.form-control,.form-select,.dropdown-menu,.table{font-family:"Noto Sans Thai","Prompt",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{font-family:"Noto Sans Thai","Prompt",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.01em;background:#fffaf3;color:var(--black)}.fw-black{font-weight:900}.text-orange{color:var(--orange)}.btn-primary{--bs-btn-bg:var(--orange);--bs-btn-border-color:var(--orange);--bs-btn-hover-bg:var(--orange-dark);--bs-btn-hover-border-color:var(--orange-dark);color:#111;font-weight:800}.btn-dark{background:var(--black);border-color:var(--black)}.app-navbar{box-shadow:0 10px 30px rgba(16,24,32,.08)}.brand-logo{width:74px;height:50px;object-fit:contain}.brand-text{letter-spacing:.5px;font-size:1.25rem;font-weight:950}.brand-text span{color:var(--orange)}.hero{position:relative;min-height:560px;background:linear-gradient(90deg,rgba(255,255,255,.88),rgba(255,255,255,.35)),url('../img/hero-stay.svg') center/cover no-repeat;display:flex;align-items:center}.hero-title{font-size:clamp(2.4rem,6vw,5rem);font-weight:950;letter-spacing:-.03em}.hero-card{background:rgba(255,255,255,.95);border:1px solid rgba(255,138,0,.18);border-radius:18px;box-shadow:0 24px 70px rgba(16,24,32,.16);padding:1.25rem}.search-panel{margin-top:-58px;position:relative;z-index:3}.ft-card{background:#fff;border:1px solid rgba(240,215,184,.9);border-radius:14px;box-shadow:0 14px 42px rgba(16,24,32,.08)}.ft-card-hover{transition:.2s ease}.ft-card-hover:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(16,24,32,.16)}.stay-img{height:190px;width:100%;object-fit:cover;background:var(--cream);border-radius:10px}.price-text{color:var(--orange-dark);font-weight:950;font-size:1.15rem}.section-title{font-weight:950;letter-spacing:-.02em}.section-kicker{color:var(--orange-dark);font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}.feature-icon{width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#fff0dc;color:var(--orange-dark);font-size:1.7rem}.stats-band{background:linear-gradient(135deg,#101820,#2b1700)}.partner-card img{height:150px;object-fit:cover;border-radius:10px}.article-thumb{width:170px;min-height:120px;background-size:cover;background-position:center;border-radius:10px;position:relative;flex-shrink:0}.article-thumb span{position:absolute;left:10px;bottom:10px;background:var(--orange);color:#111;padding:.25rem .65rem;border-radius:7px;font-weight:800;font-size:.8rem}.article-row{display:flex;gap:1rem;padding:1rem;border-bottom:1px solid #f3e4d0}.article-body h3{font-size:1.15rem;font-weight:900}.article-body a{color:var(--black);text-decoration:none}.article-meta{color:var(--muted);font-size:.92rem}.home-map,#map{height:460px;border-radius:14px;overflow:hidden;background:#fff0dc}.site-footer{background:var(--black);color:#fff}.site-footer a{display:block;color:rgba(255,255,255,.72);text-decoration:none;margin:.45rem 0}.site-footer a:hover{color:var(--orange)}.footer-logo{width:66px;height:50px;object-fit:contain;background:#fff;border-radius:10px}.form-control,.form-select{border-color:#edd1ac;border-radius:10px}.form-control:focus,.form-select:focus{border-color:var(--orange);box-shadow:0 0 0 .2rem rgba(255,138,0,.18)}.table>:not(caption)>*>*{vertical-align:middle}.admin-thumb{width:100px;height:70px;object-fit:cover;border-radius:8px}@media(max-width:767px){.search-panel{margin-top:-20px}.hero{min-height:520px}.article-row{flex-direction:column}.article-thumb{width:100%;min-height:190px}}


/* =========================
   FiNDTEEPAK v3: Map overview + region sections
   ========================= */
.overview-map-section {
    background: linear-gradient(135deg, #fff 0%, #fff7ec 52%, #fff0dc 100%);
}
.country-overview-map {
    min-height: 460px;
    height: 100%;
    background: #fff0dc;
}
.country-full-map {
    height: 680px !important;
    border-radius: 14px;
    overflow: hidden;
}
.overview-stat-list {
    display: grid;
    gap: 12px;
}
.overview-stat-list > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 12px;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(255,138,0,.18);
}
.overview-stat-list strong {
    font-size: 1.65rem;
    color: var(--orange-dark);
    font-weight: 950;
    line-height: 1;
}
.overview-stat-list span {
    color: var(--muted);
    font-weight: 700;
}
.stay-map-pin {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% 50% 50% 10%;
    background: var(--orange);
    color: #101820;
    border: 3px solid #101820;
    box-shadow: 0 10px 24px rgba(16,24,32,.22);
    display: flex !important;
    align-items: center;
    justify-content: center;
    transform: rotate(-45deg);
}
.stay-map-pin i {
    transform: rotate(45deg);
    font-size: 15px;
    line-height: 1;
}
.region-grid {
    display: grid;
    grid-template-columns: 1.05fr 1fr 1.05fr;
    grid-auto-rows: 250px;
    gap: 18px;
}
.region-card {
    position: relative;
    overflow: hidden;
    color: #fff;
    border-radius: 16px;
    min-height: 250px;
    background: #101820;
    box-shadow: 0 18px 48px rgba(16,24,32,.12);
    display: block;
}
.region-card-1 { grid-row: span 2; }
.region-card-4 { grid-row: span 2; }
.region-card-bg,
.region-card-overlay {
    position: absolute;
    inset: 0;
}
.region-card-bg {
    background:
        radial-gradient(circle at 18% 20%, rgba(255,255,255,.20), transparent 28%),
        radial-gradient(circle at 84% 12%, rgba(255,138,0,.42), transparent 30%),
        linear-gradient(135deg, #101820, #2a1a06 52%, #ff8a00);
    transition: transform .35s ease;
}
.region-card-2 .region-card-bg { background: radial-gradient(circle at 78% 18%, rgba(255,255,255,.18), transparent 25%), linear-gradient(135deg, #1f2937, #ff8a00); }
.region-card-3 .region-card-bg { background: radial-gradient(circle at 18% 20%, rgba(255,255,255,.16), transparent 30%), linear-gradient(135deg, #331b00, #d76e00); }
.region-card-4 .region-card-bg { background: radial-gradient(circle at 80% 20%, rgba(255,255,255,.2), transparent 28%), linear-gradient(135deg, #072f36, #ff8a00); }
.region-card-5 .region-card-bg { background: radial-gradient(circle at 20% 18%, rgba(255,255,255,.16), transparent 26%), linear-gradient(135deg, #101820, #c35d00); }
.region-card-6 .region-card-bg { background: radial-gradient(circle at 84% 16%, rgba(255,255,255,.18), transparent 24%), linear-gradient(135deg, #22301e, #ff8a00); }
.region-card:hover .region-card-bg {
    transform: scale(1.06);
}
.region-card-overlay {
    background:
        linear-gradient(180deg, rgba(16,24,32,.05) 0%, rgba(16,24,32,.30) 45%, rgba(16,24,32,.88) 100%),
        repeating-linear-gradient(45deg, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 1px, transparent 1px, transparent 16px);
}
.region-card-content {
    position: relative;
    z-index: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 22px;
}
.region-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(255,255,255,.92);
    color: var(--orange-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    box-shadow: 0 10px 22px rgba(0,0,0,.18);
}
.region-count {
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.28);
    backdrop-filter: blur(5px);
    border-radius: 999px;
    padding: .35rem .8rem;
    font-weight: 900;
    color: #fff;
}
.region-card h3 {
    font-weight: 950;
    font-size: 1.55rem;
    margin-bottom: .35rem;
    color: #fff;
}
.region-card p {
    color: rgba(255,255,255,.88);
    margin-bottom: .85rem;
    min-height: 46px;
}
.region-tags {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}
.region-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: .25rem .75rem;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.8);
    color: #fff;
    background: rgba(16,24,32,.22);
    font-weight: 800;
    font-size: .88rem;
}
.map-region-list {
    display: grid;
    gap: 10px;
}
.map-region-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border: 1px solid #f0d7b8;
    border-radius: 12px;
    text-decoration: none;
    color: var(--black);
    background: #fff;
    transition: .2s ease;
}
.map-region-item:hover {
    transform: translateX(4px);
    border-color: var(--orange);
    box-shadow: 0 12px 24px rgba(16,24,32,.08);
}
.map-region-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #fff0dc;
    color: var(--orange-dark);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}
.map-region-total {
    min-width: 42px;
    height: 36px;
    border-radius: 999px;
    background: var(--black);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}
@media(max-width:1199px){
    .region-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .region-card-1,
    .region-card-4 {
        grid-row: span 1;
    }
}
@media(max-width:767px){
    .country-overview-map {
        min-height: 360px;
    }
    .country-full-map {
        height: 520px !important;
    }
    .region-grid {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }
    .region-card {
        min-height: 260px;
    }
}


/* =========================
   FiNDTEEPAK v4: Mobile App Promo Banner
   ========================= */
.mobile-promo-section {
    background: linear-gradient(135deg, #ffffff 0%, #fff7ec 45%, #fff1df 100%);
    border-color: rgba(255,138,0,.22);
}
.mobile-promo-head {
    padding: 24px 24px 16px;
}
.mobile-promo-banner-wrap {
    padding: 0 18px 18px;
}
.mobile-promo-banner {
    width: 100%;
    display: block;
    border-radius: 14px;
    box-shadow: 0 18px 54px rgba(16,24,32,.14);
    border: 1px solid rgba(255,138,0,.16);
}
@media(max-width:767px){
    .mobile-promo-head {
        padding: 18px 18px 12px;
    }
    .mobile-promo-banner-wrap {
        padding: 0 12px 12px;
        overflow-x: auto;
    }
    .mobile-promo-banner {
        min-width: 760px;
        border-radius: 10px;
    }
}


/* =========================
   FiNDTEEPAK v6: FiNDTEEDiN spacing and rounded system
   ปรับระยะห่างระหว่าง content และความโค้งมนให้เท่ากับแนว FiNDTEEDiN
   ========================= */

/* ระยะห่างระหว่าง section/content แบบ FiNDTEEDiN */
section.container.py-5 {
    padding-top: 2.4rem !important;
    padding-bottom: 2.4rem !important;
}
section.container.pb-5 {
    padding-bottom: 2.4rem !important;
}
section.container.py-4 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
}
.search-panel {
    margin-bottom: 2rem !important;
}
.hero + .search-panel {
    margin-top: -58px !important;
}

/* ช่องไฟหัวข้อและกลุ่มเนื้อหา */
.section-kicker {
    margin-bottom: .25rem;
}
.section-title {
    margin-bottom: .45rem;
}
.d-flex.justify-content-between.align-items-end.mb-3,
.d-flex.flex-column.flex-lg-row.justify-content-between.align-items-lg-end.gap-3.mb-3 {
    margin-bottom: 1rem !important;
}

/* Card / Content radius เทียบกับ FiNDTEEDiN */
.ft-card,
.hero-card,
.overview-map-section,
.mobile-promo-section,
.stat-card,
.feature-card {
    border-radius: 24px !important;
}

.home-map,
#map,
.country-overview-map,
.country-full-map {
    border-radius: 16px !important;
}

/* Card รายการประกาศ */
.ft-card.ft-card-hover {
    border-radius: 18px !important;
}
.ft-card.ft-card-hover.p-2 {
    border-radius: 18px !important;
}

/* รูปภาพให้โค้งมนใกล้เคียง FiNDTEEDiN */
.stay-img {
    height: 210px !important;
    border-radius: 18px !important;
}
.ft-card-hover .stay-img {
    border-radius: 14px 14px 8px 8px !important;
}
.partner-card img,
.article-thumb,
.mobile-promo-banner {
    border-radius: 18px !important;
}
.brand-logo,
.footer-logo,
.admin-thumb {
    border-radius: 14px !important;
}

/* ปุ่มและ input แบบ FiNDTEEDiN */
.form-control,
.form-select {
    border-radius: 14px !important;
    min-height: 46px;
}
.btn {
    border-radius: 14px !important;
}
.rounded-pill {
    border-radius: 999px !important;
}
.badge {
    border-radius: 999px !important;
}

/* Grid/gap ให้ตรงแนวเดิม ไม่ชิดหรือห่างเกินไป */
.row.g-3 {
    --bs-gutter-x: 1rem;
    --bs-gutter-y: 1rem;
}
.region-grid {
    gap: 18px !important;
    grid-auto-rows: 250px !important;
}
.region-card {
    border-radius: 16px !important;
    min-height: 250px !important;
}
.region-icon {
    border-radius: 14px !important;
}
.region-tags span,
.article-thumb span {
    border-radius: 8px !important;
}

/* Mobile app banner spacing แบบ content card ใน FiNDTEEDiN */
.mobile-promo-head {
    padding: 24px 24px 16px !important;
}
.mobile-promo-banner-wrap {
    padding: 0 18px 18px !important;
}

/* Map overview spacing/radius */
.overview-stat-list > div,
.map-region-item,
.map-region-icon {
    border-radius: 14px !important;
}
.map-region-total {
    border-radius: 999px !important;
}
.country-overview-map {
    min-height: 460px !important;
}
.country-full-map {
    height: 680px !important;
}
.home-map,
#map {
    height: 460px !important;
}

/* Content padding ให้เทียบกับ FiNDTEEDiN */
.ft-card.p-4 {
    padding: 1.5rem !important;
}
.ft-card.p-3,
.ft-card.p-lg-4 {
    padding: 1.25rem !important;
}
.region-card-content {
    padding: 22px !important;
}

/* Responsive */
@media(max-width:767px){
    section.container.py-5 {
        padding-top: 1.75rem !important;
        padding-bottom: 1.75rem !important;
    }
    section.container.pb-5 {
        padding-bottom: 1.75rem !important;
    }
    section.container.py-4 {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
    .hero + .search-panel {
        margin-top: -20px !important;
    }
    .ft-card,
    .hero-card,
    .overview-map-section,
    .mobile-promo-section {
        border-radius: 18px !important;
    }
    .stay-img,
    .partner-card img,
    .article-thumb,
    .mobile-promo-banner {
        border-radius: 14px !important;
    }
    .region-grid {
        gap: 14px !important;
        grid-auto-rows: auto !important;
    }
    .region-card {
        min-height: 260px !important;
        border-radius: 16px !important;
    }
    .country-overview-map {
        min-height: 360px !important;
    }
    .country-full-map,
    .home-map,
    #map {
        height: 520px !important;
    }
}


/* =========================
   FiNDTEEPAK v7: tighter spacing and lower radius
   ปรับ content ให้ชิดขึ้น และลดความโค้งมนลงจาก v6
   ========================= */

/* ลดระยะห่างแนวตั้งระหว่าง section ให้ชิดขึ้น */
section.container.py-5 {
    padding-top: 1.15rem !important;
    padding-bottom: 1.15rem !important;
}
section.container.pb-5 {
    padding-bottom: 1.15rem !important;
}
section.container.py-4 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

/* ลด margin ระหว่าง block หลัก */
.search-panel {
    margin-bottom: 1rem !important;
}
.hero + .search-panel {
    margin-top: -46px !important;
}
.mobile-promo-section,
.overview-map-section,
.ft-card {
    margin-bottom: 0 !important;
}

/* ลดช่องไฟหัวข้อกับ content */
.section-kicker {
    margin-bottom: .15rem !important;
}
.section-title {
    margin-bottom: .25rem !important;
}
.d-flex.justify-content-between.align-items-end.mb-3,
.d-flex.flex-column.flex-lg-row.justify-content-between.align-items-lg-end.gap-3.mb-3 {
    margin-bottom: .55rem !important;
}

/* ลดความโค้งมนของ section/card/content */
.ft-card,
.hero-card,
.overview-map-section,
.mobile-promo-section,
.stat-card,
.feature-card {
    border-radius: 12px !important;
}

.ft-card.ft-card-hover,
.ft-card.ft-card-hover.p-2,
.land-card,
.region-card {
    border-radius: 10px !important;
}

/* ลดความโค้งมนของแผนที่ */
.home-map,
#map,
.country-overview-map,
.country-full-map {
    border-radius: 8px !important;
}

/* ลดความโค้งมนของรูปภาพ */
.stay-img,
.partner-card img,
.article-thumb,
.mobile-promo-banner,
.brand-logo,
.footer-logo,
.admin-thumb,
.img-fluid,
.card-img-top {
    border-radius: 8px !important;
}
.ft-card-hover .stay-img,
.land-card .land-img {
    border-radius: 8px 8px 4px 4px !important;
}

/* ปุ่มและ input ลดความมนลง */
.form-control,
.form-select,
.input-group-text,
.btn,
.nav-pills .nav-link,
.dropdown-menu,
.modal-content {
    border-radius: 8px !important;
}

/* badge / pill ยังอ่านง่าย แต่ลดความมนจากเดิมนิดหน่อย */
.badge,
.rounded-pill {
    border-radius: 10px !important;
}

/* ลดช่องว่างภายใน card */
.ft-card.p-4 {
    padding: 1.05rem !important;
}
.ft-card.p-3,
.ft-card.p-lg-4 {
    padding: .95rem !important;
}
.mobile-promo-head {
    padding: 14px 16px 8px !important;
}
.mobile-promo-banner-wrap {
    padding: 0 12px 12px !important;
}

/* ปรับ grid gap ให้แคบลง */
.row.g-3 {
    --bs-gutter-x: .75rem;
    --bs-gutter-y: .75rem;
}
.region-grid {
    gap: 10px !important;
    grid-auto-rows: 220px !important;
}
.region-card {
    min-height: 220px !important;
}
.region-card-content {
    padding: 16px !important;
}
.region-card h3 {
    margin-bottom: .15rem !important;
}
.region-card p {
    margin-bottom: .45rem !important;
    min-height: 34px !important;
}
.region-icon,
.map-region-icon,
.feature-icon {
    border-radius: 8px !important;
}
.region-tags span,
.article-thumb span {
    border-radius: 5px !important;
}

/* ลดความสูงรูปและแผนที่ให้ content ต่อกันชิดขึ้น */
.stay-img {
    height: 184px !important;
}
.country-overview-map {
    min-height: 390px !important;
}
.home-map,
#map {
    height: 400px !important;
}
.country-full-map {
    height: 590px !important;
}

/* ลดระยะห่างของ stats section ที่ผู้ใช้ชี้ */
section.container.py-5 .row.g-3.text-center {
    margin-top: 0 !important;
}
section.container.py-5 .row.g-3.text-center .ft-card {
    padding-top: 1.35rem !important;
    padding-bottom: 1.35rem !important;
}

/* ลด shadow ให้ขอบไม่ดูบวม */
.ft-card,
.overview-map-section,
.mobile-promo-section {
    box-shadow: 0 8px 24px rgba(16,24,32,.07) !important;
}
.ft-card-hover:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 26px rgba(16,24,32,.11) !important;
}

/* Mobile */
@media(max-width:767px){
    section.container.py-5,
    section.container.pb-5,
    section.container.py-4 {
        padding-top: .9rem !important;
        padding-bottom: .9rem !important;
    }
    .hero + .search-panel {
        margin-top: -14px !important;
    }
    .ft-card,
    .hero-card,
    .overview-map-section,
    .mobile-promo-section,
    .region-card {
        border-radius: 9px !important;
    }
    .stay-img,
    .partner-card img,
    .article-thumb,
    .mobile-promo-banner {
        border-radius: 7px !important;
    }
    .row.g-3 {
        --bs-gutter-x: .65rem;
        --bs-gutter-y: .65rem;
    }
    .country-overview-map {
        min-height: 300px !important;
    }
    .country-full-map,
    .home-map,
    #map {
        height: 430px !important;
    }
}


/* ===== FiNDTEEPAK v9 Core Platform Expansion ===== */
.app-navbar .nav-link.active {
    color: #111827 !important;
    background: linear-gradient(135deg, rgba(255,138,0,.20), rgba(255,138,0,.08)) !important;
    box-shadow: inset 0 0 0 1px rgba(255,138,0,.25);
    font-weight: 900;
}
.review-score {
    background: #101820;
    color: #fff;
    border-radius: 10px;
    padding: .45rem .75rem;
    font-weight: 900;
    white-space: nowrap;
}
.review-score i { color: #ff8a00; }
.review-card, .b2b-card, .service-card { border-color: rgba(255,138,0,.18) !important; }
.b2b-hero { background: linear-gradient(135deg, #fff, #fff2df); }
.mysg-hero {
    background:
        linear-gradient(90deg, rgba(255,255,255,.92), rgba(255,255,255,.62)),
        url('../img/hero-stay.svg');
    background-size: cover;
    background-position: center;
}
.expansion-link {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-height: 74px;
    padding: 1rem;
    text-decoration: none;
    border-radius: 12px;
    background: #fff;
    border: 1px solid rgba(255,138,0,.18);
    color: var(--black, #101820);
    font-weight: 900;
    transition: .2s ease;
}
.expansion-link:hover {
    transform: translateY(-2px);
    border-color: var(--orange, #ff8a00);
    color: var(--orange-dark, #d76e00);
    box-shadow: 0 12px 28px rgba(16,24,32,.08);
}
.expansion-link i {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff0dc;
    color: var(--orange-dark, #d76e00);
    font-size: 1.3rem;
}
.border-feed { display: grid; gap: .8rem; }
.border-feed-item {
    padding: 1rem;
    border-radius: 12px;
    border: 1px solid #f0d7b8;
    background: #fff;
}
.text-bg-orange {
    background: #ff8a00 !important;
    color: #111827 !important;
}
.platform-expansion-section { background: linear-gradient(135deg,#fff,#fff7ec); }


/* ===== FiNDTEEPAK v10: MY/SG Highlight + Showroom Detail + Gallery ===== */
.badge-search {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .45rem .75rem;
    border-radius: 10px;
    background: #fff7ec;
    border: 1px solid rgba(255,138,0,.22);
    color: #101820;
    text-decoration: none;
    font-weight: 800;
    font-size: .92rem;
}
.badge-search:hover {
    color: #d76e00;
    border-color: #ff8a00;
}

.mysg-template-card {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    padding: 32px;
    color: #fff;
    background: #101820;
    box-shadow: 0 14px 40px rgba(16,24,32,.12);
}
.mysg-template-bg {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(16,24,32,.92), rgba(16,24,32,.70) 48%, rgba(255,138,0,.42)),
        radial-gradient(circle at 82% 18%, rgba(255,138,0,.45), transparent 28%),
        linear-gradient(135deg, #101820, #2c1700);
}
.mysg-title {
    font-weight: 950;
    font-size: clamp(2rem, 4vw, 4.2rem);
    line-height: 1.05;
    letter-spacing: -.04em;
    margin-bottom: 1rem;
}
.mysg-title span {
    color: #ff8a00;
}
.mysg-subtitle {
    max-width: 740px;
    color: rgba(255,255,255,.82);
    font-size: 1.05rem;
    line-height: 1.8;
}
.mysg-pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1rem;
}
.mysg-pill-row a {
    color: #fff;
    text-decoration: none;
    padding: .5rem .8rem;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.34);
    background: rgba(255,255,255,.08);
    font-weight: 800;
}
.mysg-template-panel {
    border-radius: 12px;
    background: rgba(255,255,255,.94);
    color: #101820;
    padding: 22px;
    box-shadow: 0 16px 40px rgba(0,0,0,.18);
}
.mysg-check {
    display: flex;
    gap: .6rem;
    padding: .75rem 0;
    border-top: 1px solid rgba(16,24,32,.08);
    font-weight: 700;
}
.mysg-check:first-of-type {
    border-top: 0;
}
.mysg-check i {
    color: #ff8a00;
}

.option-check-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .7rem;
}
.option-check {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .7rem .8rem;
    border-radius: 10px;
    border: 1px solid rgba(255,138,0,.18);
    background: #fff;
    font-weight: 700;
    cursor: pointer;
}
.option-check input {
    accent-color: #ff8a00;
}
.option-check:hover {
    border-color: #ff8a00;
    background: #fff7ec;
}

.stay-gallery-main {
    width: 100%;
    height: 470px;
    object-fit: cover;
    border-radius: 10px;
    background: #fff7ec;
}
.stay-gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: .55rem;
    margin-top: .7rem;
}
.stay-gallery-thumb {
    border: 2px solid transparent;
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
    height: 76px;
    cursor: pointer;
}
.stay-gallery-thumb.active {
    border-color: #ff8a00;
}
.stay-gallery-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.stay-description {
    line-height: 1.9;
    color: #334155;
}
.amenity-grid {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}
.amenity-chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .5rem .75rem;
    border-radius: 10px;
    background: #fff7ec;
    border: 1px solid rgba(255,138,0,.16);
    font-weight: 800;
}
.amenity-chip i {
    color: #d76e00;
}
.stay-room-box {
    border-radius: 10px !important;
    border-color: rgba(255,138,0,.18) !important;
}
.stay-detail-map {
    height: 380px;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(255,138,0,.18);
}
.contact-card {
    border-color: rgba(255,138,0,.24) !important;
}
.review-inline {
    padding: 1rem 0;
    border-top: 1px solid rgba(16,24,32,.08);
}
.review-inline:first-of-type {
    border-top: 0;
}
.review-score-sm {
    padding: .25rem .55rem;
    font-size: .85rem;
}

@media(max-width: 991.98px) {
    .option-check-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .stay-gallery-main {
        height: 340px;
    }
    .stay-gallery-thumbs {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media(max-width: 575.98px) {
    .mysg-template-card {
        padding: 22px;
    }
    .option-check-grid {
        grid-template-columns: 1fr;
    }
    .stay-gallery-main {
        height: 260px;
    }
    .stay-gallery-thumbs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}


/* ===== FiNDTEEPAK v9.1 Fix: edit images / review approval ===== */
.edit-image-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .75rem;
}
.edit-image-card {
    border: 1px solid rgba(255,138,0,.18);
    border-radius: 10px;
    background: #fff;
    padding: .6rem;
}
.edit-image-card img {
    width: 100%;
    height: 110px;
    object-fit: cover;
    border-radius: 8px;
}
.alert .badge {
    vertical-align: middle;
}
@media(max-width: 991.98px){
    .edit-image-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media(max-width: 575.98px){
    .edit-image-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


/* ===== FiNDTEEPAK v9.2: Stay by Region scenic backgrounds ===== */
.region-card {
    overflow: hidden;
    border-radius: 12px !important;
    background: #101820;
}
.region-card-bg {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    transform: scale(1.02);
    filter: saturate(1.05) contrast(1.02);
}
.region-card:hover .region-card-bg {
    transform: scale(1.08) !important;
}
.region-card-1 .region-card-bg { background-image: url('../img/regions/north.jpg') !important; }
.region-card-2 .region-card-bg { background-image: url('../img/regions/central.jpg') !important; }
.region-card-3 .region-card-bg { background-image: url('../img/regions/northeast.jpg') !important; }
.region-card-4 .region-card-bg { background-image: url('../img/regions/south.jpg') !important; }
.region-card-5 .region-card-bg { background-image: url('../img/regions/east.jpg') !important; }
.region-card-6 .region-card-bg { background-image: url('../img/regions/west.jpg') !important; }

.region-card-overlay {
    background:
        linear-gradient(180deg, rgba(4,9,15,.12) 0%, rgba(4,9,15,.28) 36%, rgba(4,9,15,.70) 100%),
        linear-gradient(90deg, rgba(0,0,0,.58), rgba(0,0,0,.14) 58%, rgba(255,138,0,.20)) !important;
}
.region-card-content {
    position: relative;
    z-index: 3;
}
.region-card .region-icon {
    background: rgba(255,255,255,.94) !important;
    color: #ff8a00 !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.20);
}
.region-count {
    background: rgba(255,255,255,.20) !important;
    border: 1px solid rgba(255,255,255,.32) !important;
    color: #fff !important;
    backdrop-filter: blur(8px);
}
.region-card h3,
.region-card p,
.region-tags span {
    text-shadow: 0 3px 12px rgba(0,0,0,.40);
}
.region-tags span {
    background: rgba(6,10,18,.32) !important;
    border-color: rgba(255,255,255,.58) !important;
}


/* ===== FiNDTEEPAK v9.3: Admin article management ===== */
.article-admin-preview {
    width: 100%;
    max-height: 220px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid rgba(255,138,0,.18);
}


/* ===== FiNDTEEPAK v9.4: English website ===== */
.en-site {
    font-family: Inter, "Noto Sans Thai", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.en-site .section-title,
.en-site .hero-title,
.en-site .fw-black {
    letter-spacing: -0.035em;
}
.en-hero {
    background:
        radial-gradient(circle at 85% 15%, rgba(255,138,0,.18), transparent 30%),
        linear-gradient(135deg, #fffaf3 0%, #ffffff 55%, #fff3e3 100%);
    border-bottom: 1px solid rgba(255,138,0,.12);
}
.en-hero-search {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(180px, .75fr) auto;
    gap: .75rem;
}
.en-hero-card {
    background: linear-gradient(135deg,#fff,#fff7ec);
    border-color: rgba(255,138,0,.18) !important;
}
.en-site .app-navbar .nav-link.active {
    color: #111827 !important;
    background: linear-gradient(135deg, rgba(255,138,0,.20), rgba(255,138,0,.08)) !important;
    box-shadow: inset 0 0 0 1px rgba(255,138,0,.25);
    font-weight: 900;
}
.article-detail-cover {
    width: 100%;
    max-height: 460px;
    object-fit: cover;
    border-radius: 12px;
}
.article-body {
    line-height: 1.9;
    font-size: 1.05rem;
    color: #334155;
}
@media(max-width: 991.98px){
    .en-hero-search {
        grid-template-columns: 1fr;
    }
}
.lang-switch{display:inline-flex;align-items:center;gap:.55rem;font-weight:800}.lang-switch .flag-icon{width:22px;height:16px;object-fit:cover;border-radius:2px;display:inline-block;box-shadow:0 0 0 1px rgba(0,0,0,.08)}.lang-switch.btn{padding-inline:1rem}.lang-switch.btn-sm{padding-inline:.8rem}