﻿.masonry-grid::after{content:"";display:block;clear:both}
.masonry-grid .col{float:left;box-sizing:border-box;margin-bottom:1rem;padding:0 8px}
.item{background:#fff;padding:1em;margin:0;width:100%;height:100%;display:flex;flex-direction:column;transition:.3s ease all;box-sizing:border-box;border:1px solid #ccc;box-shadow:2px 2px 4px 1px #ccc;text-align:center}
.item img{max-width:100%;padding-bottom:8px}
.item p{padding:6px 4px;line-height:150%}
.item a{color:#666;text-decoration:none}
.item a:hover{text-decoration:none;color:#b40415}
.item .flag{width:25px}
.item{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.item:hover{transform:translateY(-3px);box-shadow:0 .5rem 1rem rgba(0,0,0,.1)!important;border-color:rgba(220,53,69,.25)!important}
.item li{list-style:none;padding:5px 15px 5px 0;line-height:180%;color:#1c154b;border-bottom:1px solid #e3e3e3;position:relative}
.item li:last-child{margin-bottom:0}
.item li::before{content:"\e920";font-family:icomoon;color:var(--accent-color);margin-right:10px;display:inline-block;width:1.2em}
.waterfall{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5em;margin:1.5em;padding:0;font-size:.85em}
.waterfall-guide,.waterfall-other{column-gap:1.5em;margin:1.5em;padding:0;font-size:.85em;display:grid;gap:1.5em}
.waterfall-guide .item,.waterfall-other .item{display:inline-block;width:100%;margin:0 0 1.5em;padding:1em;background:#fff;box-sizing:border-box;border:1px solid #ddd;border-radius:.5rem;box-shadow:0 .125rem .35rem rgba(0,0,0,.06);break-inside:avoid;-webkit-column-break-inside:avoid;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.waterfall-guide .item:hover,.waterfall-other .item:hover{transform:translateY(-3px);box-shadow:0 .5rem 1rem rgba(0,0,0,.1);border-color:rgba(220,53,69,.25)}
.waterfall-other{column-count:4}
.waterfall-other .item{text-align:left}
.waterfall-guide{column-count:2}
.waterfall-guide .item{text-align:center}
.waterfall-restaurant{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:1.5rem 0;padding:0}
.restaurant-card{background:#fff;width:100%;margin:0;padding:0;border:1px solid #e9ecef;border-radius:12px;display:flex;flex-direction:column;height:100%;box-shadow:0 2px 6px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.06);overflow:hidden;box-sizing:border-box;transition:transform .25s ease,box-shadow .25s ease}
.restaurant-card:hover{transform:translateY(-4px);box-shadow:0 4px 10px rgba(0,0,0,.06),0 12px 30px rgba(0,0,0,.1)}
.restaurant-header{padding:20px 20px 15px}
.restaurant-title{margin:0 0 10px;font-size:1.15rem;font-weight:700;line-height:1.45;text-align:left}
.restaurant-title a{color:#343a40;text-decoration:none;transition:color .2s ease}
.restaurant-title a:hover{color:#b40415}
.restaurant-name-cn{display:block;color:#343a40;font-size:1.15rem;font-weight:700;line-height:1.4;text-decoration:none;transition:color .2s ease,transform .2s ease}
.restaurant-name-en{display:block;margin-top:3px;color:#6c757d;font-size:.82rem;font-weight:400;line-height:1.4;text-decoration:none;overflow-wrap:anywhere}
.restaurant-name-cn:hover{color:#b40415}
.restaurant-name-only{margin-top:0;color:#343a40;font-size:1.15rem;font-weight:700}
.restaurant-name-only:hover{color:#b40415}
.restaurant-category{display:inline-block;padding:4px 10px;font-size:.75rem;line-height:1.4;color:#fff;background:#0d6efd;border-radius:20px}
.restaurant-tags{display:flex;flex-wrap:wrap;gap:7px;padding:0 20px 16px}
.restaurant-tag{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;font-size:.75rem;border-radius:6px;background:#f8f9fa;color:#495057}
.restaurant-tag i{font-size:.75rem}
.restaurant-tag.rank{color:#dc3545;background:#fff1f2}
.restaurant-tag.rank strong{font-weight:700}
.restaurant-tag.type{color:#087990;background:#e9f8fb}
.restaurant-tag.dining{color:#997404;background:#fff8df}
.restaurant-info{padding:5px 20px 12px;border-top:1px solid #f0f0f0}
.info-row{display:flex;align-items:flex-start;gap:10px;padding:9px 0;font-size:.84rem;line-height:1.55;border-bottom:1px dashed #eee}
.info-row:last-child{border-bottom:none}
.info-label{flex:0 0 25px;width:25px;color:#8c959f;text-align:center}
.info-content{flex:1;min-width:0;color:#555;word-break:break-word;overflow-wrap:anywhere}
.restaurant-footer{padding:12px 20px;background:#fafafa;border-top:1px solid #f0f0f0;text-align:center;margin-top:auto}
.restaurant-more{display:inline-flex;align-items:center;gap:7px;font-size:.82rem;font-weight:500;color:#6c757d;text-decoration:none;transition:all .2s ease}
.restaurant-more span{font-size:1rem;transition:transform .2s ease}
.restaurant-more:hover{color:#b40415;text-decoration:none}
.restaurant-more:hover span{transform:translateX(4px)}
.community-detail-section,.restaurant-detail-section{padding-top:25px;padding-bottom:50px}
.community-detail-card,.restaurant-detail-card{background:#fff;border:1px solid #e9ecef;border-radius:14px;overflow:hidden;box-shadow:0 3px 10px rgba(0,0,0,.04),0 12px 35px rgba(0,0,0,.06)}
.community-detail-header,.restaurant-detail-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 30px;background:linear-gradient(135deg,#f8f9fa 0,#fff 100%);border-bottom:1px solid #eee}
.community-detail-label,.restaurant-detail-label{display:block;margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:2px;color:#999}
.community-detail-header h1,.restaurant-detail-header h1{margin:0;font-size:1.65rem;line-height:1.4;font-weight:600;color:#343a40}
.restaurant-rank-box{flex:0 0 70px;width:70px;height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff1f2;border:1px solid #ffd6da;border-radius:12px;color:#dc3545}
.restaurant-rank-box span{font-size:11px;color:#a94442}
.restaurant-rank-box strong{font-size:1.45rem;line-height:1.2}
.community-detail-info,.restaurant-detail-info{padding:8px 30px 15px}
.detail-row{display:flex;align-items:flex-start;gap:15px;padding:17px 0;border-bottom:1px solid #f1f1f1}
.detail-row:last-child{border-bottom:none}
.detail-icon{flex:0 0 38px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#f5f7f9;color:#6c757d;font-size:15px}
.detail-content{flex:1;min-width:0}
.detail-label{margin-bottom:4px;font-size:.76rem;color:#999}
.detail-value{font-size:.75rem!important;letter-spacing:-.01em;line-height:1.6;color:#444;word-break:break-word}
.detail-value a{color:#495057;text-decoration:none;transition:color .2s ease}
.detail-value a:hover{color:#b40415;text-decoration:none}
.website-link{display:inline-flex;align-items:center;gap:6px}
.website-link span{font-size:13px}
.detail-tag{display:inline-block;padding:4px 9px;border-radius:5px;background:#f5f7f9;color:#555;font-size:.78rem}
.detail-divider{margin:0 5px;color:#bbb}
.info-badge{display:inline-block;padding:5px 11px;border-radius:6px;font-size:.78rem}
.type-badge{color:#087990;background:#e8f8fb}
.dining-badge{color:#997404;background:#fff7d6}
.community-navigation,.restaurant-navigation{display:flex;justify-content:space-between;gap:15px;padding:18px 30px;background:#fafafa;border-top:1px solid #eee}
.community-nav,.restaurant-nav{display:flex;align-items:center;gap:10px;min-width:0;color:#555;text-decoration:none;transition:color .2s ease}
.community-nav:hover,.restaurant-nav:hover{color:#b40415;text-decoration:none}
.community-nav.next,.restaurant-nav.next{text-align:right;margin-left:auto}
.community-nav small,.restaurant-nav small{display:block;margin-bottom:3px;font-size:11px;color:#999}
.community-nav strong,.restaurant-nav strong{display:block;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.83rem;font-weight:500}
.nav-arrow{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:#fff;border:1px solid #e5e5e5;font-size:15px}
.community-map-card,.restaurant-map-card{background:#fff;border:1px solid #e9ecef;border-radius:14px;overflow:hidden;box-shadow:0 3px 10px rgba(0,0,0,.04),0 12px 35px rgba(0,0,0,.06);position:sticky;top:20px}
.community-map-header,.restaurant-map-header{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid #eee}
.map-icon{width:40px;height:40px;flex:0 0 40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#eef7ff;color:#0d6efd}
.community-map-header h3,.restaurant-map-header h3{margin:0 0 3px;font-size:1rem;font-weight:600;color:#343a40}
.community-map-header p,.restaurant-map-header p{margin:0;font-size:.75rem;color:#999}
.community-title-cn,.restaurant-title-cn{display:block}
.community-title-en,.restaurant-title-en{display:block;margin-bottom:3px}
.community-map-body,.restaurant-map-body{position:relative;width:100%}
.community-footer{margin-top:auto;padding:12px 20px;border-top:1px solid #f0f0f0}
#map{width:100%;height:450px;background:#e6f4f8}
#map .leaflet-control-zoom{border:none;box-shadow:0 2px 8px rgba(0,0,0,.15)}
#map .leaflet-control-zoom a{color:#555}
#mapFallback{display:none;text-align:center;padding:15px}
#mapFallback img{display:block;width:100%;height:auto;border:1px solid #e1e8ed;border-radius:8px}
#mapFallback p{margin:10px 0 0;font-size:.8rem;color:#999}
@media only screen and (max-width:320px){.waterfall{grid-template-columns:1fr}
}
@media only screen and (min-width:321px) and (max-width:768px){.waterfall{grid-template-columns:repeat(2,1fr)}
}
@media only screen and (min-width:769px) and (max-width:1200px){.waterfall{grid-template-columns:repeat(3,1fr)}
}
@media only screen and (min-width:1201px){.waterfall{grid-template-columns:repeat(4,1fr)}
}
@media only screen and (max-width:768px){.waterfall-guide,.waterfall-other{grid-template-columns:1fr}
}
@media only screen and (min-width:769px){.waterfall-guide{grid-template-columns:repeat(2,1fr)}
.waterfall-other{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:992px){.waterfall-restaurant{grid-template-columns:repeat(2,1fr);gap:20px}
.restaurant-map-card{position:static}
#map{height:400px}
.restaurant-nav strong{max-width:180px}
}
@media (max-width:576px){.waterfall-restaurant{grid-template-columns:1fr;margin:1rem 0}
.restaurant-card{margin-bottom:0;border-radius:10px}
.restaurant-header{padding:17px 16px 13px}
.restaurant-title{font-size:1.05rem}
.restaurant-tags{padding:0 16px 13px;gap:5px}
.restaurant-info{padding-left:16px;padding-right:16px}
.restaurant-footer{padding-left:16px;padding-right:16px}
.community-detail-section,.restaurant-detail-section{padding-top:10px;padding-bottom:30px}
.community-detail-header,.restaurant-detail-header{align-items:flex-start;padding:20px;gap:12px}
.community-detail-header h1,.restaurant-detail-header h1{font-size:1.25rem}
.community-rank-box,.restaurant-rank-box{flex:0 0 58px;width:58px;height:58px}
.community-rank-box strong,.restaurant-rank-box strong{font-size:1.2rem}
.community-detail-info,.restaurant-detail-info{padding:5px 20px 10px}
.detail-row{gap:10px;padding:14px 0}
.detail-icon{width:34px;height:34px;flex-basis:34px}
.detail-value{font-size:.86rem}
.restaurant-navigation{padding:15px 20px}
.community-nav strong,.restaurant-nav strong{max-width:120px}
.restaurant-map-header{padding:16px}
#map{height:330px}
}
.city-tag-list{padding:0;margin:0}
.city-tag-item{display:inline-flex;align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:.375rem;padding:.35rem .65rem;font-size:.85rem;box-shadow:0 .125rem .25rem rgba(0,0,0,.04);transition:all .2s ease-in-out}
.city-tag-item:hover{background-color:#fff;border-color:#183152;box-shadow:0 .25rem .5rem rgba(24,49,82,.55)}
.city-tag-item a{color:#495057;margin-left:.35rem;text-decoration:none}
.city-tag-item a:hover{color:#183152}
.categories.make-me-sticky,.categories.right-bar{background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,.05);border:1px solid #f0f2f5}
.categories h3.btn-info{background:linear-gradient(135deg,#0dcaf0,#0bac88)!important;border:none!important;border-radius:8px!important;font-size:1rem!important;font-weight:600!important;padding:12px 15px!important;box-shadow:0 4px 12px rgba(13,202,240,.25);letter-spacing:.5px}
.categories li{list-style:none;margin-bottom:8px}
.categories li a{display:flex;align-items:center;padding:10px 14px;color:#495057;background:#f8f9fa;border-radius:8px;font-size:.92rem;font-weight:500;text-decoration:none;transition:all .25s ease-in-out;border-left:3px solid transparent}
.categories li a:hover{background:#f1f8ff;color:#0dcaf0;transform:translateX(4px);border-left-color:#0dcaf0;box-shadow:0 2px 6px rgba(0,0,0,.03)}
.categories li{border-bottom:none!important}
.categories li.active{background:#f0f7ff}
.categories li .category-current{display:flex;align-items:center;gap:10px;width:100%;padding:13px 15px;cursor:default;box-shadow:inset 4px 0 0 rgba(255,255,255,.35)}
.categories li .category-current .category-order{color:#0d6efd}
.categories li .category-current .category-name{font-weight:600}
.categories .category-current-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:#0d6efd;background:#fff;border-radius:50%;font-size:12px;flex-shrink:0}
.guide-breadcrumb{width:100%}
.guide-breadcrumb-inner{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px 16px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px}
.guide-breadcrumb-home{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;color:#0d6efd;background:#fff;border:1px solid #dee2e6;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s ease}
.guide-breadcrumb-home:hover{color:#fff;background:#0d6efd;border-color:#0d6efd;transform:translateY(-1px)}
.guide-breadcrumb-icon{font-size:16px;flex-shrink:0}
.guide-breadcrumb-arrow{font-size:18px;color:#000157}
.guide-breadcrumb-current{display:inline-flex;align-items:center;gap:9px;padding:8px 15px;border-radius:8px;box-shadow:0 3px 5px rgba(0,0,0,.1);border:1px solid #eee;color:#000157}
.guide-breadcrumb-current small{display:block;margin-bottom:1px;font-size:11px;line-height:1.2;opacity:.85}
.guide-breadcrumb-current strong{display:block;font-size:15px;line-height:1.35;font-weight:600}
@media (max-width:576px){.guide-breadcrumb-inner{padding:10px;gap:7px}
.guide-breadcrumb-home{padding:8px 11px;font-size:14px}
.guide-breadcrumb-current{padding:7px 11px}
.guide-breadcrumb-current strong{font-size:14px}
.guide-breadcrumb-arrow{font-size:15px}
}
.steps-detail-card{background:#fff;border:1px solid #e9ecef;border-radius:14px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.04),0 10px 30px rgba(0,0,0,.05)}
.steps-detail-header{padding:30px 32px 24px;border-bottom:1px solid #edf0f2}
.steps-detail-category{display:inline-flex;align-items:center;padding:7px 12px;border-radius:7px;color:#fff;text-decoration:none;font-size:13px;font-weight:600}
.steps-detail-category:hover{color:#fff;opacity:.9}
.steps-detail-title{margin:0 0 18px;color:#212529;font-size:2rem;line-height:1.45;font-weight:700}
.steps-detail-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;color:#7b8188;font-size:13px}
.steps-detail-meta>span{display:inline-flex;align-items:center}
.steps-detail-content{padding:30px 32px;color:#343a40;font-size:16px;line-height:1.9}
.steps-detail-content h2{margin-top:35px;margin-bottom:18px;padding-left:13px;border-left:4px solid #0d6efd;color:#212529;font-size:1.45rem;font-weight:700}
.steps-detail-content h3{margin-top:28px;margin-bottom:15px;color:#343a40;font-size:1.2rem;font-weight:650}
.steps-detail-content p{margin-bottom:18px}
.steps-detail-content ol,.steps-detail-content ul{margin-bottom:20px;padding-left:28px}
.steps-detail-content li{margin-bottom:8px}
.steps-detail-content a{color:#0d6efd;text-decoration:underline;text-underline-offset:3px}
.steps-detail-content img{display:block;max-width:100%;height:auto;margin:25px auto;border-radius:8px}
.steps-detail-content table{width:100%;margin:25px 0;border-collapse:collapse}
.steps-detail-content td,.steps-detail-content th{padding:10px 12px;border:1px solid #dee2e6}
.steps-detail-content th{background:#f8f9fa;font-weight:600}
.steps-detail-content blockquote{margin:25px 0;padding:16px 20px;background:#f8f9fa;border-left:4px solid #0d6efd;color:#6c757d}
.steps-detail-content a{align-items:center;padding:6px 8px;border-radius:4px;color:#495057;text-decoration:none;transition:color .2s ease,background .2s ease;background:#e9ecef;margin:0 5px}
.steps-detail-content a:hover{color:#0d6efd;background:#f5f9ff}
.steps-detail-recommend{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 32px;padding:18px 20px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px}
.recommend-count a{display:inline-flex;align-items:center;padding:7px 13px;color:#fff;background:#0d6efd;border-radius:6px;text-decoration:none;font-size:13px;font-weight:600}
.recommend-count a:hover{color:#fff;background:#0b5ed7}
.steps-detail-navigation{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:25px;padding:25px 32px 30px;border-top:1px solid #edf0f2}
.detail-nav-item{display:block;min-width:0;padding:15px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:9px;color:#343a40;text-decoration:none;transition:all .2s ease}
.detail-nav-item:hover{color:#0d6efd;background:#f5f9ff;border-color:#cfe2ff;transform:translateY(-2px)}
.detail-nav-label{display:block;margin-bottom:6px;color:#6c757d;font-size:12px}
.detail-nav-item strong{display:block;overflow:hidden;color:#343a40;font-size:14px;line-height:1.5;text-overflow:ellipsis}
.detail-nav-item:hover strong{color:#0d6efd}
.detail-nav-item.disabled{color:#adb5bd;background:#fafafa;cursor:default}
.detail-nav-item.disabled:hover{transform:none;color:#adb5bd}
.related-steps-card{overflow:hidden;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.03),0 6px 20px rgba(0,0,0,.03)}
.related-steps-header{display:flex;align-items:center;padding:13px 16px;color:#343a40;background:#f8f9fa;border-bottom:1px solid #e9ecef;font-size:15px;font-weight:600}
.related-steps-header span{color:#0d6efd}
.related-step-item{margin:0;border-bottom:1px solid #edf0f2}
.related-step-item:last-child{border-bottom:0}
.related-step-item a{display:flex;align-items:flex-start;gap:10px;padding:14px;color:#343a40;text-decoration:none;transition:background .2s ease}
.related-step-item a:hover{background:#f5f9ff}
.related-step-number{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;color:#0d6efd;background:#eaf3ff;border-radius:6px;font-size:11px;font-weight:700}
.related-step-content{min-width:0;flex:1}
.related-step-content strong{display:block;color:#343a40;font-size:14px;line-height:1.55}
.related-step-item a:hover strong{color:#0d6efd}
.related-step-content small{display:block;margin-top:5px;color:#999;font-size:11px}
.related-empty{padding:20px;color:#999;text-align:center}
@media (max-width:767px){.steps-detail-header{padding:22px 20px 20px}
.steps-detail-title{font-size:1.55rem;line-height:1.45}
.steps-detail-content{padding:22px 20px;font-size:15px;line-height:1.8}
.steps-detail-recommend{margin:0 20px;padding:15px}
.steps-detail-navigation{grid-template-columns:1fr;padding:20px}
.detail-nav-item.text-end{text-align:left!important}
}
@media (max-width:480px){.steps-detail-meta{display:block}
.steps-detail-meta>span{margin-bottom:6px;margin-right:12px}
.steps-detail-recommend{display:block}
.recommend-count{margin-top:12px}
}
.affiliations-section{padding-top:50px;padding-bottom:70px}
.affiliations-heading{position:relative}
.affiliations-heading-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;margin-bottom:15px;color:#0d6efd;background:#eef6ff;border-radius:14px;font-size:25px}
.affiliations-heading h1{margin-bottom:12px;color:#212529;font-size:2rem;line-height:1.4;font-weight:700}
.affiliations-heading p{max-width:780px;margin:0 auto;color:#6c757d;font-size:15px;line-height:1.8}
.affiliation-card{height:100%;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e9ecef;border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.03),0 10px 28px rgba(0,0,0,.05);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.affiliation-card:hover{transform:translateY(-5px);border-color:#d8e7fb;box-shadow:0 5px 12px rgba(0,0,0,.05),0 16px 35px rgba(0,0,0,.09)}
.affiliation-logo{display:flex;align-items:center;justify-content:center;height:150px;padding:25px;background: url(../images/bgcode.webp);border-bottom:1px solid #edf0f2;text-decoration:none}
.affiliation-logo img{display:block;max-width:180px;max-height:95px;width:auto;height:auto;object-fit:contain;transition:transform .25s ease}
.affiliation-card:hover .affiliation-logo img{transform:scale(1.05)}
.affiliation-card-body{display:flex;flex-direction:column;flex:1;padding:22px 22px 18px}
.affiliation-title{margin:0 0 5px;font-size:19px;line-height:1.45;font-weight:700}
.affiliation-title a{color:#212529;text-decoration:none;transition:color .2s ease}
.affiliation-title a:hover{color:#0d6efd}
.affiliation-title-en{margin-bottom:14px;color:#7b8188;font-size:13px;line-height:1.5;font-weight:500}
.affiliation-description{display:-webkit-box;margin:0;overflow:hidden;color:#6c757d;font-size:14px;line-height:1.8;-webkit-line-clamp:4;-webkit-box-orient:vertical}
.affiliation-card-footer{margin-top:auto;padding-top:18px}
.affiliation-more{display:inline-flex;align-items:center;color:#0d6efd;font-size:13px;font-weight:600;text-decoration:none}
.affiliation-more:hover{color:#0b5ed7}
.affiliation-more span{transition:transform .2s ease}
.affiliation-card:hover .affiliation-more span{transform:translateX(4px)}
.affiliations-empty{padding:50px 20px;color:#999;background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;text-align:center}
@media (max-width:991px){.affiliations-section{padding-top:40px;padding-bottom:55px}
.affiliations-heading h1{font-size:1.8rem}
}
@media (max-width:575px){.affiliations-section{padding-top:30px;padding-bottom:45px}
.affiliations-heading-icon{width:50px;height:50px;font-size:21px}
.affiliations-heading h1{font-size:1.55rem}
.affiliations-heading p{font-size:14px}
.affiliation-logo{height:135px}
.affiliation-card-body{padding:19px 18px 17px}
.affiliation-title{font-size:18px}
}
.affiliation-detail-header{padding:22px 0 28px;background:#f7f9fc;border-bottom:1px solid #e9ecef}
.affiliation-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:24px;font-size:13px;line-height:1.5}
.affiliation-breadcrumb a{color:#6c757d;text-decoration:none}
.affiliation-breadcrumb a:hover{color:#0d6efd}
.breadcrumb-separator{color:#adb5bd;font-size:18px}
.breadcrumb-current{color:#343a40}
.affiliation-detail-title{display:flex;align-items:center;gap:18px}
.affiliation-detail-icon{width:62px;height:62px;flex:0 0 62px;display:flex;align-items:center;justify-content:center;color:#fff;background:#0d6efd;border-radius:14px;font-size:27px;box-shadow:0 6px 18px rgba(13,110,253,.18)}
.affiliation-detail-title-text{min-width:0}
.affiliation-detail-title h1{margin:0;color:#212529;font-size:28px;font-weight:700;line-height:1.35}
.affiliation-detail-title-en{margin-top:4px;color:#6c757d;font-size:15px;line-height:1.5}
.affiliation-meta{display:flex;align-items:center;flex-wrap:wrap;margin-top:7px;color:#868e96;font-size:12px}
.affiliation-meta-divider{margin:0 9px;color:#ced4da}
.affiliation-detail-section{padding-top:35px;padding-bottom:60px}
.affiliation-content-card{overflow:hidden;background:#fff;border:1px solid #e9ecef;border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.03),0 10px 30px rgba(0,0,0,.04)}
.affiliation-content{padding:30px 32px;color:#495057;font-size:16px;line-height:1.9}
.affiliation-content p{margin-bottom:1.2rem}
.affiliation-content h2,.affiliation-content h3,.affiliation-content h4{margin-top:1.8rem;margin-bottom:1rem;color:#212529;font-weight:600}
.affiliation-content img{max-width:100%;height:auto}
.affiliation-content a{color:#0d6efd}
.affiliation-content ol,.affiliation-content ul{padding-left:1.5rem}
.affiliation-content th{padding-right:10px}
.affiliation-content img{padding-bottom:15px}
.affiliation-university-section{padding:0 32px 32px}
.affiliation-section-heading{display:flex;align-items:center;gap:13px;margin-bottom:20px;padding-top:24px;border-top:1px solid #edf0f2}
.affiliation-section-icon{width:42px;height:42px;flex:0 0 42px;display:flex;align-items:center;justify-content:center;color:#0d6efd;background:#eef6ff;border-radius:10px;font-size:18px}
.affiliation-section-heading h2{margin:0;color:#212529;font-size:20px;font-weight:700}
.affiliation-section-heading p{margin:3px 0 0;color:#868e96;font-size:13px}
.affiliation-table-wrapper{width:100%;overflow-x:auto}
.affiliation-university-table{width:100%!important;border-collapse:separate!important;border-spacing:0;font-size:13px}
.affiliation-university-table thead th{padding:12px 10px!important;color:#495057;background:#f8f9fa;border-bottom:1px solid #dee2e6!important;font-weight:600;white-space:nowrap}
.affiliation-university-table tbody td{padding:12px 10px!important;color:#495057;border-bottom:1px solid #f0f1f2!important;vertical-align:middle}
.affiliation-university-table tbody tr:hover td{background:#f8fbff}
.dataTables_wrapper{color:#6c757d;font-size:13px}
.dataTables_wrapper .dataTables_filter input{margin-left:7px;padding:7px 10px;border:1px solid #dee2e6;border-radius:7px;outline:0}
.dataTables_wrapper .dataTables_filter input:focus{border-color:#86b7fe;box-shadow:0 0 0 3px rgba(13,110,253,.08)}
.dataTables_wrapper .dataTables_paginate{margin-top:12px}
.dataTables_wrapper .dataTables_paginate .paginate_button{padding:5px 10px!important;border:0!important;border-radius:6px!important;color:#495057!important;background:0 0!important}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:#0d6efd!important;background:#eef6ff!important}
.dataTables_wrapper .dataTables_paginate .paginate_button.current{color:#fff!important;background:#0d6efd!important}
.affiliation-university-button{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:5px 10px;color:#0d6efd!important;background:#eef6ff;border-radius:6px;font-size:12px;text-decoration:none!important;transition:color .2s ease,background .2s ease,transform .2s ease}
.affiliation-university-button:hover{color:#fff!important;background:#0d6efd;transform:translateY(-1px)}
.affiliation-sidebar-sticky{position:sticky;top:85px}
.affiliation-category-card{overflow:hidden;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.03),0 8px 24px rgba(0,0,0,.04)}
.affiliation-category-header{display:flex;align-items:center;padding:15px 16px;color:#fff;background:#0d6efd;font-size:16px;font-weight:600}
.affiliation-category-list{margin:0;padding:0;list-style:none}
.affiliation-category-list li{margin:0;padding:0;border-bottom:1px solid #f0f1f2}
.affiliation-category-list li:last-child{border-bottom:0}
.affiliation-category-list li a{position:relative;display:flex;align-items:center;gap:10px;padding:11px 14px;color:#495057;background:#fff;text-decoration:none;transition:color .2s ease,background .2s ease,padding-left .2s ease}
.affiliation-category-list li a:hover{padding-left:18px;color:#0d6efd;background:#f5f9ff}
.affiliation-category-list .category-order{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;flex:0 0 25px;color:#6c757d;background:#f1f3f5;border-radius:6px;font-size:11px;font-weight:600}
.affiliation-category-list .category-name{flex:1;font-size:13px;line-height:1.45}
.affiliation-category-list .category-arrow{color:#adb5bd;font-size:14px}
.affiliation-category-list li.active{background:#eef6ff}
.affiliation-category-list .category-current{position:relative;display:flex;align-items:center;gap:10px;padding:11px 14px;color:#0d6efd;background:#eef6ff;cursor:default}
.affiliation-category-list .category-current::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0d6efd}
.affiliation-category-list .category-current .category-order{color:#fff;background:#0d6efd}
.affiliation-category-list .category-current .category-name{font-weight:600}
.category-current-icon{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;flex:0 0 21px;color:#fff;background:#0d6efd;border-radius:50%;font-size:10px;font-weight:700}
.affiliation-back-card{margin-top:15px;overflow:hidden;background:#fff;border:1px solid #e9ecef;border-radius:10px}
.affiliation-back-card a{display:flex;align-items:center;padding:13px 15px;color:#495057;font-size:13px;text-decoration:none;transition:color .2s ease,background .2s ease}
.affiliation-back-card a:hover{color:#0d6efd;background:#f5f9ff}
@media (max-width:991.98px){.affiliation-sidebar-sticky{position:static}
}
@media (max-width:767.98px){.affiliation-detail-header{padding:18px 0 22px}
.affiliation-detail-title{align-items:flex-start}
.affiliation-detail-icon{width:48px;height:48px;flex:0 0 48px;border-radius:11px;font-size:21px}
.affiliation-detail-title h1{font-size:22px}
.affiliation-detail-title-en{font-size:13px}
.affiliation-content{padding:22px 18px;font-size:15px;line-height:1.8}
.affiliation-university-section{padding:0 18px 22px}
.affiliation-section-heading h2{font-size:18px}
.affiliation-section-heading p{display:none}
.hiddentable,.hiddentable1,.hiddentable2{display:none}
.affiliation-university-table{min-width:520px}
}
@media (max-width:575.98px){.affiliation-breadcrumb{font-size:12px}
.breadcrumb-current{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.affiliation-detail-title{gap:12px}
.affiliation-detail-title h1{font-size:20px}
.affiliation-meta{font-size:11px}
}
.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_length{margin-bottom:15px}
.dataTables_wrapper .dataTables_length{float:left}
.dataTables_wrapper .dataTables_filter{float:right}
.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{margin-top:15px}
.dataTables_wrapper::after{content:"";display:table;clear:both}
.attraction-sidebar-card .sidebar-sticky-title{position:sticky;top:20px;z-index:10}
.attraction-sidebar-card .sidebar-thumb{width:80px;height:60px;overflow:hidden;border-radius:6px}
.attraction-sidebar-card .sidebar-thumb img{width:100%;height:100%;object-fit:cover}
.attraction-sidebar-card .sidebar-title-link{font-size:.9rem;line-height:1.3}
.attraction-sidebar-card .sidebar-meta{font-size:.75rem}
.attraction-sidebar-card .sidebar-footer{font-size:.75rem}
.attraction-sidebar-card .sidebar-subtext{max-width:110px}
