:root{--primary: #222222;--accent: #E51D54;--bg: #ffffff;--text-main: #222222;--text-sub: #717171;--border: #dddddd;--radius: 12px}body{font-family:Kanit,sans-serif;background:var(--bg);color:var(--text-main);margin:0;padding:0 0 100px;-webkit-user-select:none;-ms-user-select:none;user-select:none}.tabs-nav{display:flex;border-bottom:1px solid #eee;background:#fff;position:sticky;top:0;z-index:50}.tab-btn{flex:1;padding:15px;background:none;border:none;font-family:Kanit;font-size:1rem;color:#717171;cursor:pointer;position:relative;transition:.3s}.tab-btn.active{color:var(--primary);font-weight:600}.tab-btn.active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:3px;background:var(--primary);border-radius:3px 3px 0 0}.view-section{display:none;animation:fadeIn .4s ease}.view-section.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.gallery-container{position:relative;width:100%;height:620px;overflow:hidden;background:#fff}.gallery-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;height:100%;scrollbar-width:none}.gallery-scroll::-webkit-scrollbar{display:none}.gallery-item{flex:0 0 100%;scroll-snap-align:center;position:relative;display:flex;align-items:center;justify-content:center;background:#fff;height:100%}.gallery-item img{width:100%;height:100%;object-fit:cover}.top-nav{position:absolute;top:15px;left:15px;right:15px;display:flex;justify-content:space-between;z-index:10}.photo-count{position:absolute;bottom:15px;right:15px;background:#222222b3;color:#fff;padding:4px 12px;border-radius:15px;font-size:.8rem}.container{padding:20px;max-width:600px;margin:0 auto}h1{font-size:1.6rem;margin:0 0 5px;font-weight:600}.location{color:var(--text-sub);font-size:.9rem;margin-bottom:15px}.highlights-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:25px}.highlight-item{display:flex;flex-direction:column;align-items:center;padding:10px 5px;border:1px solid var(--border);border-radius:var(--radius);text-align:center;font-size:.75rem;color:var(--text-main)}.highlight-item i{font-size:1.2rem;margin-bottom:5px;color:#444}.detail-section{margin-bottom:25px}.detail-header{font-size:1.1rem;font-weight:600;margin-bottom:10px;display:flex;align-items:center;gap:8px}.detail-header i{color:var(--accent)}.bottom-bar{position:fixed;bottom:0;left:0;width:100%;background:#fff;border-top:1px solid var(--border);padding:15px 20px;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;z-index:100;box-shadow:0 -2px 10px #0000000d}.price-info span:first-child{display:block;font-size:1.1rem;font-weight:600}.btn-reserve{background:linear-gradient(90deg,#e61e4d,#d80565);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.feature-box{background:#fff;border:1px solid #eee;border-radius:12px;padding:15px;display:flex;align-items:center;gap:12px}.feature-box i{font-size:1.5rem;color:var(--accent);background:#fff0f3;width:45px;height:45px;display:flex;align-items:center;justify-content:center;border-radius:50%}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.photo-grid img{width:100%;height:120px;object-fit:cover;border-radius:8px;cursor:pointer}.history-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:15px;margin-bottom:15px}.h-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.st-pending{background:#fffbe6;color:#faad14;border:1px solid #ffe58f}.booking-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:200;display:none;justify-content:center;align-items:flex-end}.modal-content{background:#fff;width:100%;max-width:600px;height:90vh;border-radius:20px 20px 0 0;padding:20px;box-sizing:border-box;overflow-y:auto;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#555}.input-group{margin-bottom:15px}.input-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}input[type=text],input[type=tel],textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font-family:Kanit;font-size:1rem;box-sizing:border-box}.calendar-legend{display:flex;gap:10px;font-size:.85rem}.legend-item{display:flex;align-items:center;gap:4px}.dot{width:10px;height:10px;border-radius:50%}.dot.green{background:#00c853}.dot.red{background:#ff4d4f}.btn-reset-date{background:none;border:1px solid #ccc;padding:4px 10px;border-radius:4px;font-size:.8rem;cursor:pointer;font-family:Kanit}.dot.orange{background:#ffa940}.dot.gray{background:#8c8c8c}.addon-card{display:flex;justify-content:space-between;align-items:center;border:1px solid #eee;padding:15px;border-radius:12px}.counter-btn{width:30px;height:30px;border-radius:50%;border:1px solid #ccc;background:#fff;font-size:1.2rem;display:flex;align-items:center;justify-content:center;cursor:pointer}.summary-box{background:#f9f9f9;padding:15px;border-radius:12px;margin-bottom:20px}.summary-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.95rem}.summary-total{display:flex;justify-content:space-between;font-weight:700;font-size:1.2rem;margin-top:10px;padding-top:10px;border-top:1px dashed #ccc;color:var(--accent)}.btn-confirm{width:100%;background:linear-gradient(90deg,#e61e4d,#d80565);color:#fff;border:none;padding:15px;border-radius:12px;font-weight:600;font-size:1.1rem;cursor:pointer;font-family:Kanit}.summary-card-final{background:#fff;border-radius:16px;padding:25px;box-shadow:0 10px 30px #0000001a;position:relative;border:1px solid #eee}.sum-item{display:flex;align-items:center;gap:15px;font-size:.95rem;color:#333;margin-bottom:12px}.sum-item i{width:20px;text-align:center;font-size:1.1rem;color:#555}.btn-close-app{width:100%;background:#eee;color:#333;border:none;padding:12px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer}.flatpickr-calendar{border-radius:12px!important;box-shadow:0 5px 20px #0000001a!important;border:1px solid #eee!important}.flatpickr-day{border-radius:50%!important;margin:2px 0!important}.flatpickr-day.status-available:not(.selected):not(.startRange):not(.endRange):not(.inRange){background-color:#00c853!important;color:#fff!important;border-color:#00c853!important;font-weight:500}.flatpickr-day.status-booked:not(.selected):not(.inRange){background-color:#ff4d4f!important;color:#fff!important;border-color:#ff4d4f!important}.flatpickr-day.status-pending:not(.selected):not(.inRange){background-color:#ffa940!important;color:#fff!important;border-color:#ffa940!important}.flatpickr-day.flatpickr-disabled:not(.selected):not(.inRange),.flatpickr-day.status-blocked:not(.selected):not(.inRange){background-color:#8c8c8c!important;color:#fff!important;border-color:#8c8c8c!important;pointer-events:none;cursor:default!important}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background-color:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}.flatpickr-day.inRange{background-color:#22222214!important;border-color:transparent!important;box-shadow:none!important;color:#222!important}.history-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:15px;margin-bottom:15px;box-shadow:0 4px 10px #00000008;position:relative;transition:transform .2s}.history-card:active{transform:scale(.98)}.h-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px dashed #eee}.h-id{font-size:.85rem;color:#888;font-weight:500}.h-status{font-size:.75rem;padding:4px 10px;border-radius:20px;font-weight:600}.st-pending{background:#fff7e6;color:#ffa940;border:1px solid #ffe7ba}.st-waiting_payment{background:#e6f7ff;color:#1890ff;border:1px solid #91d5ff}.st-payment_review{background:#fff0f6;color:#c41d7f;border:1px solid #ffadd2}.st-confirmed{background:#f6ffed;color:#52c41a;border:1px solid #b7eb8f}.st-cancelled{background:#f5f5f5;color:#999;border:1px solid #d9d9d9}.h-body{display:flex;justify-content:space-between;align-items:flex-end}.h-date{font-size:.95rem;color:#333;line-height:1.5}.h-price{font-size:1.2rem;font-weight:700;color:#00c853}.nav-btn{background:#00c853;color:#fff;border:2px solid white;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d;cursor:pointer;transition:transform .2s;font-size:1.1rem}.nav-btn:active{transform:scale(.95);background:#00a042}#dateRange{background-color:#fff;border:2px solid #ddd;border-radius:8px;padding:12px;font-size:1rem;color:#000;font-weight:700;cursor:pointer;transition:all .2s;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%2311AA4C'%3E%3Cpath d='M200-80q-33 0-56.5-23.5T120-160v-560q0-33 23.5-56.5T200-800h40v-80h80v80h320v-80h80v80h40q33 0 56.5 23.5T840-720v560q0 33-23.5 56.5T760-80H200Zm0-80h560v-400H200v400Zm0-480h560v-80H200v80Zm0 0v-80 80Zm280 240q-17 0-28.5-11.5T440-440q0-17 11.5-28.5T480-480q17 0 28.5 11.5T520-440q0 17-11.5 28.5T480-400Zm-160 0q-17 0-28.5-11.5T280-440q0-17 11.5-28.5T320-480q17 0 28.5 11.5T360-440q0 17-11.5 28.5T320-400Zm320 0q-17 0-28.5-11.5T600-440q0-17 11.5-28.5T640-480q17 0 28.5 11.5T680-440q0 17-11.5 28.5T640-400ZM480-240q-17 0-28.5-11.5T440-280q0-17 11.5-28.5T480-320q17 0 28.5 11.5T520-280q0 17-11.5 28.5T480-240Zm-160 0q-17 0-28.5-11.5T280-280q0-17 11.5-28.5T320-320q17 0 28.5 11.5T360-280q0 17-11.5 28.5T320-240Zm320 0q-17 0-28.5-11.5T600-280q0-17 11.5-28.5T640-320q17 0 28.5 11.5T680-280q0 17-11.5 28.5T640-240Z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:24px}#dateRange:focus{border-color:#00c853;outline:none;box-shadow:0 0 0 3px #00c8531a}.flatpickr-months{height:60px!important;position:relative!important;z-index:10!important;background:#fff!important;display:flex;align-items:center}.flatpickr-innerContainer{margin-top:20px!important;padding-top:10px!important;position:relative;z-index:1!important}.flatpickr-weekdays{margin-top:0!important;height:30px!important}.flatpickr-current-month{padding-top:5px!important;height:auto!important;font-size:.9rem!important}.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-current-month input.cur-year{font-size:1.1rem!important;font-weight:600!important}span.flatpickr-weekday{font-size:.9rem!important;color:#555!important}.feature-text{display:flex;flex-direction:column;justify-content:center}.feature-text strong{font-size:.95rem;color:#333}.feature-text small{font-size:.75rem;color:#888;margin-top:2px}.description-box{background:#fcfcfc;border-left:4px solid var(--accent);padding:15px 20px;border-radius:4px 12px 12px 4px;font-size:.95rem;line-height:1.7;color:#555;font-style:italic;margin-bottom:20px}
