*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #6366f1;--primary-dark: #4f46e5;--secondary: #64748b;--success: #22c55e;--danger: #ef4444;--warning: #f59e0b;--bg-primary: #f8fafc;--bg-card: #ffffff;--text-primary: #0f172a;--text-secondary: #64748b;--border: #e2e8f0;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -2px rgba(0,0,0,.05);--radius: 12px;--radius-lg: 16px;--transition: all .2s ease}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);min-height:100vh;color:var(--text-primary);line-height:1.6}input[type=text],input[type=email],input[type=password],input[type=tel],input[type=date],input[type=time],textarea,select{width:100%;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;background:var(--bg-card);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}input::placeholder,textarea::placeholder{color:var(--text-secondary);opacity:.7}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.error{color:var(--danger);font-size:12px;margin-top:4px}.password-field{position:relative}.password-field input{padding-right:40px}.password-toggle{position:absolute;right:10px;top:32px;background:none;border:none;cursor:pointer;font-size:16px;opacity:.6;transition:opacity .2s}.password-toggle:hover{opacity:1}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:var(--bg-card);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-md)}.layout{display:flex;min-height:100vh}.sidebar{background:linear-gradient(180deg,#1e1b4b,#312e81);color:#fff;display:flex;flex-direction:column;transition:width .3s ease;position:fixed;height:100vh;z-index:100;box-shadow:4px 0 20px #00000026;overflow:hidden}.sidebar.open{width:260px}.sidebar.collapsed{width:64px}.sidebar-header{padding:16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);min-height:64px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:12px}.logo-btn{display:flex;align-items:center;gap:10px;background:none;border:none;color:#fff;cursor:pointer;padding:8px;border-radius:8px;transition:var(--transition)}.logo-btn:hover{background:#ffffff1a}.logo-icon{font-size:24px}.logo-text{font-size:20px;font-weight:800;background:linear-gradient(135deg,#818cf8,#c084fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:2px;white-space:nowrap}.toggle-btn{background:#ffffff1a;border:none;border-radius:8px;padding:8px 10px;cursor:pointer;color:#fff;font-size:14px;transition:var(--transition);display:flex;align-items:center;justify-content:center}.toggle-btn:hover{background:#fff3}.sidebar.collapsed .toggle-btn{display:none}.sidebar-nav{flex:1;padding:12px;display:flex;flex-direction:column;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px;background:transparent;border:none;color:#ffffffb3;border-radius:10px;cursor:pointer;transition:var(--transition);white-space:nowrap;font-size:14px;font-weight:500;text-align:left;width:100%;text-decoration:none}.sidebar.collapsed .nav-item{justify-content:center;padding:12px}.nav-item:hover{background:#ffffff1a;color:#fff}.nav-item.active{background:linear-gradient(135deg,#6366f14d,#8b5cf64d);color:#fff}.nav-icon{font-size:16px}.sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between}.sidebar.collapsed .sidebar-footer{justify-content:center;padding:16px 12px}.user-avatar-btn{display:flex;align-items:center;gap:10px;background:none;border:none;color:#fff;cursor:pointer;padding:6px;border-radius:8px;transition:var(--transition)}.user-avatar-btn:hover{background:#ffffff1a}.user-avatar{width:36px;height:36px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.user-details{display:flex;flex-direction:column;overflow:hidden;text-align:left}.user-name{font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:#ffffff80;text-transform:capitalize}.logout-btn{background:#ef444433;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:8px 14px;cursor:pointer;color:#fca5a5;font-size:12px;font-weight:500;transition:var(--transition)}.logout-btn:hover{background:#ef44444d;color:#fff}.main-content{flex:1;margin-left:260px;transition:margin-left .3s ease;min-height:100vh;display:flex;flex-direction:column}.main-content.expanded{margin-left:64px}.page-wrapper{flex:1;display:flex;flex-direction:column;gap:24px;padding:24px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.section-header h2{font-size:20px;font-weight:700;color:var(--text-primary)}.rooms-section{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.room-showcase{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.room-card{background:var(--bg-primary);border-radius:var(--radius);overflow:hidden;cursor:pointer;border:2px solid transparent;transition:var(--transition);position:relative}.room-card:hover{border-color:var(--primary)}.room-card.selected{border-color:var(--primary);box-shadow:0 0 0 3px #6366f126}.room-card-expand{position:absolute;top:8px;left:8px;width:28px;height:28px;background:#0009;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;cursor:pointer;z-index:2;transition:var(--transition)}.room-card-expand:hover{background:var(--primary)}.room-image{position:relative;height:100px;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover}.selected-badge{position:absolute;top:8px;right:8px;background:var(--primary);color:#fff;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:600}.room-info{padding:12px}.room-info h3{font-size:13px;font-weight:600;margin-bottom:4px}.room-location{font-size:11px;color:var(--text-secondary);margin-bottom:8px}.room-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--text-secondary)}.room-meta .room-fee{font-weight:700;color:var(--primary);font-size:12px}.booking-section{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.booking-content{display:grid;grid-template-columns:1fr 300px;gap:20px}.booking-main{display:flex;flex-direction:column;gap:16px}.selected-room-display{padding:12px 16px;background:var(--bg-primary);border-radius:8px;font-size:14px;color:var(--text-secondary)}.selected-room-display strong{color:var(--text-primary)}.date-range-picker{display:grid;grid-template-columns:1fr 1fr;gap:16px}.date-picker-group{display:flex;flex-direction:column;gap:8px}.date-picker-group label{font-size:13px;font-weight:600;color:var(--text-primary)}.date-time-row{display:flex;gap:8px}.date-input{flex:1;padding:10px 14px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--bg-card);cursor:pointer}.date-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}.date-mode-toggle{display:flex;gap:8px;margin-bottom:16px}.date-mode-toggle .toggle-btn{flex:1;padding:10px 16px;background:var(--bg-primary);border:2px solid var(--border);border-radius:10px;font-size:13px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:var(--transition)}.date-mode-toggle .toggle-btn:hover{border-color:var(--primary);color:var(--primary)}.date-mode-toggle .toggle-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:var(--primary);color:#fff;box-shadow:0 4px 12px #6366f14d}.time-section{padding:16px;background:var(--bg-primary);border-radius:var(--radius)}.time-section h4{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--text-primary)}.time-slot-picker{width:100%}.time-slots-header{font-size:12px;color:var(--text-secondary);margin-bottom:12px}.time-slots-grid{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto}.time-slots-row{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.time-slot{padding:10px 4px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;font-size:11px;text-align:center;cursor:pointer;transition:var(--transition)}.time-slot:hover:not(.disabled){border-color:var(--primary);background:#6366f10d}.time-slot.selected{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:var(--primary);color:#fff;font-weight:600}.time-slot.start{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:var(--success);color:#fff}.time-slot.disabled{background:#6b72801a;color:var(--secondary);cursor:not-allowed;opacity:.5}.time-slot-picker-grid{background:var(--bg-card);border-radius:var(--radius);padding:12px}.time-grid-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:12px;color:var(--text-secondary)}.time-grid-header .after-start{background:#6366f11a;color:var(--primary);padding:2px 8px;border-radius:4px;font-weight:600}.time-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.time-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 4px;border-radius:8px;cursor:pointer;transition:all .15s ease;border:2px solid transparent;min-height:60px}.time-cell:hover:not(.disabled):not(.booked){transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.time-cell .time-hour{font-size:13px;font-weight:600;margin-bottom:2px}.time-cell .time-status-label{font-size:9px;text-transform:uppercase;letter-spacing:.5px;opacity:.8}.time-cell.available{background:#22c55e1a;color:#16a34a}.time-cell.available:hover{background:#22c55e33;border-color:var(--success)}.time-cell.partial{background:#f59e0b26;color:#d97706}.time-cell.partial:hover{background:#f59e0b40;border-color:var(--warning)}.time-cell.booked{background:#ef444426;color:var(--danger);cursor:not-allowed;opacity:.8}.time-cell.selected{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:var(--primary);box-shadow:0 4px 12px #6366f14d}.time-cell.selected.start{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:var(--success);box-shadow:0 4px 12px #22c55e4d}.time-cell.disabled{opacity:.4;cursor:not-allowed}.time-selection-display,.selection-summary{margin-top:12px;padding:10px 14px;background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border-radius:8px;font-size:13px;font-weight:600;color:var(--primary);text-align:center}.booking-sidebar{position:sticky;top:24px;height:fit-content}.booking-summary{background:var(--bg-primary);border-radius:var(--radius);padding:16px;height:fit-content;border:2px solid transparent;transition:var(--transition)}.booking-summary.coupon-applied{background:linear-gradient(135deg,#22c55e1a,#10a34a1a);border-color:var(--success)}.booking-summary h3{font-size:15px;font-weight:700;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.summary-item{display:flex;justify-content:space-between;padding:6px 0;font-size:13px}.summary-item span{color:var(--text-secondary)}.summary-item strong{font-weight:600}.booking-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.booking-form .form-group{margin-bottom:10px;position:relative}.booking-form input.coupon-active{border-color:var(--success);background:#22c55e0d}.coupon-badge{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:var(--success);color:#fff;padding:2px 8px;border-radius:12px;font-size:10px;font-weight:600}.coupon-input{position:relative}.primary-btn.coupon-btn{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 12px #22c55e4d}.primary-btn.coupon-btn:hover{box-shadow:0 6px 20px #22c55e66}.summary-empty{text-align:center;color:var(--text-secondary);font-size:13px;padding:20px 0}.my-bookings-section{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.bookings-filter{display:flex;gap:8px}.bookings-filter button{padding:8px 14px;background:var(--bg-primary);border:1px solid var(--border);border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;transition:var(--transition);color:var(--text-secondary)}.bookings-filter button:hover{border-color:var(--primary);color:var(--primary)}.bookings-filter button.active{background:var(--primary);border-color:var(--primary);color:#fff}.bookings-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.booking-item{background:var(--bg-primary);border-radius:var(--radius);padding:14px;border:1px solid var(--border)}.booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.booking-header h4{font-size:14px;font-weight:600}.booking-details{font-size:12px;color:var(--text-secondary);line-height:1.7}.status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:10px;font-weight:600;text-transform:capitalize}.status-badge.booked{background:#22c55e1a;color:#16a34a}.status-badge.waiting_for_payment{background:#f59e0b1a;color:#d97706}.status-badge.cancelled{background:#ef44441a;color:var(--danger)}.cancel-form{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.cancel-form input{flex:1;min-width:120px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;font-size:12px}.btn-danger{padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;color:var(--danger);font-size:11px;font-weight:500;cursor:pointer;transition:var(--transition);white-space:nowrap}.btn-danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.error{color:var(--danger);font-size:10px;margin-left:6px;width:100%}.alert{padding:10px 12px;border-radius:8px;font-size:12px;font-weight:500;margin:10px 0}.alert-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#16a34a}.alert-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:var(--danger)}.fee-calculator{background:var(--bg-card);border-radius:8px;padding:12px;margin-bottom:10px}.fee-row{display:flex;justify-content:space-between;padding:4px 0;font-size:12px}.fee-row.total{border-top:1px solid var(--border);margin-top:8px;padding-top:8px;font-weight:700;font-size:14px}.fee-row.coupon{color:var(--success);font-weight:600}.primary-btn{width:100%;padding:12px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 12px #6366f14d}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary);font-size:14px}.toast{position:fixed;bottom:24px;right:24px;padding:14px 24px;border-radius:10px;font-size:14px;font-weight:500;color:#fff;z-index:2000;box-shadow:0 10px 25px #0003;animation:slideIn .3s ease}.toast.success{background:linear-gradient(135deg,#22c55e,#16a34a)}.toast.error{background:linear-gradient(135deg,#ef4444,#dc2626)}@keyframes slideIn{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.footer{background:linear-gradient(180deg,#1e1b4b,#312e81);color:#fff;margin-top:auto}.footer-content{display:flex;gap:32px;padding:40px;align-items:stretch}.footer-image{flex-shrink:0;width:240px}.footer-image img{width:100%;height:160px;object-fit:cover;border-radius:var(--radius)}.footer-info{flex:1;display:flex;flex-direction:column;gap:16px}.footer-brand h3{font-size:20px;font-weight:700;margin-bottom:4px;background:linear-gradient(135deg,#818cf8,#c084fc)}.home-header{margin-bottom:24px}.home-header h1{font-size:28px;color:var(--text-primary);margin-bottom:4px}.home-header p{color:var(--text-secondary)}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.stat-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm)}.stat-icon{font-size:32px;width:56px;height:56px;background:var(--primary-light);border-radius:var(--radius);display:flex;align-items:center;justify-content:center}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:28px;font-weight:700;color:var(--text-primary)}.stat-label{font-size:13px;color:var(--text-secondary)}.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.upcoming-section,.rooms-overview{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{font-size:18px;color:var(--text-primary)}.text-btn{background:none;border:none;color:var(--primary);font-size:13px;cursor:pointer;font-weight:500}.text-btn:hover{text-decoration:underline}.upcoming-list{display:flex;flex-direction:column;gap:12px}.upcoming-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-secondary);border-radius:var(--radius)}.upcoming-room-image{width:48px;height:48px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0}.upcoming-room-image img{width:100%;height:100%;object-fit:cover}.upcoming-info{flex:1}.upcoming-info h4{font-size:14px;color:var(--text-primary);margin-bottom:2px}.upcoming-info p{font-size:12px;color:var(--text-secondary);margin:0}.status-badge{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600}.status-confirmed{background:#d1fae5;color:#065f46}.status-pending{background:#fef3c7;color:#92400e}.empty-state{text-align:center;padding:24px;color:var(--text-secondary)}.empty-state p{margin-bottom:12px}.rooms-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.room-preview-card{background:var(--bg-secondary);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:var(--transition)}.room-preview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.room-preview-image{height:80px;position:relative;overflow:hidden}.room-preview-image img{width:100%;height:100%;object-fit:cover}.exclusive-tag{position:absolute;top:6px;left:6px;background:#8b5cf6e6;color:#fff;padding:2px 6px;border-radius:8px;font-size:10px}.room-preview-info{padding:10px}.room-preview-info h4{font-size:13px;color:var(--text-primary);margin-bottom:2px}.room-preview-info p{font-size:11px;color:var(--text-secondary);margin:0 0 4px}.room-price{font-size:13px;font-weight:700;color:var(--primary)}.room-price.exclusive{color:#8b5cf6}.room-price .per-hour{font-weight:400;font-size:11px}.quick-actions{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.actions-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.action-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;background:var(--bg-secondary);border:1px solid transparent;border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.action-card:hover{border-color:var(--primary);background:var(--primary-light)}.action-icon{font-size:28px}.action-label{font-size:13px;font-weight:500;color:var(--text-primary)}.rooms-filters{display:flex;gap:24px;margin-bottom:24px;padding:16px;background:var(--bg-card);border-radius:var(--radius-lg)}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:13px;color:var(--text-secondary)}.filter-group select{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);font-size:13px}.rooms-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.room-card-detailed{background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm)}.room-card-detailed:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.room-card-image{height:160px;position:relative;overflow:hidden}.room-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.room-card-detailed:hover .room-card-image img{transform:scale(1.05)}.exclusive-tag{position:absolute;top:12px;left:12px;background:#8b5cf6e6;color:#fff;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600}.capacity-badge{position:absolute;bottom:12px;right:12px;background:#000000b3;color:#fff;padding:4px 8px;border-radius:8px;font-size:12px}.room-card-content{padding:16px}.room-card-content h3{font-size:18px;color:var(--text-primary);margin-bottom:4px}.room-location{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.room-description{font-size:13px;color:var(--text-secondary);margin-bottom:12px;line-height:1.4}.room-amenities-preview{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.amenity-pill{background:var(--bg-secondary);padding:3px 8px;border-radius:10px;font-size:11px;color:var(--text-secondary)}.amenity-pill.more{background:var(--primary-light);color:var(--primary)}.room-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border)}.room-price{font-size:16px;font-weight:700;color:var(--primary)}.room-price.exclusive{color:#8b5cf6;font-size:13px}.view-btn{background:none;border:none;color:var(--primary);font-size:13px;font-weight:500;cursor:pointer}.view-btn:hover{text-decoration:underline}.back-btn{background:var(--bg-card);border:1px solid var(--border);padding:8px 16px;border-radius:var(--radius);color:var(--text-primary);font-size:13px;cursor:pointer;margin-bottom:20px;display:inline-flex;align-items:center;gap:6px}.back-btn:hover{background:var(--bg-secondary)}.room-detail-grid{display:grid;grid-template-columns:1fr 380px;gap:24px}.room-detail-main{background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden}.room-detail-carousel{height:300px;position:relative;overflow:hidden}.room-detail-carousel img{width:100%;height:100%;object-fit:cover}.room-detail-info{padding:24px}.room-detail-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.room-detail-header h1{font-size:24px;color:var(--text-primary)}.room-meta-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.meta-tag{background:var(--bg-secondary);padding:6px 12px;border-radius:16px;font-size:13px;color:var(--text-secondary)}.meta-tag.exclusive{background:#8b5cf61a;color:#8b5cf6}.room-description{margin-bottom:20px}.room-description h3,.room-amenities h3,.room-availability h3{font-size:16px;color:var(--text-primary);margin-bottom:8px}.room-description p{font-size:14px;color:var(--text-secondary);line-height:1.6}.room-amenities{margin-bottom:20px}.amenities-grid{display:flex;flex-wrap:wrap;gap:8px}.amenity-tag{background:var(--primary-light);color:var(--primary);padding:6px 12px;border-radius:16px;font-size:13px}.room-availability p{font-size:13px;color:var(--text-secondary);margin:4px 0}.room-detail-booking{display:flex;flex-direction:column;gap:20px}.booking-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.booking-card h3{font-size:18px;color:var(--text-primary);margin-bottom:16px}.booking-card .form-group{margin-bottom:16px}.booking-card label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:6px}.booking-card textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);font-size:13px;resize:vertical}.booking-card textarea:focus{outline:none;border-color:var(--primary)}.coupon-section{margin-bottom:16px}.coupon-input{display:flex;gap:8px}.coupon-input input{flex:1;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);font-size:13px}.coupon-input button{padding:10px 16px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:13px;cursor:pointer}.coupon-success{display:block;color:#059669;font-size:12px;margin-top:6px}.booking-summary{background:var(--bg-secondary);border-radius:var(--radius);padding:12px;margin-bottom:16px}.booking-summary h4{font-size:13px;color:var(--text-primary);margin-bottom:8px}.summary-row{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary);margin-bottom:4px}.summary-row.total{font-weight:700;color:var(--text-primary);font-size:14px;padding-top:8px;border-top:1px solid var(--border);margin-top:8px}.my-bookings-mini{background:var(--bg-card);border-radius:var(--radius-lg);padding:16px;box-shadow:var(--shadow-sm)}.my-bookings-mini h3{font-size:14px;color:var(--text-primary);margin-bottom:12px}.mini-bookings-list{display:flex;flex-direction:column;gap:8px}.mini-booking-item{display:flex;justify-content:space-between;align-items:center;padding:8px;background:var(--bg-secondary);border-radius:var(--radius)}.mini-booking-info{display:flex;flex-direction:column;gap:2px}.mini-date{font-size:12px;font-weight:500;color:var(--text-primary)}.mini-time{font-size:11px;color:var(--text-secondary)}.mini-status{font-size:10px;padding:2px 6px;border-radius:8px;text-transform:capitalize}.mini-status.booked{background:#d1fae5;color:#065f46}.mini-status.waiting_for_payment{background:#fef3c7;color:#92400e}.btn-small-danger{padding:4px 8px;background:#fee2e2;color:#dc2626;border:none;border-radius:var(--radius-sm);font-size:11px;cursor:pointer}.btn-small-danger:hover{background:#fecaca}-webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .footer-brand p{font-size:12px;opacity:.7}.footer-contact{display:flex;flex-direction:column;gap:10px}.footer-item{display:flex;align-items:center;gap:10px;font-size:13px;opacity:.9}.footer-icon{font-size:14px}.footer-bottom{padding:16px 40px;border-top:1px solid rgba(255,255,255,.1);text-align:center;font-size:12px;opacity:.6}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:999}.room-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:400px;background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;z-index:1000;box-shadow:0 25px 50px #00000040}.modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;background:#000000b3;border:none;border-radius:50%;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition);z-index:1}.modal-image{height:180px;overflow:hidden;position:relative}.modal-image img{width:100%;height:100%;object-fit:cover}.modal-image.carousel{height:220px}.modal-image.carousel img{transition:opacity .3s ease}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;background:#0009;border:none;border-radius:50%;color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition);z-index:2}.carousel-btn:hover{background:#000c}.carousel-prev{left:10px}.carousel-next{right:10px}.carousel-dots{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:2}.carousel-dot{width:8px;height:8px;border-radius:50%;background:#ffffff80;cursor:pointer;transition:var(--transition)}.carousel-dot.active{background:#fff}.modal-content{padding:20px}.modal-content h2{font-size:18px;margin-bottom:8px}.modal-content p{margin-bottom:6px;color:var(--text-secondary);font-size:13px}.modal-content .fee{font-size:16px;font-weight:700;color:var(--primary);margin-bottom:16px}.modal-content .exclusive-badge{font-size:14px;font-weight:700;color:#8b5cf6;margin-bottom:16px}.section-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.section-card h3{font-size:16px;font-weight:700;margin-bottom:16px}.admin-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.admin-tabs button{padding:10px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition);color:var(--text-secondary)}.admin-tabs button:hover{border-color:var(--primary);color:var(--primary)}.admin-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px;padding:14px;background:var(--bg-primary);border-radius:var(--radius)}.filters select,.filters input{padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:12px;background:var(--bg-card);color:var(--text-primary);transition:var(--transition)}.filters select:focus,.filters input:focus{outline:none;border-color:var(--primary)}.filters .primary-btn{padding:8px 16px;width:auto}.admin-actions{display:flex;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.status-select{padding:8px 12px;border:1px solid var(--border);border-radius:8px;font-size:12px;background:var(--bg-card);cursor:pointer}.coupon-form{max-width:400px}.coupon-display{padding:12px 16px;background:var(--bg-primary);border-radius:8px;font-family:monospace;font-size:16px;letter-spacing:2px;color:var(--primary);font-weight:600}.calendar{background:var(--bg-card);border-radius:var(--radius);padding:12px;margin-bottom:12px}.calendar.compact{padding:8px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.calendar-header button{background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;padding:4px 8px;cursor:pointer;font-size:12px;transition:var(--transition)}.calendar-header button:hover{border-color:var(--primary);color:var(--primary)}.calendar-title{font-size:14px;font-weight:700;color:var(--text-primary)}.calendar-legend{display:flex;gap:12px;margin-bottom:8px;font-size:10px;color:var(--text-secondary)}.legend-item{display:flex;align-items:center;gap:3px}.dot{width:6px;height:6px;border-radius:50%}.dot.green{background:var(--success)}.dot.yellow{background:var(--warning)}.dot.gray{background:var(--secondary)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px}.weekday{text-align:center;font-size:10px;font-weight:600;color:var(--text-secondary);padding:4px 0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;transition:var(--transition);font-size:11px;font-weight:500;border:2px solid transparent;padding:2px}.calendar-day.empty{cursor:default}.calendar-day.available{background:#22c55e1a;color:#16a34a}.calendar-day.partial{background:#f59e0b26;color:#d97706}.calendar-day.occupied{background:#ef444426;color:var(--danger)}.calendar-day:hover:not(.past):not(.empty){border-color:var(--primary)}.calendar-day.selected{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px #6366f14d}.calendar-day.today{border-color:var(--primary)}.calendar-day.past{background:#6b728014;color:var(--secondary);opacity:.5;cursor:not-allowed}.calendar-day.range-day{background:#6366f126;border-radius:0}.calendar-day.range-start{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:6px 0 0 6px}.calendar-day.range-end{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:0 6px 6px 0}.datetime-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.datetime-group{display:flex;flex-direction:column;gap:6px}.datetime-group label{font-size:12px;font-weight:600;color:var(--text-primary)}.datetime-inputs{display:flex;gap:6px}.datetime-inputs input[type=date],.datetime-inputs input[type=time]{flex:1;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:13px;background:var(--bg-card)}.datetime-inputs input:focus{outline:none;border-color:var(--primary)}.datetime-inputs input.time-unavailable{border-color:var(--danger);background:#ef44440d}.datetime-inputs input.time-available{border-color:var(--success)}.time-status{font-size:10px;padding:2px 6px;border-radius:4px;margin-left:6px;font-weight:600}.time-status.unavailable{background:#ef44441a;color:var(--danger)}.booking-start-end{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-start,.booking-end{background:var(--bg-primary);border-radius:var(--radius);padding:14px}.booking-start h4,.booking-end h4{font-size:13px;font-weight:700;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:6px}.booking-end h4 .day-badge{background:var(--primary);color:#fff;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600}@media (max-width: 1024px){.booking-content{grid-template-columns:1fr}.footer-content{flex-direction:column;padding:32px 24px}.footer-image{width:100%}.date-range-picker{grid-template-columns:1fr}}@media (max-width: 768px){.sidebar{width:260px;transform:translate(0)}.sidebar.collapsed{width:260px;transform:translate(-100%)}.main-content{margin-left:0}.page-wrapper{padding:16px;gap:16px}.section-header{flex-direction:column;align-items:flex-start}.room-showcase{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.room-image{height:80px}.room-info h3{font-size:12px}.bookings-filter{flex-wrap:wrap}.bookings-list{grid-template-columns:1fr}.footer-content{padding:24px 16px}.footer-image{display:none}.toast{left:16px;right:16px;bottom:16px;text-align:center}.time-slots-row{grid-template-columns:repeat(4,1fr)}}.admin-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:24px}.admin-stat-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-sm)}.admin-stat-card .stat-icon{font-size:28px;width:50px;height:50px;background:var(--primary-light);border-radius:var(--radius);display:flex;align-items:center;justify-content:center}.admin-stat-card.pending .stat-icon{background:#fef3c7}.admin-stat-card.revenue .stat-icon{background:#d1fae5}.admin-stat-card .stat-details{display:flex;flex-direction:column}.admin-stat-card .stat-value{font-size:24px;font-weight:700;color:var(--text-primary)}.admin-stat-card .stat-label{font-size:12px;color:var(--text-secondary)}.alert-banner{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#78350f;padding:12px 20px;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.alert-banner button{background:#78350f;color:#fff;border:none;padding:8px 16px;border-radius:var(--radius);cursor:pointer;font-weight:500}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.dash-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.dash-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dash-card-header h3{font-size:16px;color:var(--text-primary)}.dash-badge{background:var(--bg-secondary);padding:4px 10px;border-radius:12px;font-size:12px;color:var(--text-secondary)}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:10px;background:var(--bg-secondary);border-radius:var(--radius)}.activity-icon{font-size:20px}.activity-info{flex:1;display:flex;flex-direction:column}.activity-title{font-size:13px;color:var(--text-primary);font-weight:500}.activity-meta{font-size:11px;color:var(--text-secondary)}.schedule-list{display:flex;flex-direction:column;gap:10px}.schedule-item{display:flex;align-items:center;gap:12px;padding:10px;background:var(--bg-secondary);border-radius:var(--radius)}.schedule-time{display:flex;flex-direction:column;align-items:center;min-width:70px;font-size:12px;font-weight:600;color:var(--primary)}.schedule-end{font-size:10px;font-weight:400;color:var(--text-secondary)}.schedule-info{flex:1;display:flex;flex-direction:column}.schedule-room{font-size:13px;font-weight:500;color:var(--text-primary)}.schedule-user{font-size:11px;color:var(--text-secondary)}.room-stats{display:flex;flex-direction:column;gap:12px}.room-stat-item{display:flex;align-items:center;gap:12px}.room-stat-item img{width:50px;height:40px;object-fit:cover;border-radius:var(--radius-sm)}.room-stat-info{flex:1}.room-stat-name{font-size:13px;font-weight:500;color:var(--text-primary);display:block;margin-bottom:4px}.room-stat-bar{height:6px;background:var(--bg-secondary);border-radius:3px;margin-bottom:4px}.room-stat-fill{height:100%;background:var(--primary);border-radius:3px;transition:width .3s ease}.room-stat-meta{font-size:10px;color:var(--text-secondary)}.coupon-stats{display:flex;flex-direction:column;align-items:center;gap:12px;padding:12px}.coupon-stat{display:flex;flex-direction:column;align-items:center}.coupon-code{font-size:24px;font-weight:700;color:var(--primary);letter-spacing:2px}.coupon-value{font-size:32px;font-weight:700;color:var(--text-primary)}.coupon-label{font-size:12px;color:var(--text-secondary)}.admin-section{background:var(--bg-card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-sm)}.count-badge{background:var(--primary);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.filters-bar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.filters-bar select,.filters-bar input{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);font-size:13px}.bookings-table{overflow-x:auto}.bookings-table table{width:100%;border-collapse:collapse}.bookings-table th,.bookings-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.bookings-table th{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.bookings-table td{font-size:13px;color:var(--text-primary)}.table-room{display:flex;align-items:center;gap:10px}.table-room img{width:40px;height:30px;object-fit:cover;border-radius:var(--radius-sm)}.table-user{display:flex;flex-direction:column}.table-user .user-name{font-weight:500}.table-user .user-email{font-size:11px;color:var(--text-secondary)}.action-buttons{display:flex;gap:8px}.btn-approve{background:#d1fae5;color:#065f46;border:none;padding:6px 12px;border-radius:var(--radius);font-size:12px;cursor:pointer;font-weight:500}.btn-approve:hover{background:#a7f3d0}.btn-reject{background:#fee2e2;color:#dc2626;border:none;padding:6px 12px;border-radius:var(--radius);font-size:12px;cursor:pointer;font-weight:500}.btn-reject:hover{background:#fecaca}.pending-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.pending-card{background:var(--bg-secondary);border-radius:var(--radius);padding:16px}.pending-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.pending-header img{width:60px;height:45px;object-fit:cover;border-radius:var(--radius-sm)}.pending-info{flex:1}.pending-info h4{font-size:14px;color:var(--text-primary);margin-bottom:2px}.pending-info p{font-size:11px;color:var(--text-secondary);margin:0}.pending-details{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.pending-detail{display:flex;flex-direction:column}.pending-detail .label{font-size:10px;color:var(--text-secondary);text-transform:uppercase}.pending-detail .value{font-size:12px;color:var(--text-primary)}.pending-actions{display:flex;gap:8px}.admin-rooms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.admin-room-card{background:var(--bg-secondary);border-radius:var(--radius);overflow:hidden}.admin-room-card img{width:100%;height:120px;object-fit:cover}.admin-room-info{padding:12px}.admin-room-info h4{font-size:14px;color:var(--text-primary);margin-bottom:4px}.admin-room-info p{font-size:11px;color:var(--text-secondary);margin:2px 0}.admin-room-info .exclusive-badge{display:inline-block;background:#8b5cf61a;color:#8b5cf6;padding:2px 8px;border-radius:8px;font-size:10px;margin:4px 0}.admin-room-info .room-fee{font-weight:600;color:var(--primary)}.admin-room-stats{display:flex;justify-content:space-between;padding:8px 12px;background:var(--bg-card);font-size:10px;color:var(--text-secondary)}.users-list{display:flex;flex-direction:column;gap:12px}.user-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-secondary);border-radius:var(--radius)}.user-avatar-lg{width:48px;height:48px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600}.user-card .user-info{flex:1}.user-card .user-info h4{font-size:14px;color:var(--text-primary);margin-bottom:2px}.user-card .user-info p{font-size:12px;color:var(--text-secondary);margin:0 0 4px}.role-badge{display:inline-block;padding:2px 8px;border-radius:8px;font-size:10px;font-weight:500}.role-badge.admin{background:#8b5cf61a;color:#8b5cf6}.role-badge.employee{background:var(--primary-light);color:var(--primary)}.user-stats{font-size:12px;color:var(--text-secondary)}.coupon-card{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.coupon-current{background:var(--bg-secondary);padding:24px;border-radius:var(--radius);text-align:center}.coupon-current h3{font-size:14px;color:var(--text-secondary);margin-bottom:12px}.coupon-display-lg{font-size:36px;font-weight:700;color:var(--primary);letter-spacing:4px;margin-bottom:8px}.coupon-usage{font-size:12px;color:var(--text-secondary)}.coupon-form{background:var(--bg-secondary);padding:24px;border-radius:var(--radius)}.coupon-form h3{font-size:14px;color:var(--text-primary);margin-bottom:12px}.coupon-form input{width:100%;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);color:var(--text-primary);font-size:16px;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.coupon-form .primary-btn{width:100%}.coupon-info-card{background:var(--bg-secondary);padding:20px;border-radius:var(--radius)}.coupon-info-card h3{font-size:14px;color:var(--text-primary);margin-bottom:12px}.coupon-info-card ul{margin:0;padding-left:20px}.coupon-info-card li{font-size:13px;color:var(--text-secondary);margin-bottom:6px}.empty-text{text-align:center;padding:24px;color:var(--text-secondary);font-size:13px}.nav-badge{background:#dc2626;color:#fff;font-size:10px;padding:2px 6px;border-radius:10px;margin-left:auto}@media (max-width: 480px){.room-showcase{grid-template-columns:repeat(2,1fr)}.time-slots-row{grid-template-columns:repeat(3,1fr)}}.profile-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:360px;background:var(--bg-card);border-radius:var(--radius-lg);padding:24px;z-index:1000;box-shadow:0 25px 50px #00000040;text-align:center}.profile-header{margin-bottom:20px}.profile-avatar{width:72px;height:72px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:600;margin:0 auto 12px}.profile-header h2{font-size:20px;color:var(--text-primary);margin-bottom:4px}.profile-role{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.profile-role.admin{background:#8b5cf61a;color:#8b5cf6}.profile-role.employee{background:var(--primary-light);color:var(--primary)}.profile-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:var(--radius)}.profile-detail{display:flex;justify-content:space-between;align-items:center}.profile-detail .label{font-size:12px;color:var(--text-secondary)}.profile-detail .value{font-size:13px;color:var(--text-primary);font-weight:500}.profile-stats{display:flex;justify-content:center;gap:32px;margin-bottom:20px}.profile-stat{display:flex;flex-direction:column;align-items:center}.profile-stat .stat-value{font-size:24px;font-weight:700;color:var(--text-primary)}.profile-stat .stat-label{font-size:11px;color:var(--text-secondary)}.logout-btn.full-width{width:100%;padding:12px;background:#fee2e2;color:#dc2626;border:none;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition)}.logout-btn.full-width:hover{background:#fecaca}.book-room-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px}.booking-content form{display:flex;flex-direction:column;gap:16px}.selected-room-display{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--primary-light);border-radius:var(--radius)}.selected-room-display span{font-weight:600;color:var(--primary)}.btn-text{background:none;border:none;color:var(--primary);font-size:13px;cursor:pointer;text-decoration:underline}.date-mode-toggle{display:flex;gap:8px}.date-mode-toggle button{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:var(--transition)}.date-mode-toggle button.active{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.my-bookings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.my-bookings-header h1{font-size:24px;color:var(--text-primary);margin-bottom:4px}.my-bookings-header p{color:var(--text-secondary);font-size:14px}.booking-stats-mini{display:flex;gap:20px}.booking-stats-mini span{font-size:13px;color:var(--text-secondary)}.booking-stats-mini strong{color:var(--text-primary);margin-right:4px}.bookings-list-detailed{display:flex;flex-direction:column;gap:16px}.booking-card-detailed{display:flex;background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.booking-card-image{width:180px;flex-shrink:0}.booking-card-image img{width:100%;height:100%;object-fit:cover}.booking-card-content{flex:1;padding:16px}.booking-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.booking-card-header h3{font-size:16px;color:var(--text-primary)}.booking-card-details{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.detail-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.detail-icon{width:20px;text-align:center}.booking-card-actions{display:flex;gap:8px;align-items:center;padding-top:12px;border-top:1px solid var(--border)}.booking-card-actions input{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);font-size:13px}.static-page{max-width:800px;margin:0 auto}.static-page h1{font-size:28px;color:var(--text-primary);margin-bottom:8px}.page-intro{color:var(--text-secondary);margin-bottom:32px}.manual-section-page{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border)}.manual-section-page:last-child{border-bottom:none}.manual-section-page h2{font-size:18px;color:var(--primary);margin-bottom:12px}.manual-section-page p{color:var(--text-secondary);line-height:1.6;margin-bottom:12px}.manual-section-page ol,.manual-section-page ul{padding-left:24px;color:var(--text-secondary)}.manual-section-page li{margin-bottom:8px;line-height:1.5}.room-card-expand{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#0009;border:none;border-radius:50%;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition);z-index:1}.room-card:hover .room-card-expand{opacity:1}.room-card-expand:hover{background:#000c}.room-fee.exclusive{color:#8b5cf6;font-size:12px}
