@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap";:root{--sat: env(safe-area-inset-top, 0px);--sar: env(safe-area-inset-right, 0px);--sab: env(safe-area-inset-bottom, 0px);--sal: env(safe-area-inset-left, 0px);--brand: #12b7e6;--brand-dark: #0a8ec9;--brand-light: #e8f9ff;--surface: #ffffff;--bg: #f7f7f7;--bg-hover: #f0f0f0;--border: #dddddd;--border-focus: #12b7e6;--text-1: #0a1830;--text-2: #3f5678;--text-3: #8aa0bf;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 50px;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 2px 16px rgba(0,0,0,.12);--shadow-lg: 0 4px 32px rgba(0,0,0,.16);--shadow-card: 0 2px 8px rgba(0,0,0,.1);--shadow-card-hover: 0 6px 24px rgba(0,0,0,.16);--nav-h: 80px;--nav-search-desktop-h: 74px;--nav-search-mobile-h: 0px;--mob-cats-h: 0px;--offer-mobile-cta-h: 76px;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;touch-action:manipulation}body{font-family:Poppins,sans-serif;background-color:var(--bg);color:var(--text-1);overflow-x:hidden;min-height:100vh;line-height:1.5;touch-action:manipulation}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}#root input[type=text],#root input[type=email],#root input[type=tel],#root input[type=number],#root input[type=password],#root input[type=search],#root input[type=url],#root input[type=date],#root input[type=time],#root input[type=datetime-local],#root input[type=month],#root input[type=week],#root input:not([type]),#root textarea,#root select,#root [contenteditable=true],input[type=text],input[type=email],input[type=tel],input[type=number],input[type=password],input[type=search],input[type=url],input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week],input:not([type]),textarea,select,[contenteditable=true]{font-size:16px!important;-webkit-text-size-adjust:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#999}.container{max-width:1280px;margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}@media(max-width:600px){.container{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}}.page-wrapper{padding-top:calc(var(--sat) + var(--nav-h) + var(--nav-search-desktop-h));padding-bottom:env(safe-area-inset-bottom,0px)}@media(max-width:768px){.page-wrapper{padding-top:calc(var(--sat) + var(--nav-h) + var(--nav-search-mobile-h, 0px) + var(--mob-cats-h))}}.toast-container{position:fixed;bottom:max(1.25rem,env(safe-area-inset-bottom,0px));right:max(1.25rem,env(safe-area-inset-right,0px));z-index:10050;display:flex;flex-direction:column;gap:.5rem;max-width:min(420px,calc(100vw - 2rem));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-radius:12px;box-shadow:0 10px 40px #00000026;font-size:.9rem;line-height:1.4;animation:toastIn .25s ease}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast--info{background:#1e293b;color:#f8fafc}.toast--success{background:#065f46;color:#ecfdf5}.toast--error{background:#991b1b;color:#fef2f2}.toast-dismiss{background:transparent;border:none;color:inherit;opacity:.8;cursor:pointer;font-size:1.25rem;line-height:1;padding:0 0 0 .5rem}.bw-overlay{position:fixed;inset:0;z-index:10040;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:flex-end;animation:bwFadeIn .2s ease}@keyframes bwFadeIn{0%{opacity:0}to{opacity:1}}.bw-panel{width:min(560px,100vw);max-height:100vh;background:#fff;display:flex;flex-direction:column;box-shadow:-12px 0 48px #0000001f;animation:bwSlideIn .28s ease}@keyframes bwSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@media(max-width:640px){.bw-overlay{align-items:flex-end}.bw-panel{width:100%;max-height:92vh;border-radius:16px 16px 0 0;animation:bwSlideUp .28s ease}@keyframes bwSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.bw-header{flex-shrink:0;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.bw-title{margin:0;font-size:1.15rem;font-weight:700;color:#0f172a;line-height:1.3}.bw-sub{margin:.25rem 0 0;font-size:.85rem;color:#64748b}.bw-close{flex-shrink:0;width:40px;height:40px;border:none;border-radius:10px;background:#f1f5f9;color:#334155;font-size:1.5rem;line-height:1;cursor:pointer}.bw-close:hover{background:#e2e8f0}.bw-progress{display:flex;gap:.5rem;padding:.75rem 1.25rem 0}.bw-progress-step{flex:1;height:4px;border-radius:999px;background:#e2e8f0}.bw-progress-step.active{background:linear-gradient(90deg,#0ea5e9,#6366f1)}.bw-progress-labels{display:flex;justify-content:space-between;padding:.35rem 1.25rem .75rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.bw-progress-labels span.active{color:#6366f1;font-weight:600}.bw-body{flex:1;overflow-y:auto;padding:1rem 1.25rem 1.5rem}.bw-footer{flex-shrink:0;padding:1rem 1.25rem;border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;background:#fafafa}.bw-btn{padding:.65rem 1.25rem;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;border:none;transition:background .15s,color .15s}.bw-btn:disabled{opacity:.55;cursor:not-allowed}.bw-btn-secondary{background:#fff;color:#334155;border:1px solid #cbd5e1}.bw-btn-secondary:hover:not(:disabled){background:#f8fafc}.bw-btn-primary{background:linear-gradient(135deg,#0ea5e9,#6366f1);color:#fff}.bw-btn-primary:hover:not(:disabled){filter:brightness(1.05)}.bw-field-grid{display:grid;gap:1rem}.bw-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:480px){.bw-row-2{grid-template-columns:1fr}}.bw-label{display:block;font-size:.8rem;font-weight:600;color:#475569;margin-bottom:.35rem}.bw-input,.bw-select,.bw-textarea{width:100%;padding:.55rem .75rem;border-radius:8px;border:1px solid #cbd5e1;font-size:.95rem}.bw-textarea{min-height:80px;resize:vertical}.bw-stepper{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0}.bw-stepper button{width:36px;height:36px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:1.2rem;cursor:pointer}.bw-stepper button:disabled{opacity:.4;cursor:not-allowed}.bw-stepper span{font-weight:700;font-size:1.1rem;min-width:2rem;text-align:center}.bw-room-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:.5rem;background:#fafafa}.bw-room-meta{display:flex;flex-direction:column;gap:.15rem}.bw-room-name{font-weight:600;color:#0f172a;text-transform:capitalize}.bw-room-sub{font-size:.8rem;color:#64748b}.bw-room-controls{display:flex;align-items:center;gap:.5rem}.bw-room-controls button{width:32px;height:32px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;cursor:pointer;font-size:1.1rem}.bw-room-controls button:disabled{opacity:.35;cursor:not-allowed}.bw-capacity{margin-top:.5rem;padding:.5rem .75rem;border-radius:8px;font-size:.85rem;font-weight:600}.bw-capacity.ok{background:#ecfdf5;color:#065f46}.bw-capacity.bad{background:#fef2f2;color:#991b1b}.bw-price-banner{margin-top:1rem;padding:1rem;border-radius:12px;background:linear-gradient(135deg,#f0f9ff,#eef2ff);display:flex;justify-content:space-between;align-items:center}.bw-price-banner--stack{flex-direction:column;align-items:stretch;gap:.75rem}.bw-price-banner-total{display:flex;justify-content:space-between;align-items:center;padding-top:.35rem;border-top:1px solid rgba(148,163,184,.45)}.bw-price-banner strong{font-size:1.25rem;color:#0f172a}.bw-price-breakdown{width:100%;text-align:left}.bw-price-breakdown-title{margin:0 0 .5rem;font-size:.8rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.03em}.bw-price-breakdown-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.bw-price-breakdown-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;font-size:.88rem;line-height:1.35}.bw-price-breakdown-label{color:#334155;flex:1;min-width:0}.bw-price-breakdown-amt{flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:600;color:#0f172a}.bw-price-breakdown-foot{margin:.6rem 0 0;font-size:.75rem;line-height:1.4;color:#64748b}.bw-error{color:#b91c1c;font-size:.8rem;margin-top:.25rem}.bw-radio-group label{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;cursor:pointer;font-size:.9rem}.bw-radio-group input{margin-top:.2rem}.bw-accordion{border:1px solid #e2e8f0;border-radius:12px;margin-bottom:.5rem;overflow:hidden}.bw-accordion-head{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8fafc;border:none;cursor:pointer;font-weight:600;text-align:left}.bw-accordion-body{padding:1rem;border-top:1px solid #e2e8f0}.bw-success{text-align:center;padding:2rem 1rem}.bw-success-icon{width:64px;height:64px;margin:0 auto 1rem;border-radius:50%;background:#ecfdf5;color:#059669;font-size:2rem;display:flex;align-items:center;justify-content:center}.bw-ref{font-size:1.5rem;font-weight:800;letter-spacing:.08em;color:#0f172a;margin:.5rem 0}.bw-success-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.25rem}.bw-muted{font-size:.85rem;color:#64748b}.bw-step-intro{margin-bottom:.25rem}.bw-step-title{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;color:#0f172a}.bw-step-sub{margin:0;line-height:1.45}.bw-guest-simple{display:grid;gap:.5rem;border:1px solid #e2e8f0;border-radius:12px;padding:.75rem 1rem;background:#fafafa}.bw-guest-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.95rem}.bw-total-line{margin:.5rem 0 0}.bw-rooms-simple{display:grid;gap:.5rem}.bw-manual-rooms{margin-top:.35rem}.bw-room-hint{font-size:.85rem;margin-bottom:.5rem}.bw-auto-room-summary{margin-top:.35rem;padding:.75rem 1rem;border-radius:12px;background:#f0f9ff;border:1px solid #bae6fd}.bw-room-summary-list{margin:.5rem 0;padding-left:1.25rem;font-size:.9rem;color:#0f172a;line-height:1.5}.bw-link-btn{background:none;border:none;color:#2563eb;font-weight:600;cursor:pointer;text-decoration:underline;padding:.25rem 0;font-size:.9rem;font-family:inherit}.bw-link-btn:hover{color:#1d4ed8}.bw-review-card{border:1px solid #e2e8f0;border-radius:12px;padding:1rem;background:#fafafa}.bw-review-card .bw-price-breakdown{margin-top:.35rem;padding-top:.75rem;border-top:1px solid #e2e8f0}.bw-review-card .bw-price-breakdown-foot{margin-bottom:0}.bw-review-total{border-bottom:none!important;font-weight:700;padding-top:.65rem!important;margin-top:.35rem;border-top:1px solid #e2e8f0!important}.bw-review-row{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid #f1f5f9;font-size:.9rem}.bw-allocation-row{flex-direction:column;align-items:stretch;gap:.65rem}.bw-occ-row{display:flex;flex-direction:column;gap:.35rem}.bw-shared-intro{margin:0 0 .75rem;line-height:1.45;font-size:.9rem}.bw-sharing-assignments{margin-top:.5rem}.bw-sharing-row{border:1px solid var(--border-2, #e2e8f0);border-radius:12px;padding:.75rem 1rem;margin-bottom:.65rem;background:var(--surface, #f8fafc)}.bw-sharing-row-title{display:block;font-weight:600;font-size:.88rem;margin-bottom:.5rem;color:var(--text-1, #0f172a)}.bw-sharing-segment{display:inline-flex;border-radius:10px;overflow:hidden;border:1px solid var(--border-2, #e2e8f0);background:#fff}.bw-sharing-segment button{border:none;background:transparent;padding:.45rem .9rem;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--text-2, #475569);font-family:inherit}.bw-sharing-segment button.is-active{background:var(--brand, #0ea5e9);color:#fff}.bw-sharing-segment--single{opacity:.95}.bw-sharing-segment--single button:disabled{cursor:default;opacity:1}.bw-sharing-hint{margin:.45rem 0 0;font-size:.8rem;line-height:1.4}.navbar{position:fixed;top:0;left:0;right:0;z-index:1050;background:linear-gradient(180deg,#fff,#f8fdff);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s;padding-top:var(--sat)}.navbar.scrolled{border-bottom-color:#d8edf8;box-shadow:0 4px 18px #0c7bad1f}.nav-inner{position:relative;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:8px;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));padding-top:0;padding-bottom:0;height:var(--nav-h);max-width:1400px;margin:0 auto;min-width:0}.nav-logo{flex-shrink:0;display:flex;align-items:center;margin-right:0}.nav-logo img{display:block}.nav-logo-wordmark{height:42px;width:auto;object-fit:contain}.nav-logo-icon-wrap{display:none;width:36px;height:36px;border-radius:12px;overflow:hidden}.nav-logo-icon{width:142px;height:36px;object-fit:cover;object-position:left center}.nav-links{position:static;display:flex;align-items:stretch;gap:0;flex:0 0 auto;height:var(--nav-h);margin-inline:auto}.nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:0 14px;font-size:11px;font-weight:600;color:var(--text-2);text-decoration:none;text-transform:uppercase;letter-spacing:.3px;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;white-space:nowrap}.nav-link-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;transform:translateY(0);transition:transform .2s ease,filter .2s ease;animation:navIconFloat 3.6s ease-in-out infinite}.nav-link:hover .nav-link-icon,.nav-link.active .nav-link-icon{transform:translateY(-2px) scale(1.04);filter:saturate(1.1)}.nav-link-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.nav-link:hover{color:var(--text-1);border-bottom-color:var(--border)}.nav-link.active{color:var(--brand-dark);border-bottom-color:var(--brand)}.nav-desktop-search{position:fixed;top:calc(var(--sat) + var(--nav-h));left:0;right:0;z-index:999;padding:12px 0 10px;background:transparent}.nav-desktop-search-inner{max-width:1280px;margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px));padding-top:0;padding-bottom:0;display:flex;justify-content:center}.nav-utility{flex-shrink:0;display:flex;flex-wrap:nowrap;align-items:center;gap:8px;margin-left:0;min-width:0}.nav-icon-chip{width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-1);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:border-color .15s,background .15s}.nav-icon-chip:hover{background:#edf8ff;border-color:#9fdcf0}.nav-icon-chip svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.nav-phone-chip{height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-1);display:inline-flex;align-items:center;gap:8px;padding:0 12px;text-decoration:none;font-size:15px;font-weight:600;white-space:nowrap;transition:border-color .15s,background .15s}.nav-phone-chip:hover{background:#edf8ff;border-color:#9fdcf0}.nav-phone-chip-icon{display:inline-flex;align-items:center;justify-content:center}.nav-phone-chip-icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.nav-phone-chip-text{line-height:1}.nav-auth{flex-shrink:0;display:flex;align-items:center;gap:10px;margin-left:10px}.nav-action-link{font-size:14px;font-weight:500;color:var(--text-2);text-decoration:none;padding:8px 10px;border-radius:var(--radius-sm);transition:color .15s,background .15s;white-space:nowrap}.nav-action-link:hover{color:var(--text-1);background:var(--bg-hover)}.nav-action-btn{display:inline-flex;align-items:center;height:40px;padding:0 16px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);font-size:14px;font-weight:500;color:var(--text-1);text-decoration:none;cursor:pointer;font-family:inherit;transition:box-shadow .2s;white-space:nowrap}.nav-action-btn:hover{box-shadow:var(--shadow-sm)}.nav-action-btn.primary{background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;border-color:var(--brand)}.nav-action-btn.primary:hover{background:var(--brand-dark)}.nav-logout-btn{font-size:13px;font-weight:500;color:var(--text-2);background:transparent;border:none;cursor:pointer;padding:6px 10px;border-radius:var(--radius-sm);font-family:inherit;transition:color .15s,background .15s;white-space:nowrap}.nav-logout-btn:hover{color:var(--danger);background:#fef2f2}.nav-hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;background:transparent;border:none;cursor:pointer;flex-shrink:0;margin-left:8px}.nav-hamburger span{display:block;width:100%;height:2px;background:var(--text-1);border-radius:2px;transition:transform .25s,opacity .25s;transform-origin:center}.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile-search{display:none;position:fixed;top:calc(var(--sat) + var(--nav-h));left:0;right:0;z-index:1002;padding:10px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface)}.nav-mobile-search-inner{max-width:1280px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-top:0;padding-bottom:0;min-width:0}.nav-mobile-search-inner>.global-search-bar{width:100%;min-width:0}.language-switcher-nav-slot{display:contents}.nav-content-offset{height:calc(var(--sat) + var(--nav-h) + var(--nav-search-desktop-h))}.drawer-overlay{position:fixed;inset:0;background:#00000073;z-index:1100;opacity:0;pointer-events:none;transition:opacity .25s}.drawer-overlay.active{opacity:1;pointer-events:auto}.nav-drawer{position:fixed;top:0;right:0;bottom:0;width:min(320px,85vw);background:var(--surface);z-index:1200;display:flex;flex-direction:column;transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-lg);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.nav-drawer.open{transform:translate(0)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.drawer-logo img{height:36px;width:auto}.drawer-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg);border:1px solid var(--border);border-radius:50%;cursor:pointer;color:var(--text-1);transition:background .15s}.drawer-close:hover{background:var(--bg-hover)}.drawer-nav{flex:1;display:flex;flex-direction:column;padding:12px 8px;overflow-y:auto}.drawer-link{display:block;padding:13px 16px;font-size:15px;font-weight:500;color:var(--text-1);text-decoration:none;border-radius:var(--radius-sm);transition:background .15s,color .15s}.drawer-link:hover{background:var(--bg-hover)}.drawer-link.active{color:var(--brand-dark);background:var(--brand-light)}.drawer-footer{border-top:1px solid var(--border);padding:16px 20px;display:flex;flex-direction:column;gap:12px}.drawer-auth{display:flex;flex-direction:column;gap:8px}.drawer-auth-btn{display:flex;align-items:center;justify-content:center;height:44px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;font-family:inherit;text-decoration:none;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-1);transition:background .15s}.drawer-auth-btn:hover{background:var(--bg-hover)}.drawer-auth-btn.primary{background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;border-color:var(--brand)}.drawer-auth-btn.primary:hover{background:var(--brand-dark)}.drawer-auth-btn.secondary{color:var(--danger);border-color:var(--danger)}.drawer-auth-btn.secondary:hover{background:#fef2f2}.nav-mob-cats{display:none;background:var(--surface);border-bottom:1px solid var(--border)}.nav-mob-cat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;text-decoration:none;color:var(--text-2);border-bottom:2px solid transparent;transition:color .15s,border-color .15s;white-space:nowrap}.nav-mob-cat:hover{color:var(--text-1)}.nav-mob-cat.active{color:var(--brand-dark);border-bottom-color:var(--brand)}.nav-mob-cat-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;animation:navIconFloat 3.6s ease-in-out infinite}.nav-mob-cat:hover .nav-mob-cat-icon,.nav-mob-cat.active .nav-mob-cat-icon{transform:translateY(-2px)}.twemoji-icon{width:100%;height:100%;object-fit:contain;display:block}@keyframes navIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}.nav-mob-cat-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.3px}@media(max-width:1077px){.nav-links,.nav-auth{display:none}.nav-hamburger{display:flex}.nav-inner{gap:6px}.nav-utility{margin-left:0;gap:6px}.nav-icon-chip,.nav-phone-chip,.lang-trigger,.nav-hamburger{height:36px}.nav-icon-chip{width:36px;border-radius:9px;font-size:16px}.nav-phone-chip{padding:0 9px;font-size:12px;gap:6px;border-radius:9px}.nav-phone-chip-icon{width:14px;height:14px}}@media(max-width:1077px){:root{--nav-h: 56px;--nav-search-mobile-h: 82px;--nav-search-desktop-h: 0px;--mob-cats-h: 62px}.nav-inner{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-top:0;padding-bottom:0;height:var(--nav-h)}.nav-logo{margin-right:auto}.nav-logo img{height:32px}.nav-logo-wordmark{display:none}.nav-logo-icon-wrap{display:block}.nav-utility{max-width:calc(100vw - 108px);flex-shrink:1}.nav-phone-chip-text{max-width:72px;overflow:hidden;text-overflow:ellipsis}.nav-desktop-search{display:none}.nav-mobile-search{display:block;box-sizing:border-box;min-height:var(--nav-search-mobile-h);overflow:visible}.nav-content-offset{height:calc(var(--sat) + var(--nav-h) + var(--nav-search-mobile-h) + var(--mob-cats-h))}.nav-mobile-search:has(.global-search-bar--mobile.mobile-dates-open)~.nav-content-offset{height:calc(var(--sat) + var(--nav-h) + var(--nav-search-mobile-h) + 188px + var(--mob-cats-h))}.nav-mob-cats{display:flex;position:fixed;top:calc(var(--sat) + var(--nav-h) + var(--nav-search-mobile-h));left:0;right:0;z-index:997}.nav-mobile-search:has(.global-search-bar--mobile.mobile-dates-open)~.nav-mob-cats{top:calc(var(--sat) + var(--nav-h) + var(--nav-search-mobile-h) + 188px)}}@media(min-width:1078px)and (max-width:1200px){.nav-desktop-search-inner{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}}.language-switcher{position:relative;display:inline-flex;flex-shrink:0;z-index:2147483640}.language-switcher.open{z-index:2147483646}.lang-trigger{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:6px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-1);cursor:pointer;font-size:13px;font-weight:600;line-height:1.1;white-space:nowrap;transition:all .18s ease}.lang-trigger:hover{background:var(--bg-hover);border-color:var(--text-2)}.lang-flag{font-size:15px;line-height:1}.lang-code{letter-spacing:.02em}.lang-chevron{font-size:11px;opacity:.85;transform:translateY(1px);transition:transform .18s ease}.language-switcher.open .lang-chevron{transform:translateY(1px) rotate(180deg)}.lang-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:2147483647;width:170px;border-radius:12px;border:1px solid #d1d5db;background:#fff;box-shadow:0 14px 36px #0f172a40;padding:6px}[dir=rtl] .lang-menu{right:auto;left:0}.lang-option{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;border:0;border-radius:9px;background:transparent;color:#111827;text-align:left;cursor:pointer;transition:background-color .14s ease}.lang-option:hover{background:#f3f4f6}.lang-option.active{background:#e8f1ff;color:#1d4ed8}.lang-option-label{flex:1;font-size:13px;font-weight:600}.lang-option-code{font-size:11px;opacity:.8;font-weight:700}@media(max-width:900px){.lang-trigger{min-height:36px;height:36px;padding:6px 8px;gap:6px;border-radius:9px}.lang-code{display:none}.lang-chevron{font-size:10px}.lang-menu{right:0;left:auto}}.auth-page .language-switcher{position:absolute;top:20px;right:20px;z-index:2147483647;background:#ffffffdb;padding:8px;border-radius:10px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}[dir=rtl] .auth-page .language-switcher{right:auto;left:20px}.loc-ac{position:relative;width:100%}.loc-ac-input{width:100%;box-sizing:border-box}.loc-ac-list{position:absolute;left:0;right:0;top:100%;margin:4px 0 0;padding:4px 0;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:220px;overflow-y:auto;z-index:50}.loc-ac-li{list-style:none;margin:0;padding:0}.loc-ac-li-active .loc-ac-item{background:var(--bg-hover)}.loc-ac-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;padding:10px 14px;border:none;background:transparent;font-size:15px;color:var(--text-1);cursor:pointer;font-family:inherit}.loc-ac-item-primary{display:block;font-weight:500;line-height:1.3}.loc-ac-item-sub{display:block;font-size:12px;color:var(--text-3, #64748b);line-height:1.2}.loc-ac-item:hover{background:var(--bg-hover)}.loc-ac-muted{color:var(--text-3);cursor:default;padding:10px 14px}.global-search-bar{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 8px;margin:0;box-shadow:var(--shadow-md)}.global-search-row{display:flex;align-items:center;gap:0;min-width:0}.global-search-row-inline{width:100%}.global-search-row:last-child{margin-bottom:0}.global-search-field{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:2px;padding:4px 14px}.global-search-field-destination{flex:1.7 1 auto;min-width:0}.global-search-label{font-size:10px;font-weight:600;color:var(--text-2)}.global-search-input,.global-search-bar .loc-ac-input{width:100%;box-sizing:border-box;min-width:0;height:38px;padding:0 12px;border:none;border-radius:10px;font-size:13px;font-family:inherit;color:var(--text-1);background:transparent;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.global-search-input[type=date]{overflow:visible;text-overflow:clip;min-width:9.25rem;padding-right:30px}.global-search-input:focus,.global-search-bar .loc-ac-input:focus{outline:none;background:var(--brand-light)}.global-search-submit{flex:0 0 auto;height:40px;min-width:40px;padding:0 14px;border:none;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--brand),var(--brand-dark));color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 18px #2563eb40}.global-search-submit:hover{transform:translateY(-1px)}.global-search-submit-icon{display:inline-flex}.global-search-submit-text{display:inline}.global-search-actions{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:8px;flex:0 0 auto;min-width:min-content}.global-search-filters-btn{flex:0 0 auto;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-pill);background:#fff;color:var(--text-1);font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.global-search-filters-count{flex-shrink:0;box-sizing:border-box;min-width:22px;height:22px;border-radius:999px;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;padding:0 6px;font-variant-numeric:tabular-nums}.global-search-filters-count--inactive{visibility:hidden;pointer-events:none}.global-search-input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.global-search-bar--desktop{margin:0;width:min(100%,760px);border-radius:999px;border-color:#e7e7e7;box-shadow:0 2px 10px #00000014}.global-search-bar--desktop .global-search-field:not(.global-search-field-destination){border-left:1px solid var(--border)}.global-search-bar--desktop .global-search-field{flex:1 1 0;min-width:0}.global-search-bar--desktop .global-search-field-destination{flex:1.25 1 0;min-width:0}.global-search-bar--desktop .global-search-label{white-space:nowrap}.global-search-bar--desktop input[type=date]{min-width:7.5rem;min-height:34px}.global-search-bar--desktop .loc-ac-list{margin-top:8px;border-radius:14px;z-index:1200}.global-search-bar--desktop .global-search-row-inline{display:flex;flex-wrap:nowrap;align-items:center;gap:4px 8px;min-width:0}.global-search-bar--mobile{border-radius:999px;padding:6px 8px;margin:0;box-shadow:0 1px 8px #00000014;position:relative;z-index:1003}.global-search-bar--mobile.mobile-dates-open{border-radius:18px;padding:8px;box-shadow:0 14px 28px #0f172a24}.global-search-bar--mobile .global-search-row-inline{flex-wrap:nowrap;gap:8px;align-items:center}.global-search-bar--mobile .global-search-field{padding:0}.global-search-bar--mobile .global-search-field-destination{flex:1 1 auto;min-width:0}.global-search-bar--mobile.mobile-dates-open .global-search-field-destination{border:1px solid var(--border);border-radius:12px;padding:0 10px}.global-search-bar--mobile .global-search-field-destination .global-search-label{display:none}.global-search-bar--mobile .global-search-field-destination .loc-ac-input{height:42px;border-radius:999px;background:transparent;padding-left:34px}.global-search-bar--mobile .global-search-field-destination{position:relative}.global-search-bar--mobile .global-search-field-destination:before{content:"";position:absolute;left:12px;top:50%;width:14px;height:14px;transform:translateY(-50%);border:2px solid #444;border-radius:50%;pointer-events:none}.global-search-bar--mobile .global-search-field-destination:after{content:"";position:absolute;left:24px;top:calc(50% + 4px);width:6px;height:2px;background:#444;transform:rotate(45deg);border-radius:2px;pointer-events:none}.global-search-bar--mobile .global-search-submit{width:100%;height:46px;border-radius:14px}.global-search-bar--mobile .global-search-filters-btn{width:100%;height:44px;margin-top:10px;border-radius:12px;justify-content:center}.global-search-bar--mobile .global-search-filters-btn-mobile-inline{width:auto;min-width:44px;height:42px;margin-top:0;border-radius:999px;padding:0 12px;white-space:nowrap;flex:0 0 auto}.global-search-bar--mobile .global-search-submit-text{display:inline}.global-search-mobile-panel{max-height:0;opacity:0;transform:translateY(-10px);margin-top:0;padding:0;border:1px solid transparent;border-radius:16px;overflow:hidden;pointer-events:none;background:transparent;box-shadow:0 0 #0000;transition:max-height .28s ease,opacity .22s ease,transform .24s ease,margin-top .24s ease,padding .24s ease,border-color .24s ease,box-shadow .24s ease,background-color .24s ease}.global-search-mobile-panel.open{max-height:260px;opacity:1;transform:translateY(0);margin-top:8px;padding:10px 0 0;border-color:transparent;pointer-events:auto;background:transparent;box-shadow:none}.global-search-mobile-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.global-search-mobile-panel .global-search-field{border:1px solid var(--border);border-radius:12px;padding:8px 10px;background:#fff}.global-search-mobile-panel .global-search-label{font-size:11px}.global-search-mobile-panel .global-search-submit{margin-top:10px}.filters-dialog-backdrop{position:fixed;inset:0;background:#0f172a6b;z-index:1500;display:flex;align-items:center;justify-content:center;padding:16px}.filters-dialog{width:min(760px,100%);max-height:min(84vh,760px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 22px 46px #0f172a42;border:1px solid #e8edf7}.filters-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #edf1f7}.filters-dialog-header h3{margin:0;display:inline-flex;align-items:center;gap:8px;font-size:16px}.filters-dialog-close{width:34px;height:34px;border:1px solid #d7dce8;border-radius:50%;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.filters-dialog-body{padding:16px 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filters-field{display:flex;flex-direction:column;gap:6px}.filters-field-price-range{grid-column:1 / -1}.filters-price-values{display:flex;justify-content:space-between;font-size:13px;color:var(--text-1)}.filters-range-wrap{position:relative;height:34px;display:flex;align-items:center}.filters-range-wrap input[type=range]{position:absolute;left:0;right:0;width:100%;margin:0;pointer-events:none;background:transparent;appearance:none}.filters-range-wrap input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#dbe4f3}.filters-range-wrap input[type=range]::-webkit-slider-thumb{appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;border:2px solid #fff;background:var(--brand);box-shadow:0 1px 4px #0f172a40;pointer-events:auto;cursor:pointer}.filters-range-wrap input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:#dbe4f3}.filters-range-wrap input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;border:2px solid #fff;background:var(--brand);box-shadow:0 1px 4px #0f172a40;pointer-events:auto;cursor:pointer}.filters-field span{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2);font-weight:600}.filters-field input,.filters-field select{height:40px;border:1px solid #d7dce8;border-radius:10px;padding:0 10px;font-size:13px}.filters-field-checkbox{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;border:1px solid #d7dce8;border-radius:10px;padding:10px 12px}.filters-field-checkbox input{width:18px;height:18px}.filters-field-amenities .filters-amenities-grid{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-top:.35rem}.filters-amenity-chip{display:inline-flex;align-items:center;gap:.35rem;margin:0;font-weight:400;font-size:.9rem}.filters-dialog-actions{padding:14px 18px 16px;border-top:1px solid #edf1f7;display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:#fff}.filters-clear-btn,.filters-apply-btn{height:38px;border-radius:10px;font-size:13px;font-weight:600;padding:0 14px;cursor:pointer}.filters-clear-btn{border:1px solid #d7dce8;background:#fff}.filters-apply-btn{border:none;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand-dark))}@media(max-width:560px){.global-search-mobile-panel-grid{grid-template-columns:1fr}}@media(max-width:1150px){.global-search-bar--desktop .global-search-label{font-size:10px}.global-search-bar--desktop .global-search-input,.global-search-bar--desktop .loc-ac-input{font-size:13px}}@media(max-width:1280px){.global-search-bar--desktop{width:100%;max-width:100%;border-radius:18px}.global-search-bar--desktop .global-search-row-inline{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:6px 8px;padding-bottom:2px}.global-search-bar--desktop .global-search-field-destination{flex:1 0 8rem;border-bottom:none;padding-bottom:4px;margin-bottom:0}.global-search-bar--desktop .global-search-field:not(.global-search-field-destination){flex:0 0 auto;min-width:0}.global-search-bar--desktop .global-search-actions{flex:0 0 auto;flex-shrink:0}.global-search-bar--desktop .global-search-submit{min-width:0;padding:0 10px}.global-search-bar--desktop .global-search-filters-btn{padding:0 10px}.global-search-bar--desktop input[type=date]{min-width:7rem}}@media(max-width:520px){.global-search-bar--desktop .global-search-row-inline{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;align-items:center}.global-search-bar--desktop .global-search-field:not(.global-search-field-destination){flex:0 0 auto;border-left:1px solid var(--border);border-bottom:none;padding-bottom:4px}.global-search-bar--desktop .global-search-field:nth-of-type(2){border-left:none;padding-left:4px}.global-search-bar--desktop .global-search-actions{flex:0 0 auto;margin-top:0;width:auto}.global-search-bar--desktop .global-search-actions .global-search-submit,.global-search-bar--desktop .global-search-actions .global-search-filters-btn{flex:0 0 auto;min-width:0}}@media(max-width:768px){.global-search-bar{border-radius:12px;padding:6px}.global-search-bar--mobile .global-search-submit-icon{display:none}.filters-dialog-backdrop{align-items:flex-end;padding:0}.filters-dialog{width:100%;max-height:90vh;border-radius:20px 20px 0 0;border-bottom:none;padding-bottom:env(safe-area-inset-bottom,0px)}.filters-dialog-body{grid-template-columns:1fr}}.home{min-height:100vh}.home-global-search{padding-top:16px;padding-bottom:8px}.h-content{padding-top:32px;padding-bottom:48px}.h-section{margin-bottom:48px}.h-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.h-section-titles{display:flex;flex-direction:column;gap:2px}.h-section-title{font-size:22px;font-weight:700;color:var(--text-1);line-height:1.2}.h-section-subtitle{font-size:13px;color:var(--text-2);margin-top:2px}.h-section-link{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-1);text-decoration:none;transition:box-shadow .2s;margin-top:2px}.h-section-link:hover{box-shadow:var(--shadow-sm)}.h-carousel-wrap{position:relative}.h-carousel-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 2px 16px}.h-carousel-track::-webkit-scrollbar{display:none}.h-carousel-arrow{position:absolute;top:38%;transform:translateY(-50%);z-index:10;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-1);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm);cursor:pointer;transition:box-shadow .2s}.h-carousel-arrow:hover{box-shadow:var(--shadow-md)}.h-carousel-arrow.left{left:-18px}.h-carousel-arrow.right{right:-18px}.h-empty{color:var(--text-2);font-size:14px;padding:24px 0}.h-card{flex:0 0 calc(25% - 12px);min-width:220px;scroll-snap-align:start;text-decoration:none;color:var(--text-1);display:flex;flex-direction:column}.h-card-img-wrap{position:relative;aspect-ratio:1 / 1;overflow:hidden;border-radius:var(--radius-md);background:var(--bg)}.h-card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.h-card:hover .h-card-img-wrap img{transform:scale(1.04)}.h-card-fav-badge{position:absolute;top:12px;left:12px;background:var(--surface);color:var(--text-1);font-size:11px;font-weight:700;padding:4px 10px;border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);letter-spacing:.2px}.h-card-body{padding:10px 2px 4px;display:flex;flex-direction:column;gap:2px}.h-card-title{font-size:14px;font-weight:600;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.h-card-sub{font-size:13px;color:var(--text-2)}.h-card-stars{color:#f59e0b}.h-card-date{font-size:12px;color:var(--text-2)}.h-card-price{font-size:14px;color:var(--text-1);margin-top:2px}.h-card-price strong{font-weight:700}.h-card-price-label{font-size:12px;color:var(--text-2)}.h-card-skeleton{flex:0 0 calc(25% - 12px);min-width:220px;height:300px;border-radius:var(--radius-md);background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.h-payment-card{margin:8px 0 20px;border-radius:18px;background:#f8fbff;color:var(--text-1);overflow:hidden;display:grid;grid-template-columns:150px 1fr;min-height:150px;border:1px solid #d7e4f5;box-shadow:0 10px 24px #0f172a14}.h-payment-visual{position:relative;display:flex;align-items:flex-end;justify-content:flex-start;padding:12px 0 0 10px}.h-payment-visual img{width:140px;height:auto;object-fit:contain;transform:translate(-10px,16px)}.h-payment-content{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:20px 20px 20px 8px}.h-payment-content h3{font-size:22px;line-height:1.2;font-weight:700;margin:0}.h-payment-content p{margin:0;font-size:14px;line-height:1.5;color:var(--text-2)}.h-footer{background:#f8fbff;border-top:1px solid #d7e4f5;color:var(--text-1);padding:34px 0 0}.h-footer-inner{padding-bottom:24px}.h-footer-main{display:grid;grid-template-columns:1.1fr 1fr .8fr;gap:28px}.h-footer-block h3{margin:0 0 12px;font-size:22px;font-weight:700;line-height:1.2;color:var(--text-1)}.h-footer-block p{margin:0;color:var(--text-2);font-size:14px;line-height:1.6}.h-footer-contact-list{display:flex;flex-direction:column;gap:14px}.h-footer-contact-item{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.h-footer-contact-icon{width:44px;height:44px;border-radius:12px;background:#19a5eb;display:grid;place-items:center;color:#fff;font-size:22px;flex-shrink:0}.h-footer-contact-text{display:flex;flex-direction:column;gap:4px}.h-footer-contact-text small{font-size:13px;color:var(--text-2)}.h-footer-contact-text strong{font-size:18px;line-height:1.25;color:#23a9ef}.h-footer-socials{display:flex;gap:14px}.h-footer-socials a{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:22px;font-weight:700;text-decoration:none;color:#23a9ef;background:#23a9ef14;border:1px solid rgba(35,169,239,.2)}.h-footer-bottom{border-top:1px solid #d7e4f5;padding:18px 24px 24px;display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center}.h-footer-bottom-copy p{font-size:13px;color:var(--text-2)}.h-footer-bottom-links{display:flex;gap:22px}.h-footer-bottom-links a{color:#23a9ef;font-size:13px;text-decoration:underline}.h-footer-bottom-brand strong{font-size:20px;color:#23a9ef;font-weight:800}@media(max-width:1100px){.h-card,.h-card-skeleton{flex:0 0 calc(33.33% - 11px)}}@media(max-width:768px){.h-section-title{font-size:19px}.h-section-subtitle{font-size:13px}.h-carousel-arrow{display:none}.h-card,.h-card-skeleton{flex:0 0 calc(50% - 8px);min-width:160px}.h-footer-main{grid-template-columns:1fr;gap:24px}.h-footer-block h3{font-size:22px}.h-footer-block p{font-size:14px}.h-footer-contact-text small{font-size:13px}.h-footer-contact-text strong{font-size:18px}.h-footer-bottom{grid-template-columns:1fr;justify-items:start;gap:16px}.h-footer-bottom-links{flex-direction:column;gap:10px}.h-payment-card{grid-template-columns:110px 1fr;min-height:126px;border-radius:16px}.h-payment-visual img{width:108px;transform:translate(-8px,12px)}.h-payment-content{padding:16px 16px 16px 2px}.h-payment-content h3{font-size:18px}.h-payment-content p{font-size:13px}}@media(max-width:600px){.h-content{padding-top:20px;padding-left:0;padding-right:0}.h-section{margin-bottom:32px}.h-section-header{padding:0 16px;margin-bottom:12px}.h-section-title{font-size:18px;font-weight:700}.h-carousel-track{padding:4px 16px 16px;gap:12px;scroll-padding-left:16px}.h-card{flex:0 0 72vw;min-width:unset}.h-card-skeleton{flex:0 0 72vw;min-width:unset;height:280px}.h-card-img-wrap{aspect-ratio:4 / 3;border-radius:var(--radius-md)}.h-card-title,.h-card-price{font-size:14px}.h-footer{padding:24px 0 0}.h-footer-inner{padding:0 16px 18px;gap:0}.h-footer-main{gap:22px}.h-footer-block h3{font-size:22px;margin-bottom:10px}.h-footer-block p{font-size:14px;line-height:1.5}.h-footer-contact-icon{width:36px;height:36px;font-size:18px;border-radius:10px}.h-footer-contact-text small{font-size:13px}.h-footer-contact-text strong{font-size:28px}.h-footer-socials a{width:38px;height:38px;font-size:18px;border-radius:10px}.h-footer-bottom{padding:14px 16px 18px;gap:12px}.h-footer-bottom-copy p,.h-footer-bottom-links a{font-size:13px}.h-footer-bottom-brand strong{font-size:24px}.h-payment-card{margin:4px 16px 18px;grid-template-columns:90px 1fr;min-height:112px;border-radius:14px}.h-payment-visual{padding:8px 0 0 6px}.h-payment-visual img{width:92px;transform:translate(-5px,10px)}.h-payment-content{padding:14px 12px 14px 0;gap:4px}.h-payment-content h3{font-size:16px;font-weight:700}.h-payment-content p{font-size:13px;line-height:1.35}}.contact-page{min-height:100vh}.contact-hero{height:400px;background:linear-gradient(#000000b3,#000000b3),url(https://images.unsplash.com/photo-1497366216548-37526070297c?ixlib=rb-4.0.3&auto=format&fit=crop&w=2070&q=80);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center}.Contact-Title{color:#f8f9fa}.Contact-Title:hover{color:#e74c3c}.hero-overlay{color:#fff;max-width:800px;padding:2rem}.hero-overlay h1{font-size:3.5rem;margin-bottom:1rem;font-weight:700}.hero-overlay p{font-size:1.2rem;opacity:.9}.contact-content{padding:4rem 2rem;background:#f8f9fa}.contact-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem}.contact-info{display:flex;flex-direction:column;gap:3rem}.info-section h2,.map-section h2,.contact-form-card h2{font-size:2.2rem;color:#2c3e50;margin-bottom:1.5rem}.info-section p{color:#666;line-height:1.6;margin-bottom:2rem}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.contact-item{display:flex;gap:1.25rem;align-items:center;background:#fff;padding:1.5rem;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid #f1f5f9}.contact-icon{font-size:1.5rem;background:#790303;color:#fff;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-item h3{font-size:1rem;color:#1e293b;margin-bottom:.25rem;font-weight:700}.contact-item p{color:#64748b;margin:0;font-size:.9rem;font-weight:500}.map-section{margin-top:1rem}.map-placeholder{height:300px;background:linear-gradient(#00000080,#00000080),url(https://images.unsplash.com/photo-1512917774080-9991f1c4c750?ixlib=rb-4.0.3&auto=format&fit=crop&w=2070&q=80);background-size:cover;background-position:center;border-radius:10px;position:relative;display:flex;align-items:center;justify-content:center}.map-overlay{color:#fff;text-align:center;padding:2rem;background:#000000b3;border-radius:10px}.map-overlay p{margin:.5rem 0;font-size:1.1rem}.contact-form-section{display:flex;align-items:flex-start}.contact-form-card{background:#fff;padding:2.5rem;border-radius:15px;box-shadow:0 5px 20px #00000014;width:100%}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.95rem;color:#2c3e50;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{padding:.9rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s ease;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#e74c3c}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23666' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{padding:1.25rem 2.5rem;background:#790303;color:#fff;border:none;border-radius:14px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);margin-top:1rem;box-shadow:0 10px 15px -3px #7903034d}.submit-btn:hover{background:#a30404;transform:translateY(-3px);box-shadow:0 20px 25px -5px #79030366}@media(max-width:1024px){.contact-container{grid-template-columns:1fr;gap:3rem}.contact-details{grid-template-columns:1fr 1fr}}@media(max-width:768px){.contact-hero{height:300px}.hero-overlay h1{font-size:2.5rem}.contact-content{padding:3rem 1.5rem}.contact-details{grid-template-columns:1fr;gap:1rem}.info-section h2,.map-section h2,.contact-form-card h2{font-size:2rem;letter-spacing:-.5px}.contact-form-card{padding:2rem;border-radius:20px}.submit-btn{width:100%}}@media(max-width:480px){.hero-overlay h1{font-size:2rem}.contact-form-card{padding:1.5rem}}.offers-page{min-height:100vh;padding-top:0;background:var(--bg)}.offers-page-header{background:var(--surface);border-bottom:1px solid var(--border);padding:24px 24px 0;max-width:1280px;margin:0 auto}.offers-page-title{font-size:28px;font-weight:700;color:var(--text-1);margin-bottom:4px}.offers-page-subtitle{font-size:15px;color:var(--text-2);margin-bottom:0}.filters-section{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:calc(var(--nav-h) + var(--nav-search-desktop-h) + 16px);z-index:90;padding:14px 0;margin-top:16px}.filters-container{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.search-filters-bar{display:flex;gap:10px;flex:1;flex-wrap:wrap}.search-input-group{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-pill);padding:0 16px;height:44px;flex:1;min-width:160px;transition:border-color .2s,box-shadow .2s}.search-input-group:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-light)}.search-icon{color:var(--text-2);font-size:15px;flex-shrink:0}.filter-search-input,.filter-date-input{border:none;outline:none;background:transparent;font-size:14px;color:var(--text-1);width:100%;font-family:inherit}.filter-search-input::placeholder,.filter-date-input::placeholder{color:var(--text-3)}.sort-select,.filter-select{height:44px;padding:0 36px 0 16px;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface);font-size:14px;font-family:inherit;color:var(--text-1);cursor:pointer;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23717171' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;min-width:140px;transition:border-color .2s}.sort-select:focus,.filter-select:focus{border-color:var(--brand)}.results-info{max-width:1280px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.results-info p{font-size:14px;color:var(--text-2)}.filter-controls,.sort-options{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.offers-content{max-width:1280px;margin:0 auto;padding:24px 24px 48px}.offers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px}.offer-card{background:var(--surface);border-radius:var(--radius-md);overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer;display:flex;flex-direction:column;text-decoration:none;color:var(--text-1)}.offer-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.offer-image{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--bg)}.offer-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.offer-card:hover .offer-image img{transform:scale(1.04)}.offer-badge,.featured-badge{position:absolute;top:12px;left:12px;background:var(--brand);color:#fff;font-size:11px;font-weight:700;padding:4px 12px;border-radius:var(--radius-pill);letter-spacing:.3px;z-index:1}.featured-badge{background:#f59e0b}.trip-type-badge,.type-badge{position:absolute;top:12px;right:12px;background:#0000008c;color:#fff;font-size:11px;font-weight:600;padding:4px 10px;border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.offer-content{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}.offer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.offer-title{font-size:15px;font-weight:600;color:var(--text-1);margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.offer-stars{display:flex;align-items:center;gap:3px;font-size:12px;color:#f59e0b;flex-shrink:0}.stars-count{color:var(--text-2)}.offer-location{font-size:13px;color:var(--text-2);display:flex;align-items:center;gap:4px}.location-icon{font-size:12px}.offer-details,.offer-details-row{display:flex;gap:12px;flex-wrap:wrap}.detail-item{display:flex;flex-direction:column;gap:2px}.detail-label{font-size:11px;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px}.detail-value{font-size:13px;font-weight:500;color:var(--text-1)}.detail-value.available{color:var(--success)}.detail-value.unavailable{color:var(--danger)}.detail-value.detail-multi-dates{color:var(--brand, #2563eb);font-weight:600}.offer-description{font-size:13px;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.offer-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.offer-price{display:flex;flex-direction:column;gap:2px;min-width:0}.price-amount{font-size:16px;font-weight:700;color:var(--text-1);white-space:nowrap}.price-label{font-size:12px;color:var(--text-2)}.offer-actions{display:flex;gap:8px;align-items:center}.details-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 20px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-pill);font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s;white-space:nowrap;flex-shrink:0;font-family:inherit}.details-btn:hover{background:var(--brand-dark)}.ticket-dates{display:flex;flex-direction:column;gap:4px}.date-item{display:flex;gap:6px;align-items:center;font-size:13px}.date-label{color:var(--text-2)}.date-value{color:var(--text-1);font-weight:500}.offers-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 0}.offers-loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.offers-error{text-align:center;padding:60px 0;color:var(--text-2)}.offers-retry-btn,.reset-btn{margin-top:12px;padding:10px 24px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-pill);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}.offers-retry-btn:hover,.reset-btn:hover{background:var(--brand-dark)}.no-results{grid-column:1 / -1;text-align:center;padding:60px 0;color:var(--text-2)}.no-results h3{font-size:18px;margin-bottom:8px;color:var(--text-1)}@media(max-width:1077px){.filters-section{top:calc(var(--nav-h) + var(--nav-search-mobile-h) + var(--mob-cats-h) + 6px);margin-top:0}}@media(max-width:768px){.offers-page{padding-top:0}.filters-container{gap:8px;padding:0 16px}.search-filters-bar{flex-direction:column;gap:8px}.search-input-group{min-width:unset}.offers-content{padding:16px 16px 80px}.offers-grid{grid-template-columns:repeat(2,1fr);gap:16px}.offer-title{font-size:13px}.price-amount{font-size:14px}.details-btn{padding:8px 14px;font-size:12px}.results-info{padding:10px 16px}}@media(max-width:480px){.offers-grid{grid-template-columns:1fr}}.offer-view-page{min-height:100vh;background:var(--bg);padding-top:0}.offer-view-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:120px 0}.offer-view-spinner{width:44px;height:44px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.offer-view-error{text-align:center;padding:100px 24px}.offer-view-error h2{font-size:22px;color:var(--text-1);margin-bottom:12px}.offer-view-error p{color:var(--text-2)}.offer-gallery{max-width:1280px;margin:0 auto;padding:24px 24px 0}.offer-gallery-grid{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:240px 240px;gap:8px;border-radius:var(--radius-lg);overflow:hidden}.gallery-main{grid-row:1 / 3;overflow:hidden}.gallery-thumb{overflow:hidden;position:relative}.gallery-main img,.gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-main:hover img,.gallery-thumb:hover img{transform:scale(1.03)}.gallery-single{grid-column:1 / -1;height:400px;overflow:hidden;border-radius:var(--radius-lg)}.gallery-single img{width:100%;height:100%;object-fit:cover}.offer-view-container{max-width:1280px;margin:0 auto;padding:32px 24px 60px;display:grid;grid-template-columns:1fr 380px;gap:48px;align-items:start}.offer-view-main{min-width:0}.offer-view-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.offer-view-title{font-size:28px;font-weight:700;color:var(--text-1);line-height:1.2}.offer-stars{display:flex;gap:3px;color:#f59e0b;font-size:18px;flex-shrink:0}.offer-view-location{font-size:15px;color:var(--text-2);margin-bottom:20px;display:flex;align-items:center;gap:5px}.offer-stats-row{display:flex;gap:12px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:24px}.stat-pill{display:flex;flex-direction:column;gap:4px;padding:12px 20px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);min-width:100px}.stat-label{font-size:11px;color:var(--text-2);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:15px;font-weight:600;color:var(--text-1)}.offer-section{padding:24px 0;border-bottom:1px solid var(--border)}.offer-section:last-child{border-bottom:none}.offer-section-title{font-size:20px;font-weight:700;color:var(--text-1);margin-bottom:16px}.offer-description-text{font-size:15px;line-height:1.7;color:var(--text-1);white-space:pre-line}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.amenity-item{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-1)}.amenity-icon{font-size:18px;flex-shrink:0}.rooms-list{display:flex;flex-direction:column;gap:12px}.room-item{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);gap:12px}.room-info{flex:1}.room-name{font-size:15px;font-weight:600;color:var(--text-1);text-transform:capitalize}.room-capacity{font-size:13px;color:var(--text-2);margin-top:2px}.room-price-col{text-align:right;min-width:110px}.room-price{font-size:16px;font-weight:700;color:var(--text-1);white-space:nowrap}.room-price-label{font-size:11px;color:var(--text-3);margin-top:1px}.room-cap-badge{display:inline-block;margin-left:6px;font-size:11px;font-weight:500;background:var(--surface-2, #f0f0f0);color:var(--text-2);border-radius:4px;padding:1px 5px}.room-availability{font-size:12px;color:var(--success);font-weight:500;margin-top:2px}.room-unavailable{color:var(--danger)}.offer-view-sidebar{position:sticky;top:calc(var(--nav-h) + var(--nav-search-desktop-h) + 16px)}.booking-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-md)}.booking-card-price{margin-bottom:20px}.booking-price-amount{font-size:24px;font-weight:700;color:var(--text-1)}.booking-price-label{font-size:14px;color:var(--text-2);margin-left:4px}.booking-promo-badge{display:inline-block;background:var(--brand-light);color:var(--brand);font-size:12px;font-weight:700;padding:4px 12px;border-radius:var(--radius-pill);margin-left:8px}.booking-form{display:flex;flex-direction:column;gap:12px}.booking-input-label{font-size:12px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px;display:block}.booking-input,.booking-select{width:100%;height:48px;padding:0 16px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;color:var(--text-1);background:var(--surface);outline:none;transition:border-color .2s;appearance:none}.booking-input:focus,.booking-select:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-light)}.booking-divider{height:1px;background:var(--border);margin:8px 0}.booking-summary{display:flex;flex-direction:column;gap:10px;padding:16px 0;border-top:1px solid var(--border);margin-top:4px}.booking-summary-row{display:flex;justify-content:space-between;font-size:14px;color:var(--text-2)}.booking-summary-row.total{font-size:16px;font-weight:700;color:var(--text-1);padding-top:10px;border-top:1px solid var(--border);margin-top:4px}.book-now-btn{width:100%;height:52px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;font-family:inherit;margin-top:8px}.book-now-btn:hover{background:var(--brand-dark);transform:translateY(-1px)}.book-now-btn:disabled{background:var(--border);color:var(--text-2);cursor:not-allowed;transform:none}.booking-note{font-size:12px;color:var(--text-2);text-align:center;margin-top:8px}.offer-agency-badge{display:flex;align-items:center;gap:12px;padding:16px 20px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);margin-top:20px}.agency-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand-light);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.agency-info .agency-name{font-size:14px;font-weight:600;color:var(--text-1)}.agency-info .agency-label{font-size:12px;color:var(--text-2)}.mobile-reserve-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:250;background:var(--surface);border-top:1px solid var(--border);padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom,0px));gap:16px;align-items:center;box-shadow:0 -4px 20px #0000001a}.mobile-reserve-price{flex:1}.mobile-reserve-price strong{font-size:18px;font-weight:700;color:var(--text-1);display:block}.mobile-reserve-price small{font-size:12px;color:var(--text-2)}.mobile-reserve-btn{padding:12px 28px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-md);font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:background .2s;white-space:nowrap}.mobile-reserve-btn:hover{background:var(--brand-dark)}.offer-dates-section{margin-top:4px}.dates-loading{display:flex;align-items:center;gap:10px;color:var(--text-muted, #888);font-size:14px;padding:12px 0}.dates-empty{padding:14px 16px;background:#fff8e1;border:1px solid #ffe082;border-radius:10px;color:#7d5a00;font-size:14px}.dates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px;margin-top:4px}.date-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:12px 12px 10px;background:var(--surface, #fff);border:1.5px solid var(--border, #e5e7eb);border-radius:12px;cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s,transform .12s;font-family:inherit}.date-card:hover{border-color:var(--brand, #2563eb);box-shadow:0 2px 12px #2563eb1f;transform:translateY(-1px)}.date-card--selected{border-color:var(--brand, #2563eb);background:#eff6ff;box-shadow:0 0 0 3px #2563eb26}.date-card-year{font-size:10px;color:var(--text-muted, #9ca3af);font-weight:500;letter-spacing:.04em}.date-card-route{display:flex;align-items:center;gap:6px}.date-card-point{display:flex;align-items:center;gap:5px}.date-card-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.date-card-dot--dep{background:var(--brand, #2563eb)}.date-card-dot--ret{background:#10b981}.date-card-line{flex:1;height:1.5px;background:var(--border, #e5e7eb);min-width:10px}.date-card-date{font-size:12px;font-weight:600;color:var(--text, #111);white-space:nowrap}.date-card-meta{display:flex;align-items:center;gap:8px;margin-top:2px}.date-card-dur{font-size:11px;background:#f3f4f6;color:var(--text-muted, #6b7280);padding:2px 7px;border-radius:20px;font-weight:500}.date-card-seats{font-size:11px;color:#10b981;font-weight:500}.date-card-seats--low{color:#ef4444}.date-card-price{font-size:12px;font-weight:700;color:var(--brand, #2563eb);margin-top:2px}.date-card-check{position:absolute;top:8px;right:8px;width:18px;height:18px;background:var(--brand, #2563eb);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.stat-pill--accent{border-color:var(--brand, #2563eb);background:#eff6ff}.stat-pill--accent .stat-label,.stat-pill--accent .stat-value{color:var(--brand, #2563eb)}.sidebar-date-hint{padding:12px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;font-size:13px;color:#92400e;text-align:center;margin-bottom:16px}.desc-bullet{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.6;color:var(--text, #374151);padding:3px 0}.desc-bullet-dot{color:#10b981;font-weight:700;flex-shrink:0;margin-top:1px}.desc-para{font-size:14px;line-height:1.7;color:var(--text-muted, #6b7280);margin:6px 0 2px}@media(max-width:1024px){.offer-view-container{grid-template-columns:1fr 320px;gap:32px}}@media(max-width:768px){.offer-gallery{padding:12px 16px 0}.offer-gallery-grid{grid-template-columns:1fr;grid-template-rows:minmax(220px,52vh)}.gallery-thumb{display:none}.gallery-main{grid-row:1}.gallery-single{height:min(420px,52vh);border-radius:var(--radius-lg)}.offer-view-container{grid-template-columns:1fr;padding:16px 16px calc(28px + var(--offer-mobile-cta-h) + env(safe-area-inset-bottom,0px));gap:0}.offer-view-sidebar{display:none}.mobile-reserve-bar{display:flex}.offer-view-title{font-size:22px}.amenities-grid{grid-template-columns:1fr 1fr}.stat-pill{min-width:80px}.dates-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.date-card{padding:10px 10px 8px}}.vip-page{min-height:100vh;background:var(--bg);padding-top:0}.vip-global-search{padding:12px 0 8px;max-width:1280px;margin:0 auto}.vip-banner{background:linear-gradient(135deg,#1e3a5f,#2563eb);padding:48px 24px;text-align:center}.vip-banner-inner{max-width:700px;margin:0 auto}.vip-crown{font-size:48px;line-height:1;margin-bottom:16px}.vip-banner h1{font-size:36px;font-weight:800;color:#fff;margin-bottom:12px;letter-spacing:-.5px}.vip-banner p{font-size:16px;color:#fffc;line-height:1.6}.vip-section{max-width:1280px;margin:0 auto;padding:40px 24px}.vip-section-title{font-size:24px;font-weight:700;color:var(--text-1);margin-bottom:24px;display:flex;align-items:center;gap:10px}.vip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px}.vip-badge{position:absolute;top:12px;left:12px;background:linear-gradient(135deg,#b45309,#f59e0b);color:#fff;font-size:11px;font-weight:700;padding:4px 12px;border-radius:var(--radius-pill);letter-spacing:.3px;z-index:1}.vip-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:80px 0}.vip-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite}.vip-empty{text-align:center;padding:40px 0;color:var(--text-2);font-size:15px}@media(max-width:768px){.vip-page{padding-top:0}.vip-banner h1{font-size:26px}.vip-section{padding:24px 16px 80px}.vip-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media(max-width:480px){.vip-grid{grid-template-columns:1fr}}.label-with-link{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;flex-wrap:wrap;gap:10px}.label-with-link label{margin-bottom:0}.forgot-password-link{background:none;border:none;color:#007bff;font-size:13px;font-weight:500;cursor:pointer;padding:0;text-decoration:none;transition:all .2s ease}.forgot-password-link:hover{color:#0056b3;text-decoration:underline;transform:translate(2px)}.forgot-password-link:focus{outline:none;color:#0056b3;text-decoration:underline}@media(max-width:480px){.label-with-link{flex-direction:column;align-items:flex-start;gap:5px}.forgot-password-link{font-size:12px;margin-top:-3px}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.auth-background{position:absolute;inset:0;z-index:1}.auth-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease-in-out}.auth-bg-image.active{opacity:1}.auth-overlay{position:absolute;inset:0;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.auth-container{position:relative;z-index:2;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:40px;width:100%;max-width:450px;box-shadow:0 20px 60px #0000004d;margin:20px}.auth-header{text-align:center;margin-bottom:30px}.auth-logo{font-size:28px;font-weight:700;color:#333;text-decoration:none;display:block;margin-bottom:20px}.auth-logo-img{height:50px;width:auto;max-width:100%;object-fit:contain}.auth-logo span{color:#007bff}.auth-header h1{font-size:28px;margin:10px 0 5px;color:#333}.auth-header p{color:#666;font-size:14px}.auth-tabs{display:flex;background:#f5f5f5;border-radius:10px;padding:4px;margin-bottom:30px}.auth-tab{flex:1;padding:12px;border:none;background:none;border-radius:8px;cursor:pointer;font-weight:500;color:#666;transition:all .3s ease}.auth-tab.active{background:#fff;color:#007bff;box-shadow:0 4px 12px #0000001a}.verification-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.verification-modal{background:#fff;border-radius:20px;padding:40px;width:90%;max-width:450px;box-shadow:0 20px 60px #0000004d;text-align:center;animation:modal-appear .3s ease-out}@keyframes modal-appear{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.verification-modal h2{color:#1a2980;margin-bottom:15px}.verification-modal p{color:#666;margin-bottom:25px;line-height:1.5}.verification-modal .code-input{width:100%;padding:15px;border:2px solid #e0e0e0;border-radius:12px;font-size:28px;letter-spacing:12px;text-align:center;margin-bottom:25px;font-weight:700;transition:border-color .3s}.verification-modal .code-input:focus{border-color:#007bff;outline:none}.verification-modal .resend-timer{margin-top:15px;font-size:14px;color:#888}.verification-modal .resend-btn{background:none;border:none;color:#007bff;font-weight:600;cursor:pointer;text-decoration:underline}.verification-modal .resend-btn:disabled{color:#ccc;cursor:not-allowed}.verification-modal .modal-close-btn{position:absolute;top:15px;right:20px;background:none;border:none;font-size:24px;color:#999;cursor:pointer}.auth-form{margin-bottom:30px}.auth-error{background:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px}.auth-error.warning{background-color:#ffc1071a;border-left:4px solid #ffc107;color:#856404}.auth-error-hint{font-size:.9em;margin-top:5px;opacity:.8;color:#856404}.auth-success{background-color:#28a7451a;border-left:4px solid #28a745;padding:12px;border-radius:8px;margin-bottom:20px}.auth-success p{margin:0;color:#155724;font-size:14px}.auth-info-note{background-color:#17a2b81a;border-left:4px solid #17a2b8;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px}.auth-info-note p{margin:0;color:#0c5460}.form-section-divider{margin:25px 0 15px;padding-bottom:10px;border-bottom:2px solid #e9ecef}.form-section-divider h3{margin:0;font-size:1.1em;color:#495057;font-weight:600}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.form-group .required{color:#dc3545}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:10px;font-size:14px;transition:border-color .3s ease;background:#fff;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group input[type=file]{padding:8px;background-color:#f8f9fa;border:1px solid #dee2e6;cursor:pointer}.form-group input[type=file]:hover{background-color:#e9ecef}.form-group input[type=file]:focus{border-color:#007bff;background-color:#fff}.form-group small.error-text{color:#dc3545;font-weight:500}.form-row{display:flex;gap:15px;margin-bottom:15px}.form-row .form-group{margin-bottom:0}.form-group.half{flex:1}.auth-submit-btn{width:100%;padding:14px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.auth-submit-btn:hover{background:linear-gradient(135deg,#0056b3,#004494);transform:translateY(-2px);box-shadow:0 8px 20px #007bff4d}.auth-submit-btn:disabled{background:#ccc;cursor:not-allowed;transform:none;box-shadow:none;opacity:.7}.auth-footer{text-align:center;border-top:1px solid #e0e0e0;padding-top:20px}.auth-footer p{color:#666;font-size:14px;margin:8px 0}.auth-link{color:#007bff;text-decoration:none;font-weight:500;transition:color .3s ease}.auth-link:hover{color:#0056b3;text-decoration:underline}.auth-home-link{margin-top:20px!important}@media(max-width:480px){.auth-container{padding:30px 20px;margin:10px;max-width:95%}.auth-header h1{font-size:24px}.form-row{flex-direction:column;gap:20px}.form-group.half{width:100%}.auth-tabs{flex-direction:column}.auth-tab{width:100%}}.form-group input[type=file]::-webkit-file-upload-button{background:#f8f9fa;border:1px solid #dee2e6;padding:6px 12px;border-radius:4px;cursor:pointer;margin-right:10px;color:#495057}.form-group input[type=file]::-webkit-file-upload-button:hover{background:#e9ecef}.form-group input[type=file]::file-selector-button{background:#f8f9fa;border:1px solid #dee2e6;padding:6px 12px;border-radius:4px;cursor:pointer;margin-right:10px;color:#495057}.form-group input[type=file]::file-selector-button:hover{background:#e9ecef}.auth-submit-btn.loading{position:relative;color:transparent}.auth-submit-btn.loading:after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin-left:-10px;margin-top:-10px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-tab-content{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.auth-container{max-height:90vh;overflow-y:auto}.auth-container::-webkit-scrollbar{width:6px}.auth-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.auth-container::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:10px}.auth-container::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.form-section-note{font-size:12px;color:#6c757d;margin:5px 0 15px;font-style:italic}.form-group small{display:block;margin-top:5px;color:#6c757d;font-size:12px}.form-group small.file-selected{color:#28a745;font-weight:500}.form-group small.file-not-selected{color:#dc3545;font-weight:500}.form-row.password-row{margin-top:20px}.auth-container{max-width:500px}.agency-form-note{background-color:#6c757d1a;padding:10px 15px;border-radius:8px;margin:20px 0;font-size:13px;color:#6c757d}.agency-form-note strong{color:#495057}.form-group input[type=file]+small{margin-top:8px;padding:5px;background:#f8f9fa;border-radius:4px;border-left:3px solid #007bff}@media(max-width:768px){.auth-container{max-width:95%;padding:25px 15px}.form-row{flex-direction:column;gap:20px}.form-group.half{width:100%}}.profile-page{min-height:calc(100vh - 80px);background:#f8f9fa;padding:40px 20px}.profile-container{max-width:1200px;margin:0 auto;background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;overflow:hidden}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.profile-loading .spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.profile-header{display:flex;justify-content:space-between;align-items:center;padding:30px;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.profile-header h1{font-size:28px;margin:0}.profile-actions{display:flex;gap:10px}.profile-actions button{padding:10px 20px;border:none;border-radius:5px;font-weight:500;cursor:pointer;transition:all .3s ease}.edit-btn{background:#fff;color:#007bff}.edit-btn:hover{background:#f8f9fa}.save-btn{background:#28a745;color:#fff}.save-btn:hover{background:#218838}.cancel-btn{background:#6c757d;color:#fff}.cancel-btn:hover{background:#5a6268}.logout-btn{background:#dc3545;color:#fff}.logout-btn:hover{background:#c82333}.profile-error{background:#fee;color:#c33;padding:15px 30px;margin:0;border-bottom:1px solid #fcc}.profile-content{padding:30px}.profile-info-section,.profile-stats-section,.profile-actions-section{margin-bottom:40px}.profile-info-section h2,.profile-stats-section h2,.profile-actions-section h2{font-size:22px;color:#333;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.info-item{background:#f8f9fa;padding:20px;border-radius:10px}.info-item label{display:block;font-size:14px;color:#666;margin-bottom:8px;font-weight:500}.info-value{font-size:16px;color:#333;margin:0}.profile-input,.profile-textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:5px;font-size:16px;background:#fff}.profile-input:focus,.profile-textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.stat-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:25px;border-radius:10px;display:flex;align-items:center;gap:20px;transition:transform .3s ease}.stat-card:hover{transform:translateY(-5px)}.stat-icon{font-size:40px}.stat-content h3{font-size:18px;color:#333;margin:0 0 5px}.stat-value{font-size:24px;font-weight:700;color:#007bff;margin:0 0 5px}.stat-label{font-size:14px;color:#666;margin:0}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.action-card{background:#fff;border:2px solid #f0f0f0;padding:25px;border-radius:10px;text-align:center;text-decoration:none;color:inherit;transition:all .3s ease;cursor:pointer}.action-card:hover{border-color:#007bff;transform:translateY(-5px);box-shadow:0 10px 20px #007bff1a}.action-icon{font-size:40px;margin-bottom:15px}.action-card h3{font-size:18px;color:#333;margin:0 0 10px}.action-card p{font-size:14px;color:#666;margin:0}@media(max-width:768px){.profile-header{flex-direction:column;gap:20px;text-align:center}.profile-actions{flex-wrap:wrap;justify-content:center}.info-grid,.stats-grid,.actions-grid{grid-template-columns:1fr}.profile-content{padding:20px}}.admin-login-page{min-height:100vh;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:1.5rem;position:relative;font-family:Poppins,sans-serif}.admin-login-page *,.admin-login-page *:before,.admin-login-page *:after{box-sizing:border-box}.admin-login-single-box{width:100%;max-width:440px;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md);padding:2rem 2rem 2.25rem;transition:box-shadow .3s ease}.admin-login-header{text-align:center;margin-bottom:1.75rem}.admin-logo-link{display:inline-block;margin-bottom:1rem;transition:transform .2s ease}.admin-logo-link:hover{transform:scale(1.02)}.admin-login-logo{height:56px;width:auto;max-width:180px;object-fit:contain}.admin-title{font-size:1.65rem;font-weight:800;letter-spacing:-.03em;color:var(--text-1);margin-bottom:.35rem}.admin-subtitle{color:var(--text-2);font-size:.9rem;font-weight:500}.admin-input-group{margin-bottom:1.25rem}.admin-input-group label{display:flex;align-items:center;gap:8px;color:var(--text-2);font-weight:600;font-size:.85rem;margin-bottom:8px;letter-spacing:.02em}.admin-input-icon{font-size:1rem}.admin-input-group input{width:100%;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);font-size:1rem;color:var(--text-1);font-weight:500;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.admin-input-group input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #3b82f626}.admin-input-group input::placeholder{color:var(--text-3);font-weight:400}.admin-input-group input:disabled{opacity:.65;cursor:not-allowed}.admin-error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.35);color:var(--danger);padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.85rem;margin-bottom:1.25rem;display:flex;align-items:center;gap:8px;font-weight:500;animation:adminShake .4s ease}.error-icon{font-size:1rem}.admin-login-btn{width:100%;padding:.9rem;background:var(--brand);border:none;border-radius:var(--radius-md);color:#fff;font-weight:700;font-size:1rem;font-family:inherit;cursor:pointer;transition:background .25s ease,transform .25s ease,box-shadow .25s ease;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 14px #3b82f659;margin-top:.5rem}.admin-login-btn:hover:not(:disabled){transform:translateY(-2px);background:var(--brand-dark);box-shadow:0 6px 20px #3b82f666}.admin-login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.admin-loading-spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-radius:50%;border-top-color:#fff;animation:adminSpin .8s linear infinite}@keyframes adminSpin{to{transform:rotate(360deg)}}@keyframes adminShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media(max-width:550px){.admin-login-single-box{padding:1.5rem}.admin-title{font-size:1.45rem}.admin-login-logo{height:48px}.admin-input-group input{padding:.8rem .95rem}}@media(max-width:480px){.admin-login-single-box{padding:1.35rem}.admin-title{font-size:1.3rem}}.admin-sidebar{width:260px;background:var(--surface);color:var(--text-1);transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:var(--shadow-sm);z-index:100;border-right:1px solid var(--border)}.admin-sidebar.closed{width:80px}.admin-sidebar.closed .admin-sidebar-logo h2{display:none}.admin-sidebar.closed .admin-sidebar-header{justify-content:center;padding:1rem .5rem}.admin-sidebar-header{padding:1.25rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);min-height:80px;background:var(--surface)}.admin-sidebar-logo{display:flex;align-items:center;gap:.75rem;opacity:1;overflow:hidden}.admin-logo-icon{font-size:1.75rem;flex-shrink:0}.admin-sidebar-logo h2{font-size:1.15rem;font-weight:700;letter-spacing:-.3px;color:var(--text-1);white-space:nowrap}.admin-sidebar-toggle{background:var(--bg);border:1px solid var(--border);color:var(--text-2);width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s,background .2s,border-color .2s;flex-shrink:0}.admin-sidebar-toggle:hover{background:var(--brand-light);border-color:var(--brand);color:var(--brand)}.admin-sidebar-nav{flex:1;padding:1rem .75rem;display:flex;flex-direction:column;gap:.35rem;overflow-y:auto}.admin-nav-item{display:flex;align-items:center;gap:.85rem;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-2);font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s,color .2s,transform .2s;border-radius:var(--radius-md);text-decoration:none}.admin-nav-item:hover{background:var(--bg);color:var(--text-1);transform:translate(2px)}.admin-nav-item.active{background:var(--brand-light);color:var(--brand);font-weight:700;box-shadow:none}.admin-nav-item .admin-icon{font-size:1.25rem;min-width:24px;display:flex;justify-content:center}.admin-sidebar-footer{margin-top:auto;padding:1rem .75rem;border-top:1px solid var(--border);background:var(--surface)}.admin-nav-item.admin-logout{color:var(--danger)}.admin-nav-item.admin-logout:hover{background:#ef444414;color:var(--danger)}@keyframes admin-fade-in{0%{opacity:0}to{opacity:1}}@media(max-width:1024px){.admin-sidebar{position:fixed;height:100%;transform:translate(-100%);box-shadow:var(--shadow-md)}.admin-sidebar.open{transform:translate(0)}}.admin-main-header{background:var(--surface);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-sm);z-index:50;min-height:80px;position:sticky;top:0;border-bottom:1px solid var(--border);font-family:Poppins,sans-serif}.admin-header-left h1{font-size:1.5rem;color:var(--admin-primary);margin-bottom:.1rem;font-weight:800;letter-spacing:-.5px}.admin-welcome{color:var(--admin-text-muted);font-size:.85rem;font-weight:500}.admin-header-right{display:flex;align-items:center;gap:2rem}.admin-search-box{position:relative;width:320px}.admin-search-box input{width:100%;padding:.65rem 1rem .65rem 2.75rem;border:1.5px solid var(--admin-border-color);border-radius:var(--admin-radius-md);font-size:.9rem;color:var(--admin-text-main);background:var(--admin-bg-main);transition:all .3s cubic-bezier(.4,0,.2,1)}.admin-search-box input:focus{outline:none;border-color:var(--brand);background:var(--surface);box-shadow:0 0 0 4px #3b82f61f}.admin-search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--admin-text-muted);font-size:1.1rem;pointer-events:none}.admin-user-menu{position:relative;display:flex;align-items:center;gap:1rem;cursor:pointer;padding:.5rem .75rem;border-radius:var(--admin-radius-md);transition:all .3s ease;background:var(--admin-bg-main);border:1.5px solid transparent}.admin-user-menu:hover{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm)}.admin-user-avatar{width:42px;height:42px;background:var(--brand);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;box-shadow:0 4px 12px #3b82f640}.admin-user-info{display:flex;flex-direction:column}.admin-user-name{font-weight:700;color:var(--admin-text-main);font-size:.9rem}.admin-user-role{font-size:.75rem;color:var(--admin-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.admin-user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:200;overflow:hidden;animation:admin-dropdown-in .2s ease}@keyframes admin-dropdown-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.admin-dropdown-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--bg)}.admin-dropdown-avatar{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.admin-dropdown-info{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-dropdown-name{font-weight:600;font-size:.9rem;color:var(--text-1)}.admin-dropdown-email{font-size:.8rem;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-dropdown-divider{height:1px;background:var(--border)}.admin-dropdown-item{width:100%;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:none;background:transparent;font-family:inherit;font-size:.9rem;color:var(--text-1);cursor:pointer;transition:background .15s;text-align:left}.admin-dropdown-item:hover{background:var(--bg)}.admin-dropdown-item.logout-btn{color:var(--danger)}.admin-dropdown-item.logout-btn:hover{background:#ef444414}.admin-dropdown-icon{font-size:1rem}@media(max-width:768px){.admin-main-header{flex-direction:column;gap:1rem;align-items:stretch}.admin-header-right{flex-direction:column;gap:1rem}.admin-search-box{width:100%}}:root{--admin-primary: var(--brand);--admin-primary-light: #60a5fa;--admin-primary-dark: var(--brand-dark);--admin-secondary: var(--brand-dark);--admin-accent: var(--danger);--admin-bg-main: var(--bg);--admin-bg-sidebar: var(--surface);--admin-bg-card: var(--surface);--admin-text-main: var(--text-1);--admin-text-muted: var(--text-2);--admin-text-light: var(--text-1);--admin-border-color: var(--border);--admin-shadow-sm: var(--shadow-sm);--admin-shadow-md: var(--shadow-md);--admin-shadow-lg: var(--shadow-lg);--admin-success: var(--success);--admin-warning: var(--warning);--admin-danger: var(--danger);--admin-info: var(--brand);--admin-radius-sm: var(--radius-sm);--admin-radius-md: var(--radius-md);--admin-radius-lg: var(--radius-lg);--admin-spacing: 1.5rem}.admin-dashboard{display:flex;min-height:100vh;min-width:0;max-width:100%;background-color:var(--admin-bg-main);font-family:Poppins,sans-serif}.admin-main-content{flex:1;min-width:0;display:flex;flex-direction:column;overflow:visible}.admin-content-area{flex:1;min-width:0;padding:var(--admin-spacing);overflow:auto;background:var(--admin-bg-main)}.admin-table-scroll-host{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.admin-table-scroll-host>table{width:100%;min-width:720px}.admin-dashboard-content{display:flex;flex-direction:column;gap:var(--admin-spacing);animation:admin-fade-in .4s cubic-bezier(.4,0,.2,1);max-width:1600px;margin:0 auto;min-width:0;width:100%}.admin-welcome-header{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);padding:2.5rem;box-shadow:var(--admin-shadow-sm);position:relative;border:1px solid var(--admin-border-color);overflow:hidden}.admin-welcome-header:before{content:"";position:absolute;top:0;right:0;width:300px;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(59,130,246,.06) 100%);pointer-events:none}.admin-welcome-header h1{color:var(--admin-primary);font-size:2.25rem;margin-bottom:.5rem;font-weight:800;letter-spacing:-1px}.admin-welcome-header p{color:var(--admin-text-muted);font-size:1.1rem;font-weight:500}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--admin-spacing)}.admin-stat-card{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);padding:1.75rem;box-shadow:var(--admin-shadow-sm);transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid var(--admin-border-color);display:flex;flex-direction:column;justify-content:space-between}.admin-stat-card:hover{transform:translateY(-5px);box-shadow:var(--admin-shadow-md);border-color:var(--admin-primary-light)}.admin-stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.admin-stat-icon{width:54px;height:54px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.75rem;background:var(--brand-light);box-shadow:inset 0 2px 4px #00000005}.admin-stat-change{font-size:.8rem;font-weight:700;padding:.4rem .85rem;border-radius:30px;background:#2ecc711f;color:var(--admin-success);text-transform:uppercase;letter-spacing:.5px}.admin-stat-value{font-size:2.25rem;font-weight:800;color:var(--admin-text-main);margin-bottom:.25rem;letter-spacing:-1px}.admin-stat-title{color:var(--admin-text-muted);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.admin-stat-details{display:flex;flex-direction:column;gap:4px;margin-top:8px;font-size:12px}.admin-stat-details span{padding:2px 6px;border-radius:10px;display:inline-block}.detail-active{background:#2ecc711a;color:#27ae60}.detail-promo{background:#f1c40f1a;color:#f39c12}.detail-confirmed{background:#3498db1a;color:#3498db}.detail-pending{background:#9b59b61a;color:#9b59b6}.admin-full-table-card{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);padding:2rem;box-shadow:var(--admin-shadow-sm);border:1px solid var(--admin-border-color);max-width:100%;min-width:0;overflow:visible}.admin-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.admin-card-header h3{color:var(--admin-primary);font-size:1.5rem;font-weight:800;letter-spacing:-.5px}.header-actions{display:flex;align-items:center;gap:1.25rem}.admin-table{width:100%;border-collapse:separate;border-spacing:0}.admin-table-container .admin-table,.admin-table-scroll-host .admin-table{min-width:680px}.admin-table th{background:var(--admin-bg-main);padding:1rem 1.5rem;font-size:.75rem;font-weight:700;color:var(--admin-text-muted);text-transform:uppercase;letter-spacing:1px;text-align:left;border-bottom:2px solid var(--admin-border-color)}.admin-table th:first-child{border-top-left-radius:var(--admin-radius-sm)}.admin-table th:last-child{border-top-right-radius:var(--admin-radius-sm)}.admin-table td{padding:1.25rem 1.5rem;border-bottom:1px solid var(--admin-border-color);font-size:.9rem;color:var(--admin-text-main);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background-color:#3b82f60a}.admin-add-btn{background:var(--admin-primary);color:#fff;padding:.75rem 1.5rem;border-radius:var(--admin-radius-md);border:none;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.75rem;box-shadow:0 4px 12px #3b82f64d}.admin-add-btn:hover{background:var(--admin-primary-dark);transform:translateY(-2px);box-shadow:0 6px 15px #3b82f659}.admin-refresh-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:var(--surface);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.admin-refresh-btn:hover{background:var(--bg-hover);transform:translateY(-2px)}.admin-hotels-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.admin-hotels-table{width:100%;min-width:720px;border-collapse:collapse}.admin-hotels-table th{background:var(--bg);padding:1rem;text-align:left;color:var(--text-2);font-weight:600;font-size:.9rem;border-bottom:2px solid var(--border)}.admin-hotels-table td{padding:1rem;border-bottom:1px solid var(--border);color:var(--text-1)}.admin-hotels-table tr:hover{background:var(--bg)}.hotel-name-cell{display:flex;flex-direction:column;gap:4px}.places-info{display:flex;flex-direction:column;gap:2px}.places-count.available{color:#27ae60;font-weight:500}.places-count.full{color:#e74c3c;font-weight:500}.places-booked{color:#666;font-size:12px}.price-display{display:flex;flex-direction:column;gap:3px}.admin-recent-bookings{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);padding:2rem;box-shadow:var(--admin-shadow-sm);border:1px solid var(--admin-border-color);max-width:100%;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-recent-bookings h3{color:var(--admin-primary);font-size:1.5rem;margin-bottom:1.5rem;font-weight:800;letter-spacing:-.5px}.admin-modal-overlay{position:fixed;inset:0;background:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:admin-fade-in .3s cubic-bezier(.4,0,.2,1);padding:1rem}.admin-modal-content{background:var(--admin-bg-card);border-radius:var(--admin-radius-lg);width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:var(--admin-shadow-lg);border:1px solid var(--border)}.admin-modal-header{padding:1.5rem 2rem;border-bottom:1px solid var(--admin-border-color);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--admin-bg-card);z-index:10}.admin-modal-header h2{color:var(--admin-primary);font-size:1.25rem;font-weight:800}.admin-modal-body{padding:2rem}.admin-modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--admin-border-color);display:flex;justify-content:flex-end;gap:1rem}.status-badge{padding:.4rem .85rem;border-radius:30px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;display:inline-flex;align-items:center;gap:.5rem}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%}.status-active,.status-confirmed,.status-approved{background:#e8f5e9;color:var(--admin-success)}.status-active:before,.status-confirmed:before,.status-approved:before{background:var(--admin-success)}.status-pending{background:#fff8e1;color:var(--admin-warning)}.status-pending:before{background:var(--admin-warning)}.status-inactive,.status-cancelled,.status-rejected{background:#ffebee;color:var(--admin-danger)}.status-inactive:before,.status-cancelled:before,.status-rejected:before{background:var(--admin-danger)}.admin-bookings-table{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.admin-bookings-table table{width:100%;min-width:640px;border-collapse:collapse}.admin-bookings-table th{background:var(--bg);padding:1rem;text-align:left;color:var(--text-2);font-weight:600;font-size:.9rem;border-bottom:2px solid var(--border)}.admin-bookings-table td{padding:1rem;border-bottom:1px solid var(--border);color:var(--text-1)}.admin-bookings-table tr:hover{background:var(--bg)}.booking-amount{font-weight:600;color:#27ae60}.empty-state,.empty-bookings{text-align:center;padding:3rem;color:var(--text-2)}.empty-state p,.empty-bookings p{margin-bottom:1rem}.admin-status-badge{padding:.3rem .8rem;border-radius:15px;font-size:.85rem;font-weight:500;display:inline-block}.admin-table-actions{display:flex;gap:.5rem}.admin-table-btn{padding:.4rem .8rem;border:none;border-radius:5px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.3rem}.admin-table-btn.admin-view,.admin-table-btn.admin-edit{background:#3498db1a;color:#3498db}.admin-table-btn.admin-delete{background:#e74c3c1a;color:#e74c3c}.admin-table-btn:hover{transform:scale(1.05)}.admin-page-header{margin-bottom:2rem}.admin-page-header h1{font-size:2rem;color:var(--admin-primary);margin-bottom:.5rem}.admin-page-header p{color:var(--text-2);font-size:1rem}.admin-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.admin-search-filter{display:flex;align-items:center;gap:1rem}.admin-search-input{position:relative;display:flex;align-items:center}.admin-search-input input{padding:.8rem 1rem .8rem 2.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);width:300px;font-size:.95rem;background:var(--surface);color:var(--text-1)}.admin-search-input .admin-icon{position:absolute;left:.8rem;color:var(--text-2)}.admin-filter-group{display:flex;gap:.5rem}.admin-filter-dropdown{position:relative;display:flex;align-items:center}.admin-filter-dropdown select{padding:.8rem 1rem .8rem 2.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.95rem;background:var(--surface);color:var(--text-1);cursor:pointer}.admin-filter-dropdown .admin-icon{position:absolute;left:.8rem;color:var(--text-2)}.admin-export-btn{padding:.8rem 1.5rem;background:var(--success);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease}.admin-export-btn:hover{filter:brightness(.95);transform:translateY(-2px)}.admin-hotels-table-container,.admin-bookings-table-container,.admin-users-table-container{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.admin-hotels-table,.admin-bookings-table,.admin-users-table{width:100%;min-width:640px;border-collapse:collapse}.admin-hotels-table th,.admin-bookings-table th,.admin-users-table th{background:var(--bg);padding:1rem;text-align:left;color:var(--text-2);font-weight:600;font-size:.9rem;border-bottom:2px solid var(--border)}.admin-hotels-table td,.admin-bookings-table td,.admin-users-table td{padding:1rem;border-bottom:1px solid var(--border);color:var(--text-1)}.admin-hotels-table tr:hover,.admin-bookings-table tr:hover,.admin-users-table tr:hover{background:var(--bg)}.admin-status,.admin-status-badge{padding:.3rem .8rem;border-radius:15px;font-size:.85rem;font-weight:500}.admin-status.active,.admin-status-badge.confirmed,.admin-status-badge.active{background:#2ecc711a;color:#27ae60}.admin-status.maintenance,.admin-status-badge.pending{background:#f1c40f1a;color:#f39c12}.admin-status.inactive,.admin-status-badge.cancelled{background:#e74c3c1a;color:#e74c3c}.admin-hotel-actions,.admin-table-actions{display:flex;gap:.5rem}.admin-action-btn,.admin-table-btn{padding:.4rem .8rem;border:none;border-radius:5px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease}.admin-action-btn{width:35px;height:35px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem}.admin-action-btn.admin-edit,.admin-table-btn.admin-view,.admin-table-btn.admin-edit{background:#3498db1a;color:#3498db}.admin-action-btn.admin-delete,.admin-table-btn.admin-delete{background:#e74c3c1a;color:#e74c3c}.admin-table-btn.admin-activate{background:#2ecc711a;color:#27ae60}.admin-table-btn.admin-deactivate{background:#f1c40f1a;color:#f39c12}.admin-action-btn:hover,.admin-table-btn:hover{transform:scale(1.05)}.admin-stats-summary,.admin-bookings-stats,.admin-users-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}.admin-stat-box{background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);padding:1.5rem;text-align:center;box-shadow:var(--shadow-sm)}.admin-stat-box h3{color:var(--text-2);font-size:1rem;margin-bottom:.5rem;font-weight:500}.admin-stat-number{font-size:2rem;font-weight:700;color:var(--admin-primary)}.admin-loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem}.admin-global-spinner{width:50px;height:50px;border:4px solid var(--bg);border-top:4px solid var(--brand);border-radius:50%;animation:admin-spin 1s linear infinite}@keyframes admin-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes admin-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-content-area{padding:1rem}}@media(max-width:768px){.admin-stats-grid{grid-template-columns:1fr}.admin-card-header{flex-direction:column;gap:1rem;align-items:stretch}.header-actions{flex-direction:column;align-items:flex-start}.admin-add-btn,.admin-refresh-btn{width:100%;justify-content:center}.admin-table-actions{flex-direction:column;gap:.3rem}.admin-hotels-table,.admin-bookings-table{font-size:.9rem}.admin-hotels-table th,.admin-hotels-table td,.admin-bookings-table th,.admin-bookings-table td{padding:.8rem .5rem}}@media(max-width:480px){.admin-welcome-header,.admin-full-table-card,.admin-recent-bookings{padding:1.2rem}.admin-welcome-header h1{font-size:1.5rem}}.admin-modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .3s ease}.admin-hotel-modal,.admin-program-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:850px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.admin-hotel-modal .admin-modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-hotel-modal .admin-modal-header h2:before{content:"🏨";font-size:24px;margin-right:10px}.admin-program-modal .admin-modal-header{background:linear-gradient(135deg,#ff6b6b,#c92a2a);color:#fff}.admin-program-modal .admin-modal-header h2:before{content:"🎫";font-size:24px;margin-right:10px}.admin-modal-header{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;position:relative}.admin-modal-header h2{margin:0;font-size:20px;font-weight:600;display:flex;align-items:center;gap:10px}.admin-modal-close{background:#fff3;border:none;width:36px;height:36px;border-radius:50%;color:#fff;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.admin-modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.admin-add-form{flex:1;overflow-y:auto;padding:24px}.admin-add-form::-webkit-scrollbar{width:6px}.admin-add-form::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.admin-add-form::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:3px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}@media(max-width:768px){.form-row{grid-template-columns:1fr;gap:15px}}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50;font-size:14px}.form-group label .required-star{color:#e74c3c;margin-left:4px}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group input[type=file],.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:all .3s ease;background:#fff;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;min-height:100px;line-height:1.5}.section-title{font-size:16px;font-weight:700;color:#2c3e50;margin:30px 0 20px;padding-bottom:12px;border-bottom:2px solid #f0f2f5;display:flex;align-items:center;gap:10px}.hotel-section .section-title:before{content:"🏨";font-size:18px}.program-section .section-title:before{content:"🎫";font-size:18px}.image-upload-container{background:#f8f9fa;border-radius:12px;padding:20px;border:2px dashed #dee2e6;transition:all .3s ease}.image-upload-container:hover{border-color:#667eea;background:#f0f4ff}.image-upload-input{display:none}.image-upload-label{display:block;text-align:center;padding:40px 20px;background:#fff;border-radius:8px;cursor:pointer;transition:all .3s ease;border:2px dashed #adb5bd;color:#495057;font-weight:500;font-size:16px}.image-upload-label:hover{background:#f8f9fa;border-color:#667eea;color:#667eea;transform:translateY(-2px)}.image-upload-hint{text-align:center;margin-top:10px;color:#6c757d;font-size:13px}.image-upload-warning{text-align:center;margin-top:10px;color:#dc3545;font-size:13px;font-weight:500;background:#dc35451a;padding:8px;border-radius:6px}.image-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;margin-top:20px}.image-preview-item{position:relative;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 3px 10px #0000001a;transition:transform .3s ease}.image-preview-item:hover{transform:translateY(-5px)}.image-preview{position:relative;width:100%;height:120px;overflow:hidden}.thumbnail{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.image-preview:hover .thumbnail{transform:scale(1.1)}.remove-image-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#dc3545e6;color:#fff;border:none;border-radius:50%;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:2}.remove-image-btn:hover{background:#dc3545;transform:scale(1.1)}.existing-badge{position:absolute;top:8px;left:8px;background:#28a745e6;color:#fff;padding:4px 8px;border-radius:12px;font-size:10px;font-weight:600;z-index:2}.price-per-day-display{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;padding:15px;border-radius:10px;font-size:18px;font-weight:700;text-align:center;margin-top:10px;box-shadow:0 4px 15px #f5576c4d}.duration-display{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;padding:15px;border-radius:10px;font-size:16px;font-weight:600;text-align:center;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:8px}.duration-display:before{content:"⏱️";font-size:18px}.trip-dates-display{background:#f8f9fa;border:2px solid #4facfe;border-radius:10px;padding:15px;margin-top:10px}.date-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #dee2e6}.date-item:last-child{border-bottom:none}.date-item .date-label{font-weight:600;color:#495057;min-width:80px}.date-item .date-value{color:#4facfe;font-weight:500}.program-category-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:.85rem;font-weight:500}.program-category-badge.national{background-color:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.program-category-badge.international{background-color:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.program-category-badge .admin-icon{font-size:1.1rem}.program-category-select{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;width:100%;background-color:#fff;cursor:pointer;transition:all .3s ease;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.program-category-select:focus{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1a;outline:none}.program-filter-select{padding:8px 12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background-color:#fff;cursor:pointer;transition:all .3s ease;min-width:150px}.program-filter-select:focus{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1a;outline:none}.program-trip-status-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;margin:5px 0}.program-trip-status-badge.upcoming{background:#e3f2fd;color:#1976d2}.program-trip-status-badge.upcoming:before{content:"🔜";margin-right:6px}.program-trip-status-badge.ongoing{background:#e8f5e9;color:#388e3c}.program-trip-status-badge.ongoing:before{content:"🟢";margin-right:6px}.program-trip-status-badge.past{background:#fff3e0;color:#f57c00}.program-trip-status-badge.past:before{content:"✅";margin-right:6px}.program-trip-status-badge.unscheduled{background:#f5f5f5;color:#757575}.program-trip-status-badge.unscheduled:before{content:"📅";margin-right:6px}.program-form-section{background:#fff8f8;border:2px solid #ffcdd2;border-radius:12px;padding:20px;margin:20px 0}.program-form-section h3{color:#c92a2a;margin-top:0;margin-bottom:20px;font-size:16px;display:flex;align-items:center;gap:8px}.program-form-section h3:before{content:"🎫";font-size:18px}.program-agency-select{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:all .3s ease}.program-agency-select:focus{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b1a;outline:none}.hotel-agency-badge{display:inline-block;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500;background-color:#e3f2fd;color:#1976d2}.hotel-agency-badge.system{background-color:#f5f5f5;color:#666;font-style:italic}.hotel-child-price{font-size:13px;color:#388e3c;font-weight:500}.hotel-agency-select{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:all .3s ease}.hotel-agency-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.agency-select{width:100%;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:all .3s ease}.agency-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.loading-agencies{background:#f8f9fa;padding:20px;border-radius:8px;text-align:center;color:#6c757d;font-size:14px;display:flex;align-items:center;justify-content:center;gap:10px}.profit-margin-display{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;padding:15px;border-radius:10px;margin:20px 0;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 15px #4facfe4d}.margin-label{font-weight:600;font-size:14px}.margin-value{font-weight:700;font-size:20px}.margin-value.positive{color:#28a745}.margin-value.negative{color:#ff6b6b}.profit-amount{font-size:14px;opacity:.9}.promotion-section{background:linear-gradient(135deg,#fff8e1,#ffecb3);border:2px solid #ffd54f;border-radius:12px;padding:20px;margin:20px 0}.promotion-checkbox{margin-bottom:0}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:600;color:#d35400;font-size:16px}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#d35400}.promotion-details{margin-top:20px;padding-top:20px;border-top:2px solid #ffd54f}.promotion-note{background:#fff;padding:15px;border-radius:8px;margin-bottom:20px;border-left:4px solid #3498db}.promotion-note p{margin:8px 0;font-size:14px;color:#2c3e50}.warning-text{color:#e74c3c;font-weight:600;display:flex;align-items:center;gap:8px}.warning-text:before{content:"⚠️"}.discount-display{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff;padding:12px 20px;border-radius:10px;display:inline-flex;gap:12px;align-items:center;margin-top:15px;font-weight:600;box-shadow:0 4px 15px #43e97b4d}.discount-label{font-size:14px}.discount-value{font-size:20px;font-weight:700}.admin-modal-actions{display:flex;justify-content:flex-end;gap:15px;padding:20px 0 0;margin-top:20px;border-top:2px solid #f0f2f5}.admin-cancel-btn{padding:12px 28px;background:#f8f9fa;color:#495057;border:2px solid #dee2e6;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.admin-cancel-btn:hover{background:#e9ecef;border-color:#adb5bd;transform:translateY(-2px)}.admin-submit-btn{padding:12px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.admin-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.admin-submit-btn:disabled{opacity:.6;cursor:not-allowed}.field-hint{color:#6c757d;font-size:12px;margin-top:6px;display:block;line-height:1.4}.admin-mgmt-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;font-size:16px;color:#667eea;font-weight:600}.admin-mgmt-loading:before,.admin-mgmt-spinner{content:"";width:24px;height:24px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;animation:admin-mgmt-spin 1s linear infinite;display:inline-block}@keyframes admin-mgmt-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:992px){.admin-hotel-modal,.admin-program-modal{max-width:95%;max-height:95vh}}@media(max-width:768px){.admin-modal-overlay{padding:10px}.admin-hotel-modal,.admin-program-modal{max-height:95vh;border-radius:12px}.admin-modal-header{padding:16px 20px}.admin-add-form{padding:20px}.image-preview-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.admin-modal-actions{flex-direction:column}.admin-cancel-btn,.admin-submit-btn{width:100%;text-align:center}}@media(max-width:480px){.admin-modal-header h2{font-size:18px}.section-title{font-size:15px}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group select,.form-group textarea{padding:10px 14px;font-size:13px}.image-upload-label{padding:30px 15px;font-size:14px}.image-preview{height:100px}}.success-message{position:fixed;top:20px;right:20px;background:linear-gradient(135deg,#4caf50,#2e7d32);color:#fff;padding:15px 25px;border-radius:10px;box-shadow:0 5px 20px #4caf504d;animation:slideInRight .5s ease,fadeOut .5s ease 2.5s forwards;z-index:1001}.error-message{position:fixed;top:20px;right:20px;background:linear-gradient(135deg,#f44336,#c62828);color:#fff;padding:15px 25px;border-radius:10px;box-shadow:0 5px 20px #f443364d;animation:slideInRight .5s ease;z-index:1001}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.form-group input:invalid,.form-group select:invalid,.form-group textarea:invalid{border-color:#e74c3c}.form-group input:valid:focus,.form-group select:valid:focus,.form-group textarea:valid:focus{border-color:#2ecc71}.admin-modal-close:focus,.admin-cancel-btn:focus,.admin-submit-btn:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.image-upload-label:focus,.remove-image-btn:focus{outline:none;box-shadow:0 0 0 3px #667eea4d}.admin-hotels-table,.admin-programs-table{width:100%;border-collapse:collapse;min-width:1200px}.admin-hotels-table th,.admin-programs-table th{text-align:left;padding:16px;background-color:#f8f9fa;color:#495057;font-weight:600;font-size:14px;border-bottom:2px solid #dee2e6}.admin-hotels-table td,.admin-programs-table td{padding:16px;border-bottom:1px solid #e9ecef;color:#495057;font-size:14px;vertical-align:middle}.admin-hotels-table tr:hover,.admin-programs-table tr:hover{background-color:#f8f9fa}.admin-programs-table tr.trip-status-upcoming:hover{background-color:#e3f2fd}.admin-programs-table tr.trip-status-ongoing:hover{background-color:#e8f5e8}.admin-programs-table tr.trip-status-past:hover{background-color:#fff3e0}.admin-program-name,.admin-hotel-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.program-images-btn,.hotel-images-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:#e3f2fd;border:none;border-radius:16px;color:#1976d2;font-size:12px;cursor:pointer;transition:all .3s ease}.program-images-btn:hover,.hotel-images-btn:hover{background-color:#bbdefb}.program-duration{display:flex;align-items:center;gap:6px}.program-duration .not-specified{color:#999;font-style:italic}.program-dates{display:flex;align-items:flex-start;gap:8px}.date-range{display:flex;flex-direction:column;gap:4px}.start-date,.end-date{font-size:12px}.date-label{color:#666;margin-right:4px}.not-scheduled{color:#999;font-style:italic}.trip-status-container{display:flex;align-items:center}.program-places,.hotel-places{display:flex;align-items:center;gap:4px}.program-places .available,.hotel-places .available{font-weight:600;color:#2196f3}.program-places .separator,.hotel-places .separator{color:#999}.program-places .booked,.hotel-places .booked{color:#f57c00;font-size:12px}.admin-program-ownership,.admin-hotel-ownership{display:flex;align-items:center;gap:8px}.agency-info{display:flex;flex-direction:column}.agency-name{font-size:13px;font-weight:500;color:#495057}.system-label{color:#666;font-size:13px}.admin-price-display{display:flex;flex-direction:column;gap:2px}.admin-promo-price{font-weight:600;color:#f57c00}.admin-original-price{font-size:12px;color:#999;text-decoration:line-through}.admin-normal-price{font-weight:600;color:#495057}.admin-profit{font-size:13px;font-weight:500}.admin-profit.profit-positive{color:#4caf50}.admin-profit.profit-negative{color:#f44336}.profit-margin{font-size:11px;color:#666;margin-left:4px}.admin-table-actions{display:flex;gap:8px}.admin-table-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:all .3s ease}.admin-edit{background-color:#e3f2fd;color:#1976d2}.admin-edit:hover{background-color:#bbdefb}.admin-delete{background-color:#ffebee;color:#f44336}.admin-delete:hover{background-color:#ffcdd2}.no-data{text-align:center;color:#999;padding:32px!important}.admin-stats-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:24px}.admin-stat-box{background:#fff;padding:16px;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center}.admin-stat-box h3{font-size:14px;font-weight:500;color:#666;margin:0 0 8px}.admin-stat-number{font-size:24px;font-weight:600;color:#333;margin:0}.rooms-section{margin-top:30px;border-top:2px solid #eee;padding-top:20px}.rooms-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.rooms-header h3{font-size:1.3rem;color:#333;margin:0}.add-room-btn{background:#4caf50;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.9rem}.add-room-btn:hover{background:#45a049}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:20px}.room-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:10px;padding:15px;position:relative}.room-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.room-type-badge{background:#2196f3;color:#fff;padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.room-actions{display:flex;gap:8px}.room-edit-btn,.room-delete-btn{background:none;border:none;cursor:pointer;padding:4px;font-size:1rem;border-radius:4px;transition:all .2s}.room-edit-btn{color:#2196f3}.room-edit-btn:hover{background:#e3f2fd}.room-delete-btn{color:#f44336}.room-delete-btn:hover{background:#ffebee}.room-details{display:flex;flex-direction:column;gap:8px}.room-detail-item{display:flex;align-items:center;gap:10px;font-size:.95rem;color:#555}.room-detail-item .label{font-weight:600;min-width:100px;color:#777}.room-detail-item .value{color:#333}.room-capacity-bar{margin-top:10px;height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.room-capacity-fill{height:100%;background:#4caf50;border-radius:3px;transition:width .3s ease}.room-capacity-fill.warning{background:#ff9800}.room-capacity-fill.danger{background:#f44336}.room-stats{display:flex;justify-content:space-between;margin-top:10px;font-size:.85rem;color:#666}.room-modal .admin-modal{max-width:500px}.room-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.room-type-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:10px;margin-bottom:15px}.room-type-option{text-align:center;padding:10px;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s}.room-type-option:hover{border-color:#2196f3}.room-type-option.selected{background:#2196f3;border-color:#2196f3;color:#fff}.room-type-option .type-icon{font-size:1.5rem;display:block;margin-bottom:5px}.room-type-option .type-name{font-size:.8rem;font-weight:600;text-transform:capitalize}.price-preview{background:#e8f5e8;padding:10px;border-radius:6px;margin:15px 0;text-align:center;font-weight:600;color:#2e7d32}.availability-info{background:#fff3e0;padding:8px 12px;border-radius:6px;margin-top:10px;font-size:.9rem;color:#e65100}.no-rooms{text-align:center;padding:40px;background:#f5f5f5;border-radius:10px;color:#999;font-style:italic}@media(max-width:768px){.rooms-grid,.room-form .form-row{grid-template-columns:1fr}}:root{--spiritual-green: #2d6a4f;--spiritual-green-light: #40916c;--spiritual-gold: #d4af37;--spiritual-gold-light: #f4d03f;--admin-bg: #f8f9fa;--card-bg: #ffffff;--text-primary: #2d3436;--text-secondary: #636e72;--danger: #d63031;--success: #00b894;--shadow: 0 4px 6px rgba(0, 0, 0, .1);--transition: all .3s ease}.admin-spiritual-container{padding:2rem;background-color:var(--admin-bg);min-height:100vh;font-family:Inter,sans-serif}.admin-spiritual-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;background:linear-gradient(135deg,var(--spiritual-green) 0%,var(--spiritual-green-light) 100%);padding:2rem;border-radius:15px;color:#fff;box-shadow:var(--shadow)}.header-spiritual-title h1{font-size:2rem;margin:0;display:flex;align-items:center;gap:.75rem}.header-spiritual-title p{margin:.5rem 0 0;opacity:.9}.add-spiritual-btn{background-color:var(--spiritual-gold);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:10px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:var(--transition);box-shadow:0 4px 15px #d4af374d}.add-spiritual-btn:hover{background-color:var(--spiritual-gold-light);transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.admin-spiritual-controls{display:flex;gap:1rem;margin-bottom:2rem;align-items:center}.spiritual-search-bar{flex:1;position:relative;display:flex;align-items:center;background:#fff;border-radius:12px;padding:0 1rem;box-shadow:var(--shadow);border:1px solid #eee}.spiritual-search-bar input{width:100%;border:none;padding:1rem;font-size:1rem;outline:none}.spiritual-refresh-btn{background:#fff;border:1px solid #eee;padding:1rem;border-radius:12px;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow);color:var(--spiritual-green)}.spiritual-refresh-btn:hover{background-color:#f1f2f6;transform:rotate(30deg)}.admin-spiritual-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.spiritual-card{background:var(--card-bg);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);border:1px solid #eee;position:relative}.spiritual-card:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}.spiritual-card-image{height:220px;position:relative;overflow:hidden}.spiritual-card-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.spiritual-card:hover .spiritual-card-image img{transform:scale(1.1)}.spiritual-status-badge{position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;border-radius:30px;font-size:.85rem;font-weight:700;text-transform:uppercase;background:#ffffffe6;color:var(--text-primary);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.spiritual-status-badge.active{color:var(--success)}.spiritual-status-badge.inactive{color:var(--danger)}.spiritual-type-badge{position:absolute;top:1rem;left:1rem;padding:.5rem 1rem;border-radius:30px;font-size:.85rem;font-weight:700;text-transform:uppercase;background:var(--spiritual-green);color:#fff}.spiritual-card-info{padding:1.5rem}.spiritual-card-info h3{margin:0 0 1rem;font-size:1.4rem;color:var(--text-primary)}.spiritual-info-row{display:flex;justify-content:space-between;margin-bottom:.75rem;color:var(--text-secondary);font-size:.95rem}.spiritual-price-tag{background:#f1f2f6;padding:1rem;border-radius:12px;margin:1rem 0;display:flex;flex-direction:column;gap:.25rem}.spiritual-sell-price{font-size:1.5rem;font-weight:800;color:var(--spiritual-green)}.spiritual-cost-price{font-size:.85rem;color:var(--text-secondary)}.spiritual-card-actions{display:flex;gap:.5rem;margin-top:1.5rem}.spiritual-action-btn{flex:1;padding:.75rem;border:none;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;transition:var(--transition)}.spiritual-edit-btn{background:#e3f2fd;color:#1976d2}.spiritual-rooms-btn{background:#e8f5e9;color:#2e7d32}.spiritual-delete-btn{background:#ffebee;color:#c62828}.spiritual-edit-btn:hover{background:#1976d2;color:#fff}.spiritual-rooms-btn:hover{background:#2e7d32;color:#fff}.spiritual-delete-btn:hover{background:#c62828;color:#fff}.spiritual-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:1rem}.spiritual-modal{background:#fff;width:100%;max-width:900px;max-height:90vh;border-radius:25px;overflow-y:auto;box-shadow:0 25px 50px #0003;animation:modalIn .4s ease-out}@keyframes modalIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.spiritual-modal-header{padding:2rem;background:linear-gradient(135deg,var(--spiritual-green) 0%,var(--spiritual-green-light) 100%);color:#fff;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10}.spiritual-modal-header h2{margin:0;font-size:1.5rem}.spiritual-modal-close{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.spiritual-modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.spiritual-form-body{padding:2.5rem}.spiritual-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.spiritual-form-group{display:flex;flex-direction:column;gap:.5rem}.spiritual-form-group label{font-weight:600;color:var(--text-primary);font-size:.95rem}.spiritual-form-group input,.spiritual-form-group select,.spiritual-form-group textarea{padding:.85rem;border:1.5px solid #eee;border-radius:12px;font-size:1rem;transition:var(--transition)}.spiritual-form-group input:focus,.spiritual-form-group select:focus,.spiritual-form-group textarea:focus{border-color:var(--spiritual-green);box-shadow:0 0 0 4px #2d6a4f1a;outline:none}.spiritual-image-upload{border:2px dashed #ddd;padding:2rem;border-radius:15px;text-align:center;cursor:pointer;transition:var(--transition)}.spiritual-image-upload:hover{border-color:var(--spiritual-green);background:#f8f9fa}.file-upload-label{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--text-secondary);font-weight:500;pointer-events:none}.file-upload-label .spiritual-icon{font-size:2.5rem;margin-bottom:.5rem}.spiritual-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem;margin-top:1.5rem}.spiritual-preview-item{position:relative;height:100px;border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}.spiritual-preview-item img{width:100%;height:100%;object-fit:cover}.spiritual-remove-img{position:absolute;top:5px;right:5px;background:#d63031cc;color:#fff;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem}.spiritual-modal-footer{padding:2rem;border-top:1px solid #eee;display:flex;justify-content:flex-end;gap:1rem}.spiritual-cancel-btn{padding:.75rem 2rem;border:1px solid #ddd;background:#fff;border-radius:12px;font-weight:600;cursor:pointer;transition:var(--transition)}.spiritual-submit-btn{padding:.75rem 2.5rem;background:var(--spiritual-green);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:0 4px 15px #2d6a4f33}.spiritual-submit-btn:hover{background:var(--spiritual-green-light);transform:translateY(-2px);box-shadow:0 6px 20px #2d6a4f4d}@media(max-width:768px){.admin-spiritual-header{flex-direction:column;gap:1.5rem;text-align:center}.spiritual-form-row,.admin-spiritual-grid{grid-template-columns:1fr}}.admin-bookings-management{padding:20px;background:var(--bg);min-height:100vh;font-family:Poppins,sans-serif;max-width:100%;min-width:0;box-sizing:border-box}.admin-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.admin-page-header h1{font-size:24px;color:var(--text-1);margin:0}.booking-tabs{display:flex;gap:10px;margin-bottom:20px;background:var(--surface);border:1px solid var(--border);padding:10px;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap}.tab-btn{flex:0 0 auto;min-width:7.25rem;padding:12px;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;font-family:inherit;color:var(--text-2);display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s}.tab-btn.active{background:var(--brand);color:#fff}.tab-btn:hover:not(.active){background:var(--bg);color:var(--text-1)}.admin-controls{display:grid;grid-template-columns:1fr minmax(0,250px);gap:20px;margin-bottom:20px;max-width:100%;min-width:0}@media(max-width:820px){.admin-controls{grid-template-columns:1fr}}.admin-search-input,.admin-filter-dropdown{background:#fff;padding:10px 15px;border-radius:8px;display:flex;align-items:center;gap:10px;box-shadow:0 2px 10px #0000000d}.admin-search-input input,.admin-filter-dropdown select{border:none;width:100%;outline:none;font-size:14px}.admin-bookings-table-container{background:#fff;border-radius:12px;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;max-width:100%;box-shadow:0 4px 20px #00000014}.admin-bookings-table{width:100%;min-width:900px;border-collapse:collapse}.admin-bookings-table th{background:#f8f9fa;padding:15px;text-align:left;font-size:13px;color:#7f8c8d;text-transform:uppercase;letter-spacing:1px}.admin-bookings-table td{padding:15px;border-bottom:1px solid #f1f1f1}.booking-ref{font-weight:700;color:var(--brand);font-size:14px}.guest-name{font-weight:600;color:#2c3e50}.guest-phone{font-size:12px;color:#95a5a6}.room-badge{background:#eef2f7;color:#34495e;padding:2px 8px;border-radius:4px;font-size:11px;margin-right:5px;display:inline-block;margin-top:5px}.total-price{font-weight:700;color:#27ae60}.payment-method-badge{font-size:10px;text-transform:uppercase;color:#95a5a6}.admin-status-badge{padding:5px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase}.admin-status-badge.pending{background:#fff3cd;color:#856404}.admin-status-badge.confirmed{background:#d4edda;color:#155724}.admin-status-badge.cancelled{background:#f8d7da;color:#721c24}.admin-status-badge.expired{background:#e2e3e5;color:#383d41}.countdown-container{display:flex;align-items:center;gap:5px;font-weight:700;font-size:14px;margin-top:5px;padding:4px 8px;background:#fdf2f2;border-radius:4px;color:#e74c3c;border:1px solid #fadbd8}.countdown-timer.warning{color:#d35400;animation:pulse 1s infinite}.countdown-timer.expired{color:#95a5a6}@keyframes pulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.extend-btn{background:#e3f2fd;color:#1976d2;border:none;padding:4px 8px;border-radius:4px;font-size:11px;cursor:pointer;margin-top:5px;display:flex;align-items:center;gap:4px}.action-buttons{display:flex;gap:8px}.icon-btn{width:32px;height:32px;border-radius:6px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.icon-btn.view{background:#f0f4f8;color:#2196f3}.icon-btn.confirm{background:#e8f5e9;color:#4caf50}.icon-btn.cancel{background:#ffebee;color:#f44336}.icon-btn:hover{transform:scale(1.1)}.admin-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-modal{background:#fff;width:100%;max-width:min(1200px,96vw);max-height:95vh;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px #0003}.admin-modal-header{padding:20px;background:#f8f9fa;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee}.admin-modal-content{padding:25px;max-height:70vh;overflow-y:auto}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:25px}@media(max-width:700px){.modal-grid,.travelers-list-grid{grid-template-columns:1fr}}.item-details-box{background:#f8fafc;padding:15px;border-radius:8px;border:1px solid #e2e8f0}.item-details-box p{margin:5px 0;font-size:14px;color:#4a5568}.item-details-box strong{color:#2d3748}.section h3{font-size:16px;color:#2c3e50;border-bottom:2px solid #f1f1f1;padding-bottom:10px;margin-bottom:15px}.person-item,.room-item{background:#f8fafc;padding:10px;border-radius:8px;margin-bottom:10px;font-size:13px;border-left:3px solid var(--brand)}.travelers-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:15px}.person-item-detailed{background:#f8fafc;padding:15px;border-radius:12px;border:1px solid #e2e8f0;display:flex;gap:15px;align-items:flex-start;box-shadow:0 2px 4px #00000008;transition:transform .2s}.person-item-detailed:hover{transform:translateY(-2px);border-color:var(--brand)}.person-info{flex:1}.person-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.person-header strong{font-size:15px;color:#2d3748}.person-type-badge{font-size:10px;padding:2px 6px;border-radius:4px;text-transform:uppercase;font-weight:700}.person-type-badge.adult{background:#e3f2fd;color:#1976d2}.person-type-badge.kid{background:#f3e5f5;color:#7b1fa2}.person-details p{margin:3px 0;font-size:12px;color:#4a5568}.passport-preview{width:100px;height:120px;background:#edf2f7;border-radius:8px;overflow:hidden;position:relative;border:1px solid #e2e8f0}.passport-link{display:block;width:100%;height:100%;text-decoration:none}.passport-img-thumb{width:100%;height:100%;object-fit:cover}.pdf-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;text-align:center;color:#e53e3e}.pdf-icon{font-size:24px;margin-bottom:5px}.pdf-placeholder span{font-size:10px;font-weight:600}.passport-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s}.passport-overlay span{color:#fff;font-size:10px;text-align:center;padding:5px}.passport-preview:hover .passport-overlay{opacity:1}.special-requests-box{background:#fff9db;padding:15px;border-radius:8px;border:1px solid #ffe066}.special-requests-box h3{margin-top:0;font-size:14px;color:#856404}.special-requests-box p{margin:5px 0 0;font-size:13px;color:#856404}.reservations-list{max-height:500px;overflow-y:auto;padding-right:10px}.admin-table-btn{padding:10px 18px;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:8px;transition:all .2s;white-space:nowrap;min-width:160px;justify-content:center;z-index:100;position:relative}.admin-view{background:#2196f3;color:#fff;border:1px solid #1976D2}.admin-confirm{background:#4caf50;color:#fff;border:1px solid #388e3c}.admin-cancel{background:#f44336;color:#fff;border:1px solid #d32f2f}.admin-table-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d;opacity:.9}.reservation-info-grid{min-height:150px;margin-bottom:10px}.reservations-list{padding-bottom:20px}.agencies-management{padding:20px;animation:admin-fade-in .3s ease}.agencies-page-header{margin-bottom:30px}.agencies-page-header h1{color:#1a2980;font-size:28px;margin-bottom:8px}.agencies-page-header p{color:#666;font-size:16px;line-height:1.5}.agencies-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 3px 15px #00000014}.agencies-search-filter{display:flex;align-items:center;gap:15px;flex:1}.agencies-search-input{position:relative;display:flex;align-items:center;flex:1;max-width:400px}.agencies-search-input .admin-icon{position:absolute;left:12px;color:#666;font-size:16px}.agencies-search-input input{width:100%;padding:12px 15px 12px 40px;border:2px solid #e0e0e0;border-radius:10px;font-size:14px;transition:all .3s}.agencies-search-input input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.agencies-filter-group{display:flex;gap:10px}.agencies-filter-dropdown{position:relative;display:flex;align-items:center}.agencies-filter-dropdown .admin-icon{position:absolute;left:12px;color:#666;font-size:14px}.agencies-filter-dropdown select{padding:12px 15px 12px 40px;border:2px solid #e0e0e0;border-radius:10px;font-size:14px;background:#fff;cursor:pointer;min-width:160px;appearance:none}.agencies-filter-dropdown select:focus{outline:none;border-color:#3498db}.agencies-add-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease}.agencies-add-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #3498db4d}.agencies-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:30px}.agencies-stat-card{background:#fff;border-radius:15px;padding:25px;box-shadow:0 5px 20px #00000014;transition:transform .3s ease}.agencies-stat-card:hover{transform:translateY(-5px)}.agencies-stat-card h3{color:#666;font-size:14px;font-weight:500;margin-bottom:10px;text-transform:uppercase;letter-spacing:1px}.agencies-stat-number{font-size:32px;font-weight:700;color:#1a2980;line-height:1}.agencies-table-container{background:#fff;border-radius:15px;overflow:hidden;box-shadow:0 5px 20px #00000014;margin-bottom:30px}.agencies-table{width:100%;border-collapse:collapse}.agencies-table thead{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.agencies-table th{padding:18px 20px;text-align:left;font-weight:600;color:#333;font-size:14px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #dee2e6}.agencies-table td{padding:16px 20px;border-bottom:1px solid #f0f0f0;color:#444;font-size:14px}.agencies-table tbody tr{transition:background-color .2s}.agencies-table tbody tr:hover{background-color:#f8f9fa}.agencies-status-badge{padding:6px 15px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-block}.agencies-status-badge.pending{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.agencies-status-badge.active{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.agencies-status-badge.rejected{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.agencies-credit-display{display:flex;align-items:center;gap:12px}.agencies-credit-amount{font-weight:700;color:#28a745;font-size:16px;min-width:60px}.agencies-add-credit-btn{background:#ffc107;color:#333;border:none;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all .3s ease}.agencies-add-credit-btn:hover{background:#e0a800;transform:translateY(-2px)}.agencies-table-actions{display:flex;gap:8px;flex-wrap:wrap}.agencies-action-btn{display:flex;align-items:center;gap:5px;padding:8px 12px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:80px;justify-content:center}.agencies-action-btn.confirm{background:linear-gradient(135deg,#28a745,#218838);color:#fff}.agencies-action-btn.reject{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.agencies-action-btn.deactivate{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff}.agencies-action-btn.activate{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff}.agencies-action-btn.edit{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.agencies-action-btn.view{background:linear-gradient(135deg,#6f42c1,#5a379d);color:#fff}.agencies-action-btn.delete{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;padding:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.agencies-action-btn:hover{transform:translateY(-2px);box-shadow:0 3px 10px #0003}.agencies-action-btn:active{transform:translateY(0)}.agencies-loading{display:flex;justify-content:center;align-items:center;min-height:300px;font-size:16px;color:#666}.agencies-empty-state{text-align:center;padding:60px 30px;background:#fff;border-radius:15px;box-shadow:0 5px 20px #00000014}.agencies-empty-state p{color:#666;font-size:18px;margin-bottom:20px}.agencies-empty-state ul{text-align:left;display:inline-block;color:#666;margin-bottom:30px}.agencies-empty-state li{margin-bottom:8px;line-height:1.5}.agencies-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.agencies-modal{background:#fff;border-radius:20px;max-width:800px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 40px #0003;animation:agencies-modal-appear .3s ease}@keyframes agencies-modal-appear{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.agencies-modal-header{padding:25px 30px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:20px 20px 0 0}.agencies-modal-header h2{margin:0;color:#1a2980;font-size:24px}.agencies-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:5px;border-radius:50%;transition:all .3s}.agencies-modal-close:hover{background:#f8f9fa;color:#333}.agencies-large-modal{max-width:900px}.agencies-add-form{padding:30px}.agencies-form-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #eee}.agencies-form-section:last-child{border-bottom:none}.agencies-form-section h3{color:#1a2980;font-size:18px;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #3498db}.agencies-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.agencies-form-group{margin-bottom:20px}.agencies-form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.agencies-form-group input,.agencies-form-group select,.agencies-form-group textarea{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:10px;font-size:14px;transition:all .3s;box-sizing:border-box}.agencies-form-group input:focus,.agencies-form-group select:focus,.agencies-form-group textarea:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.agencies-file-input{margin-top:10px;padding:10px;border:2px dashed #ddd;border-radius:10px;background:#f8f9fa;cursor:pointer;transition:all .3s}.agencies-file-input:hover{border-color:#3498db;background:#e3f2fd}.agencies-form-note{color:#666;font-size:13px;font-style:italic;margin-top:10px}.agencies-edit-content{padding:30px}.agencies-info-summary{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:20px;border-radius:15px;margin-bottom:25px}.agencies-info-summary h3{margin:0 0 10px;color:#1a2980}.agencies-info-summary p{margin:5px 0;color:#333;font-size:14px}.agencies-status-content{padding:30px}.agencies-status-select{width:100%;padding:12px 15px;border:2px solid #e0e0e0;border-radius:10px;font-size:14px;margin-bottom:20px;background:#fff;cursor:pointer}.agencies-status-warning{margin:20px 0}.agencies-warning-message{padding:15px;border-radius:10px;margin-bottom:15px}.agencies-warning-message.info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.agencies-warning-message.warning{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.agencies-credit-content{padding:30px}.agencies-credit-info{background:linear-gradient(135deg,#e3f2fd,#bbdefb);padding:20px;border-radius:15px;margin-bottom:25px}.agencies-credit-info h3{margin:0 0 10px;color:#1a2980}.agencies-credit-info p{margin:5px 0;color:#333;font-size:14px}.agencies-credit-summary{background:linear-gradient(135deg,#e7f3ff,#b3d9ff);padding:20px;border-radius:15px;margin:25px 0}.agencies-credit-summary h4{margin:0 0 15px;color:#06c}.agencies-summary-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(0,102,204,.2)}.agencies-summary-row.total-balance{font-size:18px;font-weight:700;color:#28a745;border-bottom:none;border-top:2px solid rgba(0,102,204,.2);padding-top:15px;margin-top:10px}.agencies-details-modal{max-width:700px}.agencies-details-content{padding:30px}.agencies-detail-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #eee}.agencies-detail-section:last-child{border-bottom:none}.agencies-detail-section h3{color:#1a2980;font-size:18px;margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid #3498db}.agencies-detail-row{display:grid;grid-template-columns:200px 1fr;gap:15px;padding:12px 0;border-bottom:1px solid #f5f5f5}.agencies-detail-row:last-child{border-bottom:none}.agencies-detail-row strong{color:#555;font-weight:600;font-size:14px}.agencies-detail-row span{color:#333;font-size:14px;word-break:break-word}.agencies-credit-badge{display:inline-block;background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;padding:6px 15px;border-radius:20px;font-weight:600;font-size:14px}.agencies-rejection-reason{color:#721c24;font-style:italic;background:#f8d7da;padding:10px;border-radius:8px;border-left:4px solid #dc3545;margin-top:5px}.agencies-modal-actions{display:flex;justify-content:flex-end;gap:15px;padding:25px 30px;border-top:1px solid #eee;background:#f8f9fa;border-radius:0 0 20px 20px}.agencies-cancel-btn,.agencies-submit-btn,.agencies-close-btn{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.agencies-cancel-btn{background:#f8f9fa;color:#666;border:2px solid #e0e0e0}.agencies-cancel-btn:hover{background:#e9ecef;transform:translateY(-2px)}.agencies-submit-btn{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.agencies-submit-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #3498db4d}.agencies-submit-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.agencies-close-btn{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff}.agencies-close-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #6c757d4d}@media(max-width:1024px){.agencies-stats{grid-template-columns:repeat(2,1fr)}.agencies-controls{flex-direction:column;gap:15px}.agencies-search-filter{width:100%}.agencies-search-input{max-width:none}}@media(max-width:768px){.agencies-management{padding:15px}.agencies-stats,.agencies-form-row{grid-template-columns:1fr}.agencies-detail-row{grid-template-columns:1fr;gap:5px}.agencies-table{font-size:13px}.agencies-table th,.agencies-table td{padding:12px 15px}.agencies-table-actions{flex-direction:column}.agencies-action-btn{min-width:100%}.agencies-modal{width:95%;margin:10px}}@media(max-width:480px){.agencies-page-header h1{font-size:24px}.agencies-stat-card{padding:20px}.agencies-stat-number{font-size:28px}.agencies-modal-header h2{font-size:20px}.agencies-modal-actions{flex-direction:column}.agencies-cancel-btn,.agencies-submit-btn,.agencies-close-btn{width:100%}}.agencies-modal::-webkit-scrollbar{width:8px}.agencies-modal::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.agencies-modal::-webkit-scrollbar-thumb{background:#3498db;border-radius:4px}.agencies-modal::-webkit-scrollbar-thumb:hover{background:#2980b9}.agencies-documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin:15px 0}.agencies-document-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:15px;transition:all .3s ease}.agencies-document-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.agencies-document-card.unavailable{background:#f8f9fa;border:1px dashed #dc3545;opacity:.7}.agencies-document-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.agencies-document-type{background:#007bff;color:#fff;padding:2px 8px;border-radius:4px;font-size:.75em;font-weight:700}.agencies-document-status{background:#dc3545;color:#fff;padding:2px 8px;border-radius:4px;font-size:.75em}.agencies-document-actions{display:flex;gap:8px;margin-top:10px}.agencies-fetch-docs-btn{background:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.9em;margin-top:10px;transition:background .3s ease}.agencies-fetch-docs-btn:hover{background:#5a6268}.agencies-fetch-docs-btn:disabled{opacity:.6;cursor:not-allowed}.agencies-document-viewer-overlay{background:#000000e6;z-index:9999}.agencies-document-viewer{max-width:90%;max-height:90vh;width:1000px}.agencies-document-viewer-content{padding:20px;background:#fff}.agencies-image-viewer{text-align:center;margin-bottom:20px}.agencies-image-viewer img{max-width:100%;max-height:70vh;object-fit:contain;border:1px solid #dee2e6;border-radius:4px}.agencies-pdf-viewer{margin-bottom:20px}.agencies-pdf-alternative{margin-top:10px;color:#666;font-size:.9em}.agencies-pdf-alternative a{color:#007bff;text-decoration:none}.agencies-pdf-alternative a:hover{text-decoration:underline}.agencies-document-info-bar{display:flex;justify-content:space-between;align-items:center;padding:15px;background:#f8f9fa;border-radius:4px;margin-top:20px}.agencies-document-meta{display:flex;gap:20px;color:#666}.agencies-document-meta strong{color:#333;margin-right:5px}.agencies-action-btn.view{background:#17a2b8}.agencies-action-btn.view:hover{background:#138496}.agencies-action-btn.download{background:#28a745;color:#fff;text-decoration:none;padding:6px 12px;border-radius:4px;font-size:.9em;display:inline-block;transition:background .3s ease}.agencies-action-btn.download:hover{background:#218838;text-decoration:none;color:#fff}.agencies-action-btn.close{background:#6c757d}.agencies-action-btn.close:hover{background:#5a6268}.admin-offers-page{padding:2rem;background-color:#f8f9fa;min-height:100vh;font-family:Inter,sans-serif}.admin-header{margin-bottom:2rem}.admin-header h1{font-size:1.8rem;color:#1a1a1a;margin-bottom:.5rem}.admin-header p{color:#666;font-size:1rem}.admin-error{background-color:#fee2e2;color:#dc2626;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.admin-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000000d;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;max-width:100%}.admin-table{width:100%;min-width:720px;border-collapse:collapse;text-align:left}.admin-table th{background-color:#f9fafb;padding:1rem 1.5rem;font-weight:600;color:#4b5563;font-size:.85rem;text-transform:uppercase;border-bottom:1px solid #e5e7eb}.admin-table td{padding:1.2rem 1.5rem;border-bottom:1px solid #f3f4f6;color:#1f2937;font-size:.95rem}.admin-table tr:hover{background-color:#f9fafb}.agency-contact{font-size:.8rem;color:#6b7280;margin-top:.2rem}.badge{padding:.4rem .8rem;border-radius:20px;font-size:.75rem;font-weight:600}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-success{background-color:#d1fae5;color:#065f46}.badge-danger{background-color:#fee2e2;color:#991b1b}.btn-view{background-color:#2563eb;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-view:hover{background-color:#1d4ed8}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:2rem}.modal-content{background:#fff;width:100%;max-width:800px;border-radius:16px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-header h2{font-size:1.4rem;margin:0;color:#111827}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#9ca3af}.modal-body{padding:2rem}.detail-section{margin-bottom:2rem}.detail-section h3{font-size:1.1rem;color:#374151;margin-bottom:1rem;border-bottom:2px solid #f3f4f6;padding-bottom:.5rem}.detail-section p{margin:.5rem 0;font-size:.95rem}.description-text{background-color:#f9fafb;padding:1.5rem;border-radius:8px;color:#4b5563;line-height:1.6;white-space:pre-wrap}.docs-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.doc-group h4{font-size:.9rem;color:#6b7280;margin-bottom:.8rem}.file-links{display:flex;flex-direction:column;gap:.8rem}.file-link{display:block;padding:.8rem;background-color:#f3f4f6;border-radius:6px;color:#2563eb;text-decoration:none;font-size:.9rem;font-weight:500;transition:background-color .2s}.file-link:hover{background-color:#e5e7eb}.action-section{background-color:#fefce8;padding:1.5rem;border-radius:12px;border:1px solid #fef3c7}.rejection-input{margin-bottom:1.5rem}.rejection-input label{display:block;font-size:.9rem;font-weight:600;color:#92400e;margin-bottom:.5rem}.rejection-input textarea{width:100%;padding:.8rem;border:1px solid #fbbf24;border-radius:8px;min-height:100px;resize:vertical}.action-buttons{display:flex;gap:1rem}.btn-accept{flex:1;background-color:#059669;color:#fff;border:none;padding:1rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-accept:hover{background-color:#047857}.btn-reject{flex:1;background-color:#dc2626;color:#fff;border:none;padding:1rem;border-radius:8px;font-weight:600;cursor:pointer;transition:background-color .2s}.btn-reject:hover{background-color:#b91c1c}.status-reason-section{padding:1.5rem;border-radius:12px}.status-reason-section.rejection{background-color:#fee2e2;border:1px solid #fecaca;color:#991b1b}.status-reason-section.acceptance{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.status-reason-section h3{margin-top:0;font-size:1rem;margin-bottom:.5rem}.status-reason-section p{margin:0;font-size:.95rem}.admin-settings{animation:admin-fade-in .3s ease}.admin-settings-container{display:flex;gap:2rem;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px #0000000d}.admin-settings-sidebar{width:250px;background:#f8f9fa;padding:1.5rem 0;border-right:1px solid #e0e0e0}.admin-settings-tab{display:flex;align-items:center;gap:.8rem;width:100%;padding:1rem 1.5rem;border:none;background:transparent;text-align:left;font-size:1rem;color:#666;cursor:pointer;transition:all .3s ease}.admin-settings-tab:hover{background:#e9ecef;color:#1a2980}.admin-settings-tab.active{background:#1a2980;color:#fff;border-left:4px solid #26d0ce}.admin-settings-content{flex:1;padding:2rem}.admin-settings-section{margin-bottom:2rem}.admin-settings-section h3{color:#1a2980;margin-bottom:1.5rem;font-size:1.5rem;display:flex;align-items:center;gap:.5rem}.admin-settings-form{display:flex;flex-direction:column;gap:1.5rem}.admin-password-field{position:relative;width:100%}.admin-form-group input[type=password]{padding-right:2.5rem;letter-spacing:.1em}.admin-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#666;cursor:pointer;padding:4px;font-size:16px;display:flex;align-items:center;justify-content:center}.admin-password-toggle:hover{color:#333}.admin-phone-input{position:relative}.admin-phone-prefix{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#666;font-weight:500}.admin-form-group input[type=tel]{padding-left:3rem}.password-requirements{margin-top:10px;padding:12px;background:#f8f9fa;border-radius:8px;border-left:3px solid #3498db}.password-requirements h4{margin:0 0 8px;font-size:14px;color:#2c3e50}.requirement-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.requirement-item{display:flex;align-items:center;gap:8px;font-size:12px;color:#666}.requirement-item.met{color:#27ae60}.requirement-item.not-met{color:#e74c3c}.requirement-icon{font-size:14px}.password-match{display:flex;align-items:center;gap:5px;font-size:12px;margin-top:4px;opacity:0;transition:opacity .3s ease}.password-match.visible{opacity:1}.password-match.matching{color:#27ae60}.password-match.not-matching{color:#e74c3c}.admin-section-subtitle{color:#666;font-size:14px;margin:-10px 0 20px;font-style:italic}.admin-settings-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.admin-save-btn{padding:.8rem 2rem;background:#3498db;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease}.admin-save-btn:hover{background:#2980b9;transform:translateY(-2px)}.admin-save-btn:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.admin-reset-btn{padding:.8rem 2rem;background:#95a5a6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.admin-reset-btn:hover{background:#7f8c8d;transform:translateY(-2px)}.current-info{background:#f8f9fa;padding:12px 15px;border-radius:8px;margin-bottom:20px;font-size:14px;border-left:4px solid #3498db}.current-info p{margin:0;color:#555}.admin-settings-loading{display:flex;justify-content:center;align-items:center;min-height:300px;background:#fff;border-radius:15px}.admin-settings-spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #3498db;border-radius:50%;animation:admin-spin 1s linear infinite}@media(max-width:1024px){.admin-settings-container{flex-direction:column}.admin-settings-sidebar{width:100%;padding:0;border-right:none;border-bottom:1px solid #e0e0e0}.admin-settings-tab{justify-content:center}}@media(max-width:768px){.admin-settings-actions{flex-direction:column}.admin-settings-content{padding:1.5rem}}@media(max-width:480px){.admin-settings-content{padding:1rem}.admin-save-btn,.admin-reset-btn{width:100%;justify-content:center}}.admin-management{animation:admin-fade-in .3s ease}.admin-management-permissions-section{margin-top:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.admin-checkbox-text{display:flex;flex-direction:column;gap:2px}.admin-checkbox-text small{color:#666;font-size:12px}.admin-you-badge{font-size:11px;background:#3498db;color:#fff;padding:2px 8px;border-radius:10px;margin-left:8px}.admin-permissions-section{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-top:2rem}.admin-checkbox-group{flex-direction:row;align-items:center}.admin-checkbox-label{display:flex;align-items:center;gap:.8rem;cursor:pointer;font-size:.95rem}.admin-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.admin-management-save-btn{padding:.8rem 2rem;background:#3498db;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease}.admin-management-save-btn:hover{background:#2980b9;transform:translateY(-2px)}.admin-management-reset-btn{padding:.8rem 2rem;background:#95a5a6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.admin-management-reset-btn:hover{background:#7f8c8d;transform:translateY(-2px)}.admin-role-badge{font-size:12px;padding:3px 10px;border-radius:12px;font-weight:500}.admin-role-superadmin{background:#9b59b61a;color:#9b59b6}.admin-role-regular{background:#3498db1a;color:#3498db}@media(max-width:768px){.admin-management-actions{flex-direction:column;gap:1rem}.admin-management-save-btn,.admin-management-reset-btn{width:100%;justify-content:center}}.agency-dashboard{min-height:100vh;padding:20px;font-family:Poppins,sans-serif;background:var(--bg);color:var(--text-1)}.agency-navbar{max-width:1200px;margin:0 auto 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px 24px;box-shadow:var(--shadow-sm)}.agency-navbar-container{display:flex;justify-content:space-between;align-items:center}.agency-navbar-left{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.agency-nav-logo{display:flex;align-items:center}.agency-nav-logo-img{height:36px;width:auto;max-width:150px;object-fit:contain}.agency-navbar-logo{font-size:1.25rem;font-weight:700;color:var(--text-1);margin:0;letter-spacing:-.02em}.agency-navbar-status{display:flex;align-items:center;gap:8px}.agency-status-indicator{width:10px;height:10px;border-radius:50%}.agency-status-indicator.active{background:var(--success);box-shadow:0 0 0 3px #22c55e40}.agency-status-indicator.pending{background:var(--warning);box-shadow:0 0 0 3px #f59e0b40}.agency-status-indicator.rejected{background:var(--danger);box-shadow:0 0 0 3px #ef444440}.agency-status-text{font-size:.8rem;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}.agency-navbar-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.agency-navbar-user{display:flex;flex-direction:column;align-items:flex-end}.agency-user-name{font-weight:600;color:var(--text-1)}.agency-user-role{font-size:.85rem;color:var(--text-2)}.agency-navbar-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.agency-nav-btn{padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-2);font-weight:500;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s;font-size:.9rem;font-family:inherit}.agency-nav-btn:hover{background:var(--bg-hover);border-color:var(--border);box-shadow:var(--shadow-sm)}.agency-post-offer-btn{background:var(--brand);border-color:var(--brand);color:#fff}.agency-post-offer-btn:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}.agency-logout-btn{background:#ef444414;border-color:#ef444459;color:var(--danger)}.agency-logout-btn:hover{background:#ef444424}.agency-dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg);color:var(--text-1);font-size:1.1rem;font-family:Poppins,sans-serif}.agency-loading-spinner{width:48px;height:48px;border:4px solid var(--bg-hover);border-radius:50%;border-top-color:var(--brand);animation:agency-spin 1s linear infinite;margin-right:16px}@keyframes agency-spin{to{transform:rotate(360deg)}}.agency-error-alert{background:#ef444414;border:1px solid rgba(239,68,68,.35);border-radius:var(--radius-md);padding:20px;margin:0 auto 20px;max-width:800px;text-align:center}.agency-error-alert p{color:var(--danger);font-weight:500;margin-bottom:12px}.agency-error-alert button{background:var(--danger);color:#fff;border:none;padding:8px 20px;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-family:inherit}.agency-error-alert button:hover{filter:brightness(.95)}.agency-dashboard-header{max-width:1200px;margin:0 auto 28px;padding:24px 28px;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.agency-dashboard-header-left{display:flex;align-items:center;gap:20px}.agency-logo-container{width:80px;height:80px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;position:relative}.agency-logo-img{width:100%;height:100%;object-fit:contain;padding:6px}.no-logo-placeholder{font-size:2.25rem}.logo-upload-overlay{position:absolute;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;opacity:0;cursor:pointer;transition:opacity .25s ease}.agency-logo-container:hover .logo-upload-overlay{opacity:1}.upload-icon{color:#fff;font-size:1.5rem}.agency-dashboard-title{display:flex;flex-direction:column;gap:6px}.agency-dashboard-title-main{font-size:1.75rem;font-weight:800;color:var(--text-1);letter-spacing:-.03em}.agency-dashboard-title-sub{font-size:1rem;color:var(--text-2);font-weight:500}.agency-credit-display-mini{display:flex;flex-direction:column;align-items:center;background:linear-gradient(135deg,var(--warning) 0%,#d97706 100%);padding:14px 22px;border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-sm)}.agency-credit-label-mini{font-size:.85rem;font-weight:500;opacity:.95}.agency-credit-amount-mini{font-size:1.85rem;font-weight:700}.agency-dashboard-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.agency-dashboard-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.agency-dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.agency-card-header{padding:18px 22px;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff}.agency-card-title{font-size:1.2rem;font-weight:700;margin:0}.agency-card-body{padding:22px}.agency-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.agency-info-item{display:flex;flex-direction:column;gap:6px;padding:14px;background:var(--bg);border-radius:var(--radius-md);border:1px solid var(--border);transition:border-color .2s,background .2s}.agency-info-item:hover{background:var(--bg-hover);border-color:var(--border)}.agency-info-label{font-size:.75rem;color:var(--text-2);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.agency-info-value{font-size:1rem;color:var(--text-1);font-weight:600}.agency-documents-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.agency-document-item{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--border)}.agency-document-label{font-size:.8rem;color:var(--text-2);font-weight:500}.agency-document-value{font-size:.95rem;color:var(--text-1);font-weight:600;font-family:ui-monospace,Cascadia Code,monospace}.agency-credit-card .agency-card-header{background:linear-gradient(135deg,#d97706 0%,var(--warning) 100%)}.agency-credit-display{text-align:center;padding:12px 0}.agency-credit-amount{font-size:3rem;font-weight:800;color:var(--warning);line-height:1.1;margin-bottom:8px}.agency-credit-label{font-size:1.05rem;color:var(--text-2);font-weight:500}.agency-credit-note{font-size:.9rem;color:var(--text-2);margin:10px 0}.agency-credit-update{font-size:.8rem;color:var(--text-3);margin:8px 0}.agency-credit-refresh-btn{background:var(--brand);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;margin-top:12px;font-family:inherit;transition:background .2s,transform .2s}.agency-credit-refresh-btn:hover{background:var(--brand-dark);transform:translateY(-1px)}.agency-dashboard-footer{max-width:1200px;margin:28px auto 0;padding:16px;text-align:center}.agency-footer-note{color:var(--text-2);font-size:.9rem;font-weight:500}@media(max-width:768px){.agency-dashboard{padding:14px}.agency-navbar{padding:12px 16px}.agency-navbar-container{flex-direction:column;gap:14px;align-items:stretch}.agency-navbar-left,.agency-navbar-right{width:100%;justify-content:space-between}.agency-dashboard-header{flex-direction:column;text-align:center;padding:20px}.agency-dashboard-title-main{font-size:1.5rem}.agency-dashboard-content,.agency-info-grid,.agency-documents-grid{grid-template-columns:1fr}.agency-card-header{padding:16px 18px}.agency-card-body{padding:18px}.agency-credit-amount{font-size:2.5rem}}@media(max-width:480px){.agency-navbar-logo{font-size:1.1rem}.agency-navbar-actions{justify-content:center}.agency-dashboard-title-main{font-size:1.35rem}.agency-card-title{font-size:1.05rem}.agency-info-item{padding:12px}.agency-credit-amount{font-size:2rem}}.post-offer-container{padding:2rem;max-width:1200px;margin:0 auto;font-family:Poppins,sans-serif;background-color:var(--bg);min-height:100vh;color:var(--text-1)}.post-offer-header{display:flex;align-items:center;margin-bottom:2rem;gap:1rem}.back-btn{padding:.6rem 1.2rem;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-family:inherit;color:var(--text-2);transition:background .2s,border-color .2s,box-shadow .2s}.back-btn:hover{background-color:var(--bg-hover);border-color:var(--border);box-shadow:var(--shadow-sm)}.post-offer-header h1{margin:0;color:var(--text-1);font-size:1.75rem;font-weight:800;letter-spacing:-.02em}.post-offer-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media(max-width:992px){.post-offer-content{grid-template-columns:1fr}}.offer-form-section,.my-offers-section{background:var(--surface);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.offer-form-section h2,.my-offers-section h2{margin-top:0;margin-bottom:1.5rem;font-size:1.25rem;color:var(--text-1);border-bottom:1px solid var(--border);padding-bottom:.75rem;font-weight:700}.offer-form{display:flex;flex-direction:column;gap:1.2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--text-2);font-size:.9rem}.form-group input[type=text],.form-group textarea{padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;font-family:inherit;background:var(--surface);color:var(--text-1);transition:border-color .2s,box-shadow .2s}.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #3b82f626}.form-group textarea{resize:vertical}.form-group input[type=file]{padding:.5rem 0}.form-group small{color:var(--text-2);font-size:.8rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.submit-btn{background:var(--brand);color:#fff;border:none;padding:1rem;border-radius:var(--radius-sm);font-weight:600;font-size:1rem;cursor:pointer;font-family:inherit;transition:background .2s,transform .2s}.submit-btn:hover{background:var(--brand-dark)}.submit-btn:disabled{background:var(--text-3);cursor:not-allowed}.error-message{color:var(--danger);background-color:#ef444414;border:1px solid rgba(239,68,68,.3);padding:.85rem 1rem;border-radius:var(--radius-sm);font-size:.9rem}.success-message{color:var(--success);background-color:#22c55e1a;border:1px solid rgba(34,197,94,.35);padding:.85rem 1rem;border-radius:var(--radius-sm);font-size:.9rem}.offers-list{display:flex;flex-direction:column;gap:1rem}.offer-card{border:1px solid var(--border);border-radius:var(--radius-md);padding:1.2rem;background:var(--bg);transition:transform .2s,box-shadow .2s}.offer-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.offer-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.offer-card-header h3{margin:0;font-size:1.1rem;color:var(--text-1)}.status-badge{padding:.3rem .65rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:700}.status-pending{background-color:#f59e0b26;color:#b45309}.status-accepted{background-color:#22c55e1f;color:#15803d}.status-rejected{background-color:#ef44441a;color:#b91c1c}.offer-date{color:var(--text-2);font-size:.85rem;margin:.3rem 0 .8rem}.offer-desc-short{font-size:.9rem;color:var(--text-2);line-height:1.5;margin:0}.rejection-box{margin-top:1rem;padding:.85rem 1rem;background-color:#ef44440f;border-left:3px solid var(--danger);border-radius:var(--radius-sm)}.rejection-box strong{color:var(--danger);font-size:.85rem}.rejection-box p{margin:.35rem 0 0;font-size:.85rem;color:var(--text-2)}.no-offers{text-align:center;color:var(--text-3);padding:3rem 0}.loading-small{text-align:center;color:var(--text-2);padding:2rem 0}.admin-tickets{padding:24px;background-color:#f8f9fa;min-height:100vh}.admin-tickets-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-tickets-header h1{font-size:28px;color:#333;margin:0}.admin-tickets-actions{display:flex;gap:12px}.admin-btn{padding:10px 20px;border-radius:6px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.admin-btn-primary{background-color:#4a90e2;color:#fff}.admin-btn-primary:hover{background-color:#357abd}.admin-btn-secondary{background-color:#6c757d;color:#fff}.admin-btn-secondary:hover{background-color:#5a6268}.admin-btn-danger{background-color:#dc3545;color:#fff}.admin-btn-danger:hover{background-color:#c82333}.admin-tickets-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;transition:transform .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-label{font-size:14px;color:#6c757d;margin-bottom:8px}.stat-value{font-size:28px;font-weight:700;color:#333}.admin-tickets-filters{background:#fff;padding:20px;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.filter-input,.filter-select{padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:180px;flex:1 1 auto}.filter-input:focus,.filter-select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e233}.filter-checkbox{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;cursor:pointer;padding:0 8px}.filter-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.filter-clear{padding:10px 16px;background-color:#f8f9fa;border:1px solid #ddd;border-radius:6px;color:#666;font-size:14px;cursor:pointer;transition:all .3s ease}.filter-clear:hover{background-color:#e9ecef}.admin-tickets-table-container{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;overflow-x:auto;margin-bottom:24px}.admin-tickets-table{width:100%;border-collapse:collapse;min-width:1200px}.admin-tickets-table th,.admin-tickets-table td{padding:16px;text-align:left;border-bottom:1px solid #e9ecef}.admin-tickets-table th{background-color:#f8f9fa;font-weight:600;color:#333;font-size:14px}.admin-tickets-table tbody tr:hover{background-color:#f8f9fa}.admin-tickets-table tbody tr.time-up-row{background-color:#fff3f3;opacity:.8}.ticket-thumbnail{width:50px;height:50px;object-fit:cover;border-radius:6px}.no-image{width:50px;height:50px;background-color:#f0f0f0;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:10px;color:#999}.trip-type-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize}.trip-type-badge.one_way{background-color:#e3f2fd;color:#1976d2}.trip-type-badge.round_trip{background-color:#e8f5e8;color:#2e7d32}.trip-type-badge.multi_city{background-color:#fff3e0;color:#f57c00}.price-cell{display:flex;flex-direction:column;gap:4px}.original-price{text-decoration:line-through;color:#999;font-size:12px}.promo-price{color:#dc3545;font-weight:700;font-size:14px}.promo-badge{background-color:#dc3545;color:#fff;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500;display:inline-block;width:fit-content}.promo-toggle{padding:4px 8px;border:none;border-radius:4px;font-size:12px;cursor:pointer;background-color:#f0f0f0;color:#666;transition:all .3s ease}.promo-toggle.active{background-color:#28a745;color:#fff}.promo-toggle:hover{opacity:.8}.status-select{padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px;cursor:pointer}.status-select.active{background-color:#d4edda;color:#155724;border-color:#c3e6cb}.status-select.inactive{background-color:#f8d7da;color:#721c24;border-color:#f5c6cb}.time-up-badge{background-color:#dc3545;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.available-badge{background-color:#28a745;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.capacity-cell{display:flex;flex-direction:column;align-items:center;gap:4px}.capacity-cell .booked{font-weight:700;color:#2c3e50}.capacity-cell .divider{color:#95a5a6;font-size:12px}.capacity-cell .total{color:#7f8c8d;font-size:13px}.capacity-bar{width:60px;height:6px;background-color:#ecf0f1;border-radius:3px;overflow:hidden;margin-top:2px}.capacity-progress{height:100%;transition:width .3s ease}.actions-cell{display:flex;gap:8px}.action-btn{width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .3s ease}.action-btn.edit{background-color:#e3f2fd;color:#1976d2}.action-btn.edit:hover{background-color:#1976d2;color:#fff}.action-btn.delete{background-color:#ffebee;color:#dc3545}.action-btn.delete:hover{background-color:#dc3545;color:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.pagination button{padding:8px 16px;border:1px solid #ddd;background-color:#fff;border-radius:6px;cursor:pointer;transition:all .3s ease}.pagination button:hover:not(:disabled){background-color:#4a90e2;color:#fff;border-color:#4a90e2}.pagination button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background-color:#fff;border-radius:10px;padding:24px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content.delete-modal{max-width:400px;text-align:center}.modal-content h2{margin-bottom:20px;color:#333}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e233}.form-group.checkbox{display:flex;align-items:center}.form-group.checkbox label{display:flex;align-items:center;gap:8px;margin-bottom:0;cursor:pointer}.form-group.checkbox input[type=checkbox]{width:auto;margin-right:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.image-preview{width:100%;max-height:200px;object-fit:contain;margin-top:12px;border-radius:6px;border:1px solid #ddd}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions button{flex:1;padding:12px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s ease}.btn-primary{background-color:#4a90e2;color:#fff}.btn-primary:hover:not(:disabled){background-color:#357abd}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#5a6268}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover:not(:disabled){background-color:#c82333}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.warning{color:#dc3545;font-size:14px;margin:16px 0}.admin-tickets-loading{text-align:center;padding:40px;font-size:16px;color:#666}.error-message{background-color:#f8d7da;color:#721c24;padding:12px;border-radius:6px;margin-bottom:20px;border:1px solid #f5c6cb}@media(max-width:768px){.admin-tickets{padding:16px}.admin-tickets-header{flex-direction:column;gap:16px}.admin-tickets-actions{width:100%;flex-wrap:wrap}.admin-tickets-stats{grid-template-columns:repeat(2,1fr)}.admin-tickets-filters{flex-direction:column}.filter-input,.filter-select,.filter-checkbox,.filter-clear{width:100%}.form-row{grid-template-columns:1fr}.modal-content{width:95%;padding:20px}}.privacy-page{min-height:100vh;padding:1.25rem 1rem 4rem;background:var(--background, #f8fafc)}.privacy-inner{max-width:42rem;margin:0 auto}.privacy-page h1{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;color:var(--foreground, #0f172a)}.privacy-updated{font-size:.875rem;color:#64748b;margin-bottom:1.5rem}.privacy-page section{margin-bottom:1.75rem}.privacy-page h2{font-size:1.1rem;font-weight:600;margin:0 0 .5rem;color:#0f172a}.privacy-page p,.privacy-page li{font-size:.9375rem;line-height:1.75;color:#334155;margin:0 0 .65rem}.privacy-page ul{padding-inline-start:1.25rem;margin:.5rem 0 0}.privacy-page a{color:#2563eb;text-decoration:underline;text-underline-offset:2px}.privacy-contact-box{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1rem 1.25rem;margin-top:1rem}.App{min-height:100vh}.fade-in{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
