@charset "utf-8";
/* 酒店内容样式 */
.tr-hotel-summary { display:flex; flex-direction:column; background:#fff; border:1px solid #cbd5e1; border-radius:8px; padding:20px; margin-bottom:30px; box-sizing:border-box; gap:20px; }
.tr-hotel-top-cols { display:flex; gap:25px; width:100%; }
.tr-hotel-left { width:450px; flex-shrink:0; display:flex; flex-direction:column; }
.tr-hotel-pic { width:100%; height:310px; border-radius:4px; overflow:hidden; background:#f1f5f9; }
.tr-hotel-pic img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s; display:block; }
.tr-hotel-pic:hover img { transform:scale(1.05); }
.tr-hotel-guarantees { margin-top:15px; border:1px dashed #cbd5e1; border-radius:4px; padding:12px 10px; background:#fff; }
.tr-hotel-guarantees ul { display:flex; justify-content:space-around; margin:0; padding:0; list-style:none; }
.tr-hotel-guarantees li { font-size:13px; color:#475569; display:flex; align-items:center; font-weight:bold; }
.tr-hotel-guarantees li i { display:inline-flex; color:#0284c7; margin-right:5px; } 
.tr-hotel-guarantees li i svg { width:16px; height:16px; }
.tr-hotel-right { flex:1; display:flex; flex-direction:column; min-width:0; }
.tr-hotel-top { display:flex; justify-content:space-between; align-items:center; border-bottom:1px dashed #e2e8f0; padding-bottom:15px; margin-bottom:15px; }
.tr-hotel-title-wrap { flex:1; min-width:0; padding-right:20px; display:flex; align-items:baseline; flex-wrap:wrap; }
.tr-hotel-title { font-size:24px; color:#1e293b; font-weight:bold; margin:0; line-height:1.4; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.p-views { font-size:13px; color:#64748b; margin-left:15px; white-space:nowrap; }
.tr-fee-block { width:155px; flex-shrink:0; display:flex; flex-direction:column; align-items:flex-end; position:relative; z-index:100; }
.fbp-card { width:100%; border:1px solid #cbd5e1; border-radius:4px; text-align:center; background:#fff; }
.fbp-top { background:#f1f5f9; color:#475569; font-size:13px; padding:10px 0 6px; border-radius:4px 4px 0 0; font-weight:bold; }
.fbp-top span { color:#c2410c; font-family:Arial, sans-serif; margin:0 2px; }
.fbp-top span em { font-size:22px; font-weight:bold; font-style:normal; }
.fbp-bottom { color:#64748b; font-size:12px; padding:8px 0; border-top:1px solid #cbd5e1; border-radius:0 0 4px 4px; display:flex; justify-content:center; align-items:center; }
.fbp-tooltip-wrap { display:flex; align-items:center; justify-content:center; gap:4px; }
.fbp-link { font-size:12px; color:#475569; display:inline-flex; align-items:center; cursor:pointer; transition:color 0.2s; user-select:none; position:relative; z-index:102; font-weight:bold; }
.fbp-link:hover { color:#c2410c; }
.fbp-link i { display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; background:#ea580c; color:#fff; border-radius:2px; font-size:12px; font-style:normal; margin-left:4px; font-family:Arial, sans-serif; font-weight:bold; line-height:1; }
.fbp-tooltip { position:absolute; right:100%; top:-15px; margin-right:15px; width:300px; background:#fff; border:1px solid #cbd5e1; padding:15px; font-size:13px; color:#334155; line-height:1.8; box-shadow:0 4px 20px rgba(0,0,0,0.15); border-radius:6px; visibility:hidden; opacity:0; transform:translateX(10px); transition:all 0.2s ease; z-index:100; text-align:justify; cursor:default; font-weight:500; }
.fbp-tooltip::before { content:''; position:absolute; top:0; right:-20px; width:20px; height:100%; background:transparent; }
.fbp-tooltip::after { content:''; position:absolute; bottom:-50px; right:-150px; width:150px; height:100px; background:transparent; z-index:-1; }
.fbp-arrow { position:absolute; top:32px; right:-8px; border-width:8px 0 8px 8px; border-style:solid; border-color:transparent transparent transparent #cbd5e1; }
.fbp-arrow::after { content:''; position:absolute; top:-7px; right:1px; border-width:7px 0 7px 7px; border-style:solid; border-color:transparent transparent transparent #fff; }
.tr-fee-block:hover .fbp-tooltip { visibility:visible; opacity:1; transform:translateX(0); }
.tr-hotel-tags-wrap { display:flex; flex-wrap:nowrap; gap:10px; align-items:center; width:100%; box-sizing:border-box; }
.tr-hotel-tags-wrap span { font-size:13px; color:#0f766e; border:1px solid #7dd3fc; padding:6px 12px; border-radius:4px; display:inline-flex; align-items:center; background:#f0f9ff; white-space:nowrap; flex-shrink:0; font-weight:bold; }
.tr-hotel-tags-wrap span i { margin-right:4px; display:inline-flex; color:#0284c7; }
.tr-hotel-tags-wrap span i svg { width:15px; height:15px; }
.tr-hotel-tags-wrap span.addr-tag { flex:1; min-width:0; }
.tr-hotel-tags-wrap span.addr-tag em { font-style:normal; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; display:block; color:#334155; }
.tr-hotel-form-box { border:1px solid #cbd5e1; background:#f8fafc; border-radius:8px; padding:20px; flex:1; display:flex; flex-direction:column; }
.tr-hotel-form-box form { display:flex; flex-direction:column; height:100%; }
.tr-form-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:15px; margin-bottom:15px; }
.tr-form-group { display:flex; flex-direction:column; }
.tr-form-group label { font-size:13px; color:#1e293b; font-weight:bold; margin-bottom:8px; }
.txt-input { height:38px; border:1px solid #94a3b8; border-radius:4px; padding:0 10px; font-size:14px; outline:none; background:#fff; transition:border-color 0.2s; color:#1e293b; font-weight:500; }
.txt-input:focus { border-color:#0284c7; box-shadow:0 0 0 2px rgba(2,132,199,0.1); }
.tr-btn-submit { width:100%; background:#0277bd; color:#fff; border:none; height:44px; border-radius:4px; font-size:16px; font-weight:bold; cursor:pointer; transition:background 0.3s; margin-top:auto; letter-spacing:1px; }
.tr-btn-submit:hover { background:#01579b; }
#hotel_xing { margin-top:5px; }
#hotel_xing ul { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
#hotel_xing input[type="radio"], #hotel_xing input[type="checkbox"] { display:none; }
#hotel_xing li { position:relative; display:inline-flex; align-items:center; font-size:13px; color:#475569; cursor:pointer; margin-bottom:0; padding:8px 18px; border:1px solid #94a3b8; border-radius:4px; background:#fff; transition:all 0.2s; overflow:hidden; font-weight:500; }
#hotel_xing li:hover { border-color:#c2410c; color:#c2410c; background:#fff7ed; }
#hotel_xing li.act, #hotel_xing li.cur, #hotel_xing li.current { border-color:#c2410c; color:#c2410c; background:#fff7ed; font-weight:bold; }
#hotel_xing li.act::after, #hotel_xing li.cur::after, #hotel_xing li.current::after { content:''; position:absolute; right:0; bottom:0; border-bottom:18px solid #ea580c; border-left:18px solid transparent; }
#hotel_xing li.act::before, #hotel_xing li.cur::before, #hotel_xing li.current::before { content:''; position:absolute; right:2px; bottom:4px; width:4px; height:8px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); z-index:1; }
#hotel_xing li a { color:inherit; text-decoration:none; display:inline-block; width:100%; height:100%; }
#hotel_xing li em { display:none; }
.custom-date-input::placeholder { color:#64748b; }
.custom-date-input { background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%230284c7" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>') !important; background-repeat:no-repeat !important; background-position:right 10px center !important; background-size:18px !important; cursor:pointer; padding-right:30px !important; position:relative; caret-color:transparent; }
.custom-date-input::-webkit-calendar-picker-indicator { opacity:0; display:block; width:100%; height:100%; position:absolute; top:0; left:0; cursor:pointer; }
.vanilla-calendar { position:absolute; z-index:1000; background-color:#fff; border:1px solid #cbd5e1; border-radius:6px; box-shadow:0 4px 20px rgba(0,0,0,0.15); width:280px; display:none; padding:0; font-family:"Microsoft YaHei", sans-serif; overflow:hidden; }
.vc-header { display:flex; justify-content:space-between; align-items:center; background-color:#0277bd; color:#fff; padding:12px 15px; font-size:15px; font-weight:bold; }
.vc-header span { cursor:pointer; padding:0 10px; color:#fff; user-select:none; font-size:18px; font-weight:bold; }
.vc-header span:hover { opacity:0.8; }
.vc-weekdays { display:grid; grid-template-columns:repeat(7, 1fr); text-align:center; font-size:13px; color:#475569; padding:15px 15px 10px; font-weight:bold; }
.vc-days { display:grid; grid-template-columns:repeat(7, 1fr); gap:4px; text-align:center; padding:0 15px 15px; }
.vc-day { height:32px; line-height:32px; border-radius:4px; cursor:pointer; font-size:13px; color:#1e293b; transition:all 0.2s; font-weight:500; }
.vc-day:hover:not(.disabled) { background-color:#0284c7; color:#fff; font-weight:bold; }
.vc-day.disabled { color:#94a3b8; cursor:not-allowed; background-color:#f1f5f9; }
.rd_nav { background:#f8fafc; border-bottom:2px solid #00706c; width:1200px; margin:0 auto; height:40px; display:flex; justify-content:space-between; box-sizing:border-box; position:-webkit-sticky; position:sticky; top:0; z-index:999; }
.rd_nav.n_fix { box-shadow:0 2px 15px rgba(0,0,0,0.1); border-bottom-color:#005c58;}
.rd_nav ul { display:flex; height:100%; margin:0; padding:0; list-style:none; }
.rd_nav li { text-align:center; }
.rd_nav li a { display:block; font-size:16px; color:#334155; padding:0 25px; line-height:38px; text-decoration:none; border-right:1px solid #cbd5e1; transition:color 0.3s; font-weight:500; }
.rd_nav li.n_cur { background:#00706c; }
.rd_nav li.n_cur a { color:#fff; border-right-color:#00706c; font-weight:bold; }
.rd_nav li:hover a { color:#00706c; }
.rd_nav li.n_cur:hover a { color:#fff; }
.rd_tel { font-size:20px; color:#00706c; font-weight:bold; line-height:38px; margin:0; padding-right:15px; display:flex; align-items:center; font-family:Arial; }
.ai-detail-layout { display:flex; gap:20px; align-items:flex-start; width:1200px; margin:0 auto; }
.ai-detail-layout .ai-list-main { flex:1; min-width:0; background:#fff; border-radius:2px; border:1px solid #94a3b8; border-top:none; border-right:none; padding-bottom:40px; box-sizing:border-box; }
.ai-detail-layout .ai-list-side { width:280px; flex-shrink:0; position:-webkit-sticky; position:sticky; top:42px; margin-top:30px; align-self:flex-start; z-index:100; }
.rd_wrap { padding:30px 0 30px 30px; }
.rd_item { margin-bottom:40px; }
.ai-detail-h2 { font-size:20px; color:#1e293b; display:flex; align-items:center; margin-bottom:20px; padding-bottom:0; position:relative; font-weight:bold; margin-top:0; }
.ai-detail-h2::after { content:''; flex:1; border-top:1px dashed #94a3b8; margin-left:15px; }
.ai-detail-h2 svg { width:24px; height:24px; color:#c2410c; margin-right:10px; flex-shrink:0; } 
.detail-rich-text { font-size:15px; color:#334155; line-height:1.8; padding-left:34px; font-weight:500;}
.page-context-nav { display:flex; justify-content:space-between; margin:30px 0 40px; gap:20px; }
.page-context-nav .context-card { flex:1; background:#f8fafc; border:1px solid #cbd5e1; border-radius:8px; padding:16px 20px; transition:all 0.3s ease; overflow:hidden; width:48%; box-sizing:border-box; position:relative; }
.page-context-nav .context-card a::before { content:''; position:absolute; top:0; left:0; width:100%; height:100%; z-index:5; }
.page-context-nav .context-card:hover { background:#fff7ed; border-color:#fdba74; box-shadow:0 4px 12px rgba(234,88,12,0.1); transform:translateY(-2px); }
.page-context-nav .context-card span.c-label { font-size:13px; color:#475569; margin-bottom:8px; display:block; font-weight:bold;}
.page-context-nav .context-card.next span.c-label { text-align:right; }
.page-context-nav .context-card a, .page-context-nav .context-card { font-size:15px; color:#1e293b; font-weight:bold; text-decoration:none; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; display:block; }
.page-context-nav .context-card a:hover { color:#ea580c; }
.page-context-nav .context-card.next a, .page-context-nav .context-card.next { text-align:right; }
.ai-side-widget { background:#fff; border-radius:6px; border:1px solid #cbd5e1; overflow:hidden; box-shadow:0 1px 6px rgba(0,0,0,0.05); margin-bottom:20px; }
.sidebar-fixed-look .ai-side-tit { background:#cc3300; display:flex; align-items:center; justify-content:space-between; padding-right:10px; }
.sidebar-fixed-look .tit-text-white { color:#fff; display:flex; align-items:center; padding:10px 0 10px 15px; font-size:16px; font-weight:bold; }
.old-share-wrap { display:flex; padding:15px; align-items:center; box-sizing:border-box; overflow:hidden; }
.share-qr-img { width:110px !important; height:110px !important; flex:0 0 115px !important; border-radius:4px; border:1px solid #cbd5e1; padding:4px; background:#fff; box-sizing:border-box; display:block; }
.old-share-wrap .txt { flex:1; min-width:0; padding-left:12px; display:flex; flex-direction:column; justify-content:center; }
.old-share-wrap .txt p { margin:0; font-size:12px; color:#475569; line-height:1.6; white-space:nowrap; font-weight:500;}
.share-title { color:#c2410c; font-weight:bold; margin-bottom:5px; font-size:14px; white-space:nowrap; }
.old-dashed-sep { border-top:1px dashed #cbd5e1; margin:0 15px; }
.old-cs-details { padding:15px; text-align:center; }
.company-title { font-size:15px; color:#1e293b; font-weight:bold; margin-bottom:10px; }
.old-numbers { line-height:1.8; margin-bottom:10px; }
.old-numbers span { color:#c2410c; font-size:14px; font-weight:bold; margin:0 5px; display:inline-block; }
.old-cs-person-qr { max-width:205px !important; height:auto; margin:10px auto; display:block; border-radius:4px; }
.old-iconed-info { font-size:13px; color:#475569; text-align:left; margin-bottom:5px; font-weight:500;}
.route_guess { width:1200px; background:#fff; border-radius:2px; padding:20px 0 0; box-sizing:border-box; margin:20px auto; }
.re_list ul { margin:0; padding:0; width:100%; display:flex; justify-content:flex-start; gap:16px; list-style:none; }
.re_list li { width:224px; background:#fff; border:1px solid #cbd5e1; border-radius:6px; overflow:hidden; transition:all 0.3s; }
.re_list li:hover { box-shadow:0 4px 12px rgba(0,0,0,0.1); transform:translateY(-4px); border-color:#94a3b8; }
.re_list li img { width:100%; height:150px; object-fit:cover; display:block; }
.re_list .re-title { padding:10px 12px 5px; }
.re_list .re-title a { font-size:14px; color:#1e293b; font-weight:bold; text-decoration:none; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.4; height:39px; }
.re_list .re-title a:hover { color:#c2410c; }
.re_list .re-info { padding:0 12px 12px; font-size:12px; color:#64748b; display:flex; justify-content:space-between; align-items:center; font-weight:bold;}
.re_list .re-info i { color:#c2410c; font-style:normal; }
.re_list .re-info em { font-size:18px; font-weight:bold; font-family:Arial; margin-right:2px; }
.hotellist tbody td { padding:12px 5px; border-bottom:1px dashed #cbd5e1; color:#334155; vertical-align:middle; font-weight:500;}
.hotellist tbody tr:hover td { background:#f1f5f9; }
.hotellist tbody td:nth-child(2) { text-decoration:line-through; color:#64748b; font-weight:bold;}
.hotellist tbody td:nth-child(3), .hotellist tbody td span.jd_tdc { color:#c2410c; font-weight:bold; font-size:16px; font-family:Arial, sans-serif; }
.hotellist tbody td:last-child a { display:inline-block; background:#0277bd; color:#fff !important; border-radius:4px; text-decoration:none !important; transition:all 0.3s ease; box-shadow:0 2px 6px rgba(2, 119, 189, 0.3); text-align:center; vertical-align:middle; font-size:0 !important; line-height:0; overflow:hidden; font-weight:bold;}
.hotellist tbody td:last-child a::after { content:'预订'; font-size:13px; line-height:1.4; font-weight:bold; display:block; padding:6px 18px; letter-spacing:1px; }
.hotellist tbody td:last-child a:hover { background:#01579b; box-shadow:0 4px 10px rgba(2, 119, 189, 0.4); transform:translateY(-1px); }
.hotellist tbody td:last-child a img { display:none !important; }
#hl_pic { width:650px; margin:0 auto; border:1px solid #cbd5e1; padding:15px; box-sizing:border-box; background:#f8fafc; border-radius:8px; box-shadow:0 2px 10px rgba(0,0,0,0.05); margin-top:15px; }
#View350 { position:relative; text-align:center; margin-bottom:20px; background:#fff !important; border-radius:8px !important; overflow:hidden; border:1px solid #cbd5e1 !important; padding-bottom:44px; }
.big_one { width:100%; height:360px; display:flex; align-items:center; justify-content:center; background:#fff !important; }
.big_one table { width:100%; height:100%; border-collapse:collapse; }
.big_one td { vertical-align:middle; padding:0; text-align:center; }
.big_one img { max-width:100%; max-height:630px; object-fit:contain; vertical-align:middle; transition:opacity 0.3s; }
#imgDescId { position:absolute !important; bottom:0 !important; left:0 !important; width:100% !important; height:44px !important; line-height:44px !important; margin:0 !important; padding:0 120px 0 15px !important; background:#f1f5f9 !important; border-top:1px solid #cbd5e1 !important; color:#1e293b !important; text-align:left !important; font-size:15px !important; font-weight:bold; box-sizing:border-box; pointer-events:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.tool_box { position:absolute !important; right:15px !important; bottom:0 !important; top:auto !important; height:44px !important; line-height:44px !important; background:none !important; color:#475569 !important; padding:0 !important; font-size:13px !important; text-align:right !important; border-radius:0 !important; letter-spacing:1px; font-weight:bold;}
.tool_box .l_black { color:#475569 !important; }
.small_pic { display:flex; align-items:center; justify-content:space-between; height:80px; }
.small_pic .l, .small_pic .r { width:44px; height:100%; display:flex !important; align-items:center; justify-content:center; cursor:pointer; background:#fff; border:1px solid #cbd5e1; border-radius:4px; transition:all 0.3s; user-select:none; }
.small_pic .l:hover, .small_pic .r:hover { background:#f1f5f9; border-color:#94a3b8; box-shadow:0 2px 6px rgba(0,0,0,0.1); }
.small_pic .l span::before { content:"❮"; font-size:24px; color:#475569; font-weight:bold;}
.small_pic .r span::before { content:"❯"; font-size:24px; color:#475569; font-weight:bold;}
.small_pic .l span.no::before, .small_pic .r span.no::before { color:#cbd5e1; }
.small_pic .l span.no, .small_pic .r span.no { cursor:not-allowed; background:#f8fafc; }
.small_pic .box { flex:1; overflow:hidden; position:relative; height:100%; margin:0 15px !important; width:100% !important; }
#smallImgListId { position:absolute; left:0; top:0; padding:0; margin:0; display:flex; list-style:none; transition:transform 0.3s ease-in-out; }
#smallImgListId li { position:relative; width:100px; height:80px; flex-shrink:0; margin-right:10px; border:3px solid transparent !important; cursor:pointer; opacity:0.5 !important; transition:all 0.2s; box-sizing:border-box; border-radius:0 !important; overflow:hidden; }
#smallImgListId li img { width:100%; height:100%; object-fit:cover; display:block; }
#smallImgListId li.on, #smallImgListId li:hover { opacity:1 !important; border:3px solid #ea580c !important; }
#smallImgListId li span { position:absolute; left:0; bottom:0; width:100%; background:rgba(234, 88, 12, 0.9); color:#fff; font-size:12px; font-weight:bold; text-align:center; line-height:24px; height:24px; display:none; }
#smallImgListId li:hover span, #smallImgListId li.on span { display:block; }
@media (max-width: 992px) { .hotel-summary-box { flex-direction:column; } .hotel-summary-pic { width:100%; height:auto; } }
@media (max-width: 768px) { .form-grid { grid-template-columns:1fr; } .hotel-attr-tags span { width:100%; } }