.toast-container{bottom:16px;display:flex;flex-direction:column;gap:10px;position:fixed;right:16px;z-index:1500}.toast-item{background:#fff;border:1px solid #ddd;border-left:6px solid #888;border-radius:8px;box-shadow:0 4px 16px #00000026;color:#111;min-width:260px;padding:10px 12px;position:relative}.toast-info{border-left-color:#3b82f6}.toast-success{border-left-color:#16a34a}.toast-warning{border-left-color:#f59e0b}.toast-error{border-left-color:#dc2626}.toast-message{margin-right:28px}.toast-actions{display:flex;gap:8px;margin-top:8px}.toast-action-btn{background:#7c3aed;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:6px 10px}.toast-close{background:none;border:none;cursor:pointer;font-size:16px;position:absolute;right:8px;top:6px}.prompt-form{background:#fff;border:1px solid #e9ecef;border:1px solid var(--card-border,#e9ecef);border-radius:12px;border-radius:var(--radius,12px);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm,0 2px 8px #0000000f);margin:20px auto;max-width:720px;padding:20px}.prompt-form h2{color:#7c3aed;color:var(--brand,#7c3aed);margin-bottom:16px;text-align:center}.form-group{margin-bottom:15px}.form-group label{color:#000;margin-bottom:5px}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text],.form-group textarea{background:#fff;border:1px solid #e9ecef;border:1px solid var(--card-border,#e9ecef);border-radius:8px;box-sizing:border-box;color:#000;font-size:16px;min-height:48px;padding:14px 16px;width:100%}.form-group input[type=date]::-webkit-calendar-picker-indicator{height:28px;width:28px}.form-group input[type=date]::-moz-calendar-picker-indicator{height:28px;width:28px}.form-group textarea{resize:vertical}.prompt-form button{background:#7c3aed;background:var(--brand,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:16px;padding:12px 20px;transition:background-color .3s ease;width:100%}.prompt-form button:hover:not(:disabled){box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm,0 2px 8px #0000000f);filter:brightness(.98)}.prompt-form button:disabled{background:#ccc;cursor:not-allowed}.form-group input:focus,.form-group textarea:focus{border-color:#7c3aed;border-color:var(--brand,#7c3aed);box-shadow:0 0 0 3px #7c3aed24;outline:none}.itinerary-display{background:#fff;background:var(--surface,#fff);border:1px solid #e9ecef;border:1px solid var(--card-border,#e9ecef);border-radius:12px;border-radius:var(--radius,12px);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm,0 2px 8px #0000000f);line-height:1.6;margin:20px auto;max-width:800px;padding:20px}.itinerary-display h3{color:#7c3aed;color:var(--brand,#7c3aed);margin-bottom:15px;text-align:center}.itinerary-display h1,.itinerary-display h2,.itinerary-display h3,.itinerary-display h4{color:#22223b;margin-bottom:.5em;margin-top:1.5em}.itinerary-display h1{font-size:2em}.itinerary-display h2{font-size:1.75em}.itinerary-display h3{font-size:1.5em}.itinerary-display h4{font-size:1.25em}.itinerary-display ul{list-style-type:disc;margin-left:20px;padding-left:0}.itinerary-display li{margin-bottom:8px}.itinerary-display p{margin-bottom:1em}.itinerary-display strong{font-weight:700}.itinerary-display em{font-style:italic}.itinerary-display a{border-bottom:1px solid #0000;color:#1a73e8;font-weight:500;text-decoration:none;transition:all .2s ease}.itinerary-display a:hover{border-bottom:1px solid #1557b0;color:#1557b0;text-decoration:none}.itinerary-display a:visited{color:#5e35b1}.itinerary-display a[href*="google.com/maps"]:before{content:"📍 ";font-size:.9em}.itinerary-display hr{background:#eee;border:0;height:1px;margin:2em 0}.charge-details{background:#ede9fe;background:var(--brand-light,#ede9fe);border-radius:8px;box-shadow:0 2px 8px #7c3aed14;margin-top:18px;padding:18px 20px}.charge-details p{color:#3b2f63;font-weight:500;margin:0 0 10px}.charge-details .proceed-to-pay-btn{background:#7c3aed;background:var(--brand,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:16px;margin-top:12px;padding:12px 20px;transition:background-color .3s ease;width:100%}.charge-details .proceed-to-pay-btn:hover:not(:disabled){box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm,0 2px 8px #0000000f);filter:brightness(.98)}.proceed-to-pay-btn{background:#7c3aed;background:var(--brand,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:16px;margin-top:16px;padding:12px 20px;transition:background-color .3s ease;width:100%}.proceed-to-pay-btn:hover:not(:disabled){box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm,0 2px 8px #0000000f);filter:brightness(.98)}.proceed-to-pay-btn:disabled{background-color:#ccc;cursor:not-allowed}.preview-compact{line-height:1.4}.preview-compact p{line-height:1.4;margin:6px 0}.preview-compact ol,.preview-compact ul{margin:6px 0 8px 1.1em;padding-left:1.1em}.preview-compact li{line-height:1.35;margin:2px 0}.preview-compact li,.preview-compact ol,.preview-compact ul{white-space:normal}.preview-compact li>p{display:inline;margin:0}.preview-compact li>p+p{display:block;margin-top:4px}.preview-compact h1,.preview-compact h2,.preview-compact h3,.preview-compact h4,.preview-compact h5,.preview-compact h6{margin-bottom:.4em;margin-top:.75em}.chunk-progress-modal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.chunk-progress-modal h2{color:#333;font-size:1.5rem;margin-bottom:1.5rem;margin-top:0}.chunk-status{align-items:center;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;display:flex;padding:.75rem;transition:all .3s ease}.chunk-status.chunk-processing{background:#fff9e6;border-color:#ffc107}.chunk-status.chunk-completed{background:#e8f5e9;border-color:#4caf50}.chunk-status.chunk-failed{background:#ffebee;border-color:#f44336}.status-icon{font-size:1.25rem;margin-right:.75rem;min-width:1.5rem;text-align:center}.chunk-processing .status-icon{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chunk-label{color:#333;flex:1 1;font-weight:500}.status-text{color:#666;font-size:.9rem}.status-error{color:#f44336;font-size:.85rem;margin-left:.5rem}.progress-info p{color:#333;margin:.5rem 0}.error-message{color:#d32f2f}.error-message p{margin:0}.completion-message p{color:#2e7d32;font-weight:500;margin:0}@media (max-width:640px){.chunk-progress-modal{padding:1.5rem}.chunk-progress-modal h2{font-size:1.25rem}.chunk-status{font-size:.9rem;padding:.5rem}.status-icon{font-size:1rem;margin-right:.5rem;min-width:1.25rem}}.payment-mode-selector{margin:20px 0}.selector-title{color:#1f2937;font-size:1.2rem;font-weight:600;margin-bottom:15px}.payment-mode-option{align-items:flex-start;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;gap:15px;margin-bottom:12px;padding:16px;transition:all .2s}.payment-mode-option:hover:not(.disabled){background:#f9fafb;border-color:#667eea;transform:translateX(2px)}.payment-mode-option.selected{background:linear-gradient(135deg,#667eea0d,#764ba20d);border-color:#667eea;box-shadow:0 2px 8px #667eea26}.payment-mode-option.disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.radio-button{align-items:center;border:2px solid #d1d5db;border-radius:50%;display:flex;height:24px;justify-content:center;margin-top:2px;min-width:24px;transition:border-color .2s;width:24px}.payment-mode-option.selected .radio-button{border-color:#667eea}.radio-inner{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;height:12px;width:12px}.option-content{flex:1 1}.option-header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:5px}.option-title{color:#1f2937;font-size:1.05rem;font-weight:600}.option-description{color:#6b7280;font-size:.9rem;line-height:1.4}.credit-badge{border-radius:12px;font-size:.85rem;font-weight:600;padding:4px 12px;white-space:nowrap}.credit-badge.active{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.credit-badge.depleted{background:#fef3c7;border:1px solid #fbbf24;color:#92400e}.refill-info{color:#f59e0b;font-size:.8rem;font-style:italic;margin-top:5px}.subscription-prompt{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid #667eea4d;border-radius:8px;color:#4b5563;font-size:.9rem;margin-top:10px;padding:12px 16px}.mode-info{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;color:#1e40af;font-size:.85rem;margin-top:10px;padding:10px 14px}@media (max-width:768px){.payment-mode-option{gap:12px;padding:12px}.option-header{align-items:flex-start;flex-direction:column;gap:5px}.option-title{font-size:1rem}.option-description{font-size:.85rem}.credit-badge{font-size:.8rem;padding:3px 10px}}.itinerary-generator-page{background:#f8f9fa;min-height:100vh;padding:20px}.itinerary-hero{background:linear-gradient(135deg,#5b21b6,#7c3aed);background:linear-gradient(135deg,var(--brand-darker),var(--brand));border-radius:12px;border-radius:var(--radius);box-shadow:0 6px 20px #0000001f;box-shadow:var(--shadow-md);color:#fff;color:var(--text-on-brand);margin-bottom:16px;overflow:hidden;padding:28px 24px;position:relative}.itinerary-hero .eyebrow{color:#ede9fe;color:var(--brand-light);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.itinerary-hero h1{font-size:clamp(26px,4vw,38px);margin:0 0 6px}.itinerary-hero p{margin:0;opacity:.95}.itinerary-panel{background:#fff;background:var(--surface);border:1px solid #e9ecef;border:1px solid var(--card-border);border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);padding:16px}.reveal.delay-1{animation-delay:.06s}.reveal.delay-2{animation-delay:.12s}.reveal.delay-3{animation-delay:.18s}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f8f9fad9;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:9999}.loading-overlay .spinner{animation:spin .8s linear infinite;background:#fff;border:4px solid #ede9fe;border-top-color:#7c3aed;border:4px solid var(--brand-light);border-radius:50%;border-top-color:var(--brand);box-shadow:0 4px 12px #00000026;height:60px;width:60px}.loading-overlay .loading-message{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#7c3aed;color:var(--brand);font-size:16px;font-weight:500;margin-top:16px;padding:8px 16px}.loading-message{color:#6c757d;color:var(--muted);font-style:italic;margin-top:16px;text-align:center}.error-message{background-color:#ffe0e0;border:1px solid #d8000c;color:#d8000c;margin:16px auto;max-width:720px;padding:10px;text-align:center}:root{--input-padding:8px}.login-card form{display:flex;flex-direction:column;gap:12px}.login-card .name-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.login-card input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px;padding:var(--input-padding);width:100%}.login-card label{color:#0f172a;font-size:14px}.login-card .actions-row{align-items:center;display:flex;gap:8px}@media (max-width:520px){.login-card .name-grid{grid-template-columns:1fr}}.profile-page{background:#f8f9fa;min-height:100vh;padding:20px}.profile-hero{background:linear-gradient(135deg,#5b21b6,#7c3aed);background:linear-gradient(135deg,var(--brand-darker),var(--brand));border-radius:12px;border-radius:var(--radius);box-shadow:0 6px 20px #0000001f;box-shadow:var(--shadow-md);color:#fff;color:var(--text-on-brand);margin:0 auto 16px;overflow:hidden;padding:28px 24px;position:relative}.profile-hero .eyebrow{color:#ede9fe;color:var(--brand-light);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.profile-hero h1{font-size:clamp(26px,4vw,38px);margin:0 0 6px}.profile-hero p{margin:0;opacity:.95}.profile-card{background:#fff;background:var(--surface);border:1px solid #e9ecef;border:1px solid var(--card-border);border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);margin:0 auto;max-width:900px;padding:16px}.profile-title{color:#7c3aed;color:var(--brand,#7c3aed);font-weight:700;letter-spacing:.5px;margin:0 0 12px;text-align:center}.profile-table{background:#fafbfc;border-collapse:collapse;border-radius:12px;overflow:hidden;width:100%}.profile-table td,.profile-table th{border-bottom:1px solid #eaeaea;padding:12px 10px;text-align:left}.profile-table th{background:#ede9fe;background:var(--brand-light,#f5f6fa);color:#555;font-weight:600;text-transform:capitalize;width:40%}.profile-table td{color:#222;word-break:break-all}.profile-error,.profile-loading{color:#6c757d;font-size:1rem;margin:16px 0;text-align:center}.status-dot{background:#9ca3af;background:var(--status-neutral,#9ca3af);border-radius:50%;box-shadow:inset 0 0 0 1px #0000000f;height:8px;width:8px}.dot-paid{background:#10b981;background:var(--status-paid,#10b981)}.dot-unpaid{background:#f59e0b;background:var(--status-unpaid,#f59e0b)}.orders-page-wrap{background:#f8f9fa;min-height:100vh;padding:20px}.orders-hero{background:linear-gradient(135deg,#5b21b6,#7c3aed);background:linear-gradient(135deg,var(--brand-darker,#5b21b6),var(--brand,#7c3aed));border-radius:12px;box-shadow:0 6px 20px #0000001f;color:#fff;margin-bottom:16px;overflow:hidden;padding:28px 24px;position:relative;.order-id{color:#3a5a40;font-family:monospace;white-space:normal;word-break:break-all}}.orders-hero .eyebrow{color:#ede9fe;color:var(--brand-light,#ede9fe);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.orders-hero h1{font-size:clamp(26px,4vw,38px);margin:0 0 6px}.orders-hero p{margin:0;opacity:.95}.orders-card{background:#000;border:1px solid #ffffff0f;border-radius:12px;box-shadow:0 2px 8px #0000000f;color:#fff;padding:16px}.orders-card .orders-title{color:#7c3aed;color:var(--brand,#7c3aed)}.orders-title:after{display:none}.orders-table{border-collapse:initial;border-radius:12px;border-spacing:0;box-shadow:0 1px 4px #0000000a;overflow:hidden;table-layout:auto;width:100%}.orders-table td,.orders-table th{display:table-cell;padding:14px 12px;text-align:left;vertical-align:top}.orders-table th{background:#f5f7fa;background:var(--brand-light,#f5f7fa);border-bottom:2px solid #e3e8ee;color:#22223b}.orders-table tr:nth-child(2n){background:#f8fafc}.orders-table tr:hover{background:#e9ecef;transition:background .2s}.orders-table td{border-bottom:1px solid #f1f3f7;color:#22223b}.orders-card .orders-table{background:#fff!important}.orders-card .orders-table td,.orders-card .orders-table th{color:#22223b!important}.status-badge{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:12px;justify-content:center;padding:4px 10px}.status-badge.paid{background:#10b98129;border-color:#10b98147;color:#e6fff4}.status-badge.unpaid{background:#7c3aed29;border-color:#7c3aed47;color:#f3e8ff}.order-id{color:#3a5a40;font-family:monospace}.order-itinerary{color:#495057;font-style:italic;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.orders-pagination{align-items:center;display:flex;justify-content:space-between;margin-top:24px}.orders-pagination .orders-btn{color:#22223b}.orders-btn{background:#7c3aed;background:var(--brand,#7c3aed);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:8px 18px;transition:background .2s}.orders-btn:disabled{background:#e9ecef;color:#adb5bd;cursor:not-allowed}.orders-page{color:#fff;font-size:.9rem;font-weight:500}.order-inline-actions{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px}.orders-btn.secondary{background:#ede9fe;background:var(--brand-light,#ede9fe);border:1px solid #7c3aed47;color:#7c3aed;color:var(--brand,#7c3aed)}.orders-btn.sm{border-radius:999px;font-size:12px;padding:6px 10px}.cloud-badge{align-items:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:999px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 10px}.order-modal-overlay{align-items:center;background:#1e293b73;display:flex;justify-content:center;pointer-events:auto;z-index:10000}.order-modal{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;box-shadow:0 4px 32px #0000002e;max-height:80vh;max-width:90vw;min-width:320px;overflow-y:auto;padding:32px 28px 24px;position:relative}@media (max-width:400px){.order-modal{min-width:auto;padding:24px 16px;width:92vw}}.order-modal h3{color:#22223b;margin-bottom:18px;margin-top:0;text-align:center}.order-modal-footer{align-items:center;display:flex;gap:12px;justify-content:center;margin-top:16px}.orders-card .orders-title{text-align:center}.order-detail-table{border-collapse:collapse;margin-bottom:12px;width:100%}.order-detail-label{color:#064e3b;font-weight:600;padding:8px 12px 8px 0;vertical-align:top;width:120px}.order-detail-value{color:#22223b;padding:8px 0 8px 8px;word-break:break-all}@media (max-width:640px){.order-detail-table,.order-detail-table tbody,.order-detail-table td,.order-detail-table tr{display:block;width:100%}.order-detail-label{padding:8px 0 4px;width:auto}.order-detail-value{overflow-wrap:anywhere;padding:0 0 12px;word-break:break-word}.order-inline-actions{align-items:stretch;display:flex;flex-direction:column}.order-modal .orders-btn{width:100%}.order-modal-footer{align-items:stretch;flex-direction:column}}.orders-table td .status-badge{color:#22223b!important}.reveal{animation:fadeUp .5s ease forwards}@media (prefers-reduced-motion:reduce){.reveal{animation:none;opacity:1}}.orders-skeleton{display:block}.orders-skeleton>div{margin-bottom:12px}.sk-block{animation:shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eceef6 25%,#f5f6fb 37%,#eceef6 63%);background-size:400% 100%;border-radius:8px;height:14px}.sk-block.sm{width:30%}.sk-block.md{width:60%}.sk-block.lg{width:90%}.orders-loading-overlay{align-items:center;background:#fff9;display:flex;flex-direction:column;gap:12px;inset:0;justify-content:center;pointer-events:none;position:fixed;z-index:9990}.orders-loading-overlay .spinner{animation:spin .9s linear infinite;border:4px solid #7c3aed33;border-radius:50%;border-top:4px solid var(--brand,#7c3aed);height:48px;width:48px}.orders-loading-overlay .spinner-text{color:#4338ca;font-size:14px}@keyframes spin{to{transform:rotate(1turn)}}.email-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;display:flex;inset:0;justify-content:center;position:fixed;z-index:10020}.email-modal{animation:fadeUp .4s ease;background:linear-gradient(145deg,#fff,#f8f9fb);border-radius:16px;box-shadow:0 8px 36px -4px #0000002e;padding:28px 24px 24px;position:relative;width:min(420px,92vw)}.email-modal h4{color:#1e293b;font-size:20px;font-weight:600;margin:0 0 16px;text-align:center}.email-label{color:#475569;display:block;font-size:13px;font-weight:600;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.email-input{background:#fff;border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;font-size:14px;outline:none;padding:12px 14px;transition:border-color .18s,box-shadow .18s;width:100%}.email-input:focus{border-color:#7c3aed;border-color:var(--brand,#7c3aed);box-shadow:0 0 0 3px #7c3aed38}.email-input:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.modal-actions{gap:12px}.modal-actions .orders-btn.secondary{background:#eef2ff;border:1px solid #7c3aed59;color:#7c3aed;color:var(--brand,#7c3aed)}.modal-actions .orders-btn.secondary:hover:not(:disabled){background:#e2e8ff}.email-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.email-error,.email-success{font-size:13px;line-height:1.4;margin-top:10px;padding:8px 10px}.email-success{animation:fadeIn .4s ease;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;color:#065f46}@media (max-width:520px){.email-modal{padding:24px 18px 20px;width:94vw}.modal-actions{align-items:stretch;flex-direction:column-reverse}.modal-actions .orders-btn{width:100%}}.subscription-page{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;min-height:100vh}.subscription-page .container{flex:1 1;margin:0 auto;max-width:1200px;padding:40px 20px;width:100%}.subscription-page h1{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:10px;text-align:center}.subscription-page .subtitle{color:#ffffffe6;font-size:1.1rem;margin-bottom:40px;text-align:center}.subscription-page .loading{color:#fff;font-size:1.2rem;padding:60px 20px;text-align:center}.subscription-page .error-message{background:#dc2626e6;border-radius:8px;color:#fff;margin-bottom:20px;padding:15px 20px;text-align:center}.current-subscription{margin-bottom:40px}.current-subscription h2{color:#fff;font-size:1.8rem;margin-bottom:20px;text-align:center}.subscription-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;margin:0 auto;max-width:600px;padding:30px}.subscription-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:20px}.subscription-header h3{color:#667eea;font-size:1.8rem;margin:0;text-transform:capitalize}.status-badge{border-radius:20px;font-weight:600;padding:6px 16px;text-transform:uppercase}.status-badge.active{background:#10b981;color:#fff}.status-badge.trialing{background:#3b82f6;color:#fff}.status-badge.past_due{background:#f59e0b;color:#fff}.status-badge.canceled{background:#6b7280;color:#fff}.subscription-details{margin:20px 0}.detail-row{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px 0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#6b7280;font-weight:500}.detail-row .value{color:#1f2937;font-weight:600}.detail-row .trips-count{color:#667eea;font-size:1.2rem}.cancel-notice{background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;color:#92400e;font-size:.9rem;margin-top:15px;padding:12px}.btn-cancel{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:20px;padding:12px 24px;transition:background .3s;width:100%}.btn-cancel:hover:not(:disabled){background:#dc2626}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}.plans-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:40px 0}.plan-card{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0003;display:flex;flex-direction:column;padding:30px;transition:transform .3s,box-shadow .3s}.plan-card:hover{box-shadow:0 15px 40px #0000004d;transform:translateY(-5px)}.plan-header{margin-bottom:20px;position:relative;text-align:center}.plan-header h3{color:#1f2937;font-size:1.6rem;margin:0 0 10px;text-transform:capitalize}.discount-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;color:#fff;display:inline-block;font-size:.8rem;font-weight:700;padding:4px 12px}.plan-price{margin:20px 0 30px;text-align:center}.plan-price .currency{color:#667eea;font-size:1.5rem;font-weight:600;vertical-align:top}.plan-price .amount{color:#667eea;font-size:3rem;font-weight:800}.plan-price .period{color:#6b7280;font-size:1rem;font-weight:500}.plan-features{flex:1 1;margin:20px 0}.feature{align-items:center;color:#4b5563;display:flex;padding:10px 0}.feature-icon{color:#10b981;font-size:1.2rem;font-weight:700;margin-right:10px}.btn-subscribe{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:20px;padding:14px 24px;transition:opacity .3s,transform .2s;width:100%}.btn-subscribe:hover:not(:disabled){opacity:.9;transform:scale(1.02)}.btn-subscribe:disabled{cursor:not-allowed;opacity:.6}.plan-comparison{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:12px;margin-top:40px;padding:30px;text-align:center}.plan-comparison h3{color:#fff;font-size:1.5rem;margin-bottom:15px}.plan-comparison p{color:#ffffffe6;font-size:1.1rem;line-height:1.6}@media (max-width:768px){.subscription-page h1{font-size:2rem}.subscription-page .subtitle{font-size:1rem}.plans-grid{gap:20px;grid-template-columns:1fr}.plan-card{padding:20px}.plan-price .amount{font-size:2.5rem}.subscription-card{padding:20px}.subscription-header{align-items:flex-start;flex-direction:column;gap:10px}}.legal-page{margin:0 auto;max-width:880px;padding:16px}.legal-page h1{margin-bottom:8px;margin-top:0}.legal-page .muted{color:#6c757d;color:var(--muted,#6c757d);font-size:14px;margin-bottom:16px}.legal-page h2{margin-top:24px}.legal-page li,.legal-page p{line-height:1.6}.legal-page ul{padding-left:20px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f2f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.navbar{background:linear-gradient(135deg,#5b21b6,#7c3aed);background:linear-gradient(135deg,var(--brand-darker,#5b21b6),var(--brand,#7c3aed));box-shadow:0 4px 18px #0000001f;padding:10px 0}.nav-list{display:flex;justify-content:center;list-style-type:none;margin:0;padding:0}.nav-item{margin:0 15px}.nav-link,.nav-link:active,.nav-link:focus,.nav-link:visited{background:none;border:none;color:#fff;cursor:pointer;display:inline-block;font-family:inherit;font-size:1rem;font-weight:500;margin:0;outline:none;padding:0;text-decoration:none}.nav-item button.nav-link{-webkit-appearance:none;appearance:none;background:none;border:none;color:inherit;cursor:pointer;font:inherit;margin:0;outline:none;padding:0}.nav-link:hover{color:#fff}.nav-link.active,.nav-link:hover{text-decoration:underline}.container{padding:20px}.navbar select{-webkit-appearance:none;appearance:none;background:#ffffff24;border:1px solid #fff6;border-radius:8px;color:#fff;padding:6px 8px}.navbar select:focus{outline:2px solid #ffffffb3;outline-offset:2px}.subscription-credit-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;padding:6px 14px;transition:all .3s;-webkit-user-select:none;user-select:none}.subscription-credit-badge:hover{background:linear-gradient(135deg,#7c8ef5,#8557b3);box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.subscription-credit-badge:active{transform:translateY(0)}.badge-icon{font-size:1.1rem;line-height:1}.badge-text{align-items:baseline;display:flex;gap:3px}.trips-count{font-size:1.1rem;font-weight:700}.trips-label{font-size:.85rem;opacity:.95}@media (max-width:768px){.subscription-credit-badge{font-size:.85rem;padding:5px 12px}.badge-icon,.trips-count{font-size:1rem}.trips-label{font-size:.8rem}}@media (max-width:480px){.trips-label{display:none}}:root{--brand-darker:#5b21b6;--brand:#7c3aed;--brand-light:#ede9fe;--text-on-brand:#fff;--text:#212529;--muted:#6c757d;--card-border:#e9ecef;--surface:#fff;--chip-bg:#ffffff26;--chip-border:#fff6;--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 6px 20px #0000001f;--radius:12px;--radius-sm:8px}@media (prefers-color-scheme:dark){:root{--surface:#101417;--text:#e9ecef;--muted:#9aa0a6;--card-border:#1f272c;--chip-bg:#ffffff1f;--chip-border:#ffffff47;--shadow-sm:0 2px 8px #0006;--shadow-md:0 6px 20px #00000073}}.home-wrap{display:flex;flex-direction:column;gap:32px}.home-hero{background:linear-gradient(135deg,#5b21b6,#7c3aed);background:linear-gradient(135deg,var(--brand-darker),var(--brand));border-radius:12px;border-radius:var(--radius);box-shadow:0 6px 20px #0000001f;box-shadow:var(--shadow-md);color:#fff;color:var(--text-on-brand);overflow:hidden;padding:28px 24px;position:relative}.home-hero .eyebrow{color:#ede9fe;color:var(--brand-light)}.home-hero .hero-title{color:#fff}.home-hero .hero-subtitle{color:#ffffffeb}.home-hero h1{letter-spacing:.2px;margin:0 0 6px}.eyebrow{color:#7c3aed;color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:6px;text-transform:uppercase}.hero-title{font-size:clamp(28px,4.5vw,42px);line-height:1.1;margin:0 0 6px}.hero-subtitle{color:#6c757d;color:var(--muted);margin:0}.home-hero p{margin:0;opacity:.95}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.btn{align-items:center;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;gap:8px;justify-content:center;padding:10px 16px;transition:transform .08s ease,box-shadow .2s ease,background .2s ease;-webkit-user-select:none;user-select:none}.btn:active{transform:translateY(1px)}.btn-pill{border-radius:9999px;font-weight:600;padding:12px 18px}.btn-primary{background:#fff;border:none;color:#5b21b6;color:var(--brand-darker)}.btn-primary:hover{box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);filter:brightness(.98)}.btn-ghost{background:#fff3;border:1px solid #fff9;color:#fff}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.chip{background:#ffffff26;background:var(--chip-bg);border:1px solid #fff6;border:1px solid var(--chip-border);border-radius:999px;color:#fff;cursor:pointer;font-size:14px;padding:8px 14px;transition:background .15s ease,border-color .15s ease,transform .08s ease,box-shadow .2s ease}.chip:hover{background:#ffffff38;box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.chip:active{transform:translateY(0)}.chip:focus-visible{outline:2px solid #fff9;outline-offset:2px}.chip--food{background:#f43f5e2e;border-color:#f43f5e66}.chip--art{background:#3b82f62e;border-color:#3b82f666}.chip--family{background:#10b9812e;border-color:#10b98166}.section h3{margin:0 0 8px}.how-steps{line-height:1.6;margin:0}.flow{align-items:center;display:flex;gap:12px;justify-content:space-between;list-style:none;margin:8px 0 0;padding:0;position:relative}.flow:before{background:linear-gradient(90deg,#ede9fe,#7c3aed59);background:linear-gradient(90deg,var(--brand-light),#7c3aed59);content:"";height:2px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:0}.flow-step{display:flex;flex:1 1;justify-content:center;position:relative}.flow-node{background:#efe6ff;border:1px solid #7c3aed2e;border-radius:9999px;box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);gap:10px;padding:10px 14px;position:relative;z-index:1}.flow-node,.flow-num{align-items:center;display:inline-flex}.flow-num{background:#7c3aed;background:var(--brand);border-radius:9999px;box-shadow:0 2px 8px #7c3aed59;color:#fff;font-size:14px;font-weight:700;height:28px;justify-content:center;width:28px}.flow-text{color:#000;font-weight:700}@media (max-width:640px){.flow{align-items:flex-start;flex-direction:column;gap:14px;padding-left:8px}.flow:before{background:linear-gradient(180deg,#ede9fe,#7c3aed59);background:linear-gradient(180deg,var(--brand-light),#7c3aed59);bottom:0;height:100%;left:22px;right:auto;top:0;transform:none;width:2px}.flow-step{justify-content:flex-start;width:100%}.flow-node{box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm)}}.features{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.feature-card{background:#efe6ff;border:1px solid #7c3aed2e;border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);padding:16px;transition:transform .08s ease,box-shadow .2s ease}.feature-card:hover{box-shadow:0 6px 20px #0000001f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.icon-badge{align-items:center;background:#ede9fe;background:var(--brand-light);border-radius:999px;color:#7c3aed;color:var(--brand);display:inline-flex;font-size:20px;height:40px;justify-content:center;margin-bottom:8px;width:40px}.feature-card:hover .icon-badge{transform:scale(1.03);transition:transform .12s ease}.feature-title{color:#000;font-weight:800;margin:4px 0}.feature-text{color:#000;line-height:1.5;margin:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate{animation:fadeUp .5s ease forwards;opacity:0}.animate.delay-1{animation-delay:.06s}.animate.delay-2{animation-delay:.12s}.animate.delay-3{animation-delay:.18s}@media (prefers-reduced-motion:reduce){.animate{animation:none;opacity:1}}.reveal{opacity:0;transform:translateY(8px);transition:opacity .4s ease,transform .4s ease}.reveal.in{opacity:1;transform:translateY(0)}.hero-orb{background:radial-gradient(circle at center,#7c3aed42,#7c3aed00 60%);filter:blur(22px);height:80vmax;left:50%;left:var(--orbX,50%);pointer-events:none;position:absolute;top:50%;top:var(--orbY,50%);transform:translate(-50%,-50%);transition:left .15s ease,top .15s ease;width:80vmax}@media (prefers-reduced-motion:reduce){.hero-orb{display:none}}.for-you-actions{display:flex;flex-wrap:wrap;gap:12px}.recent{background:#ede9fe;background:var(--brand-light);border-radius:12px;border-radius:var(--radius);margin-top:12px;padding:16px;position:relative}.recent,.recent .card{border:1px solid #7c3aed2e}.recent .card{background:#efe6ff;color:#000}.recent .card .title{color:#000}.recent .card .subtitle{color:#000000d9}.recent .card .meta{color:#000000b3}.recent .actions a,.recent .card .status{color:#000}.recent-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.skeleton-card{animation:shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,#eceef6 25%,#f5f6fb 37%,#eceef6 63%);background-size:400% 100%;border:1px solid #e9ecef;border:1px solid var(--card-border);border-radius:10px;overflow:hidden;padding:12px;position:relative}.sk-line{background:#00000014;border-radius:6px;height:10px;margin-bottom:8px}.sk-line.short{width:40%}.sk-line.med{width:70%}.sk-line.long{width:90%}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.card{background:#fff;background:var(--surface);border:1px solid #e9ecef;border:1px solid var(--card-border);border-radius:10px;box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);padding:12px;transition:transform .08s ease,box-shadow .2s ease}.card:hover{box-shadow:0 6px 20px #0000001f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.card .title{font-weight:600;margin-bottom:4px}.card .subtitle{color:#495057;font-size:13px;margin-bottom:4px}.card .meta{color:#6c757d;color:var(--muted);font-size:12px;margin-bottom:8px}.card .row{justify-content:space-between}.card .row,.card .row .actions{align-items:center;display:flex;gap:8px}.btn-small{background:#ede9fe;background:var(--brand-light);border:1px solid #dcd6fe;border-radius:999px;color:#7c3aed;color:var(--brand);font-size:12px;padding:6px 10px;transition:filter .15s ease,box-shadow .2s ease,transform .08s ease}.btn-small:hover{box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);filter:brightness(.98);transform:translateY(-1px)}.btn-soft,.recent .actions a{color:#7c3aed;color:var(--brand)}.btn-soft{align-items:center;background:#ede9fe;background:var(--brand-light);border:1px solid #dcd6fe;border-radius:999px;cursor:pointer;display:inline-flex;font-size:12px;justify-content:center;padding:6px 10px;text-decoration:none;transition:filter .15s ease,box-shadow .2s ease,transform .08s ease}.btn-soft:hover{box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);filter:brightness(.98);transform:translateY(-1px)}.muted{color:#6c757d;color:var(--muted)}@media (max-width:640px){.home-hero{padding:22px 16px}}.support-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.support-card{background:#efe6ff;border:1px solid #7c3aed2e;border-radius:12px;border-radius:var(--radius);box-shadow:0 2px 8px #0000000f;box-shadow:var(--shadow-sm);padding:16px;transition:transform .08s ease,box-shadow .2s ease}.support-card:hover{box-shadow:0 6px 20px #0000001f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.support-title{color:#000;font-weight:800;margin:4px 0}.support-text{color:#000;line-height:1.5;margin:0 0 10px}.recent-spinner-overlay{align-items:center;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#ffffff73;display:flex;inset:0;justify-content:center;position:absolute;z-index:10}.recent-spinner{animation:home-spin .9s linear infinite;border:3px solid #00000026;border-radius:50%;border-top:3px solid var(--brand,#7c3aed);height:28px;width:28px}@keyframes home-spin{to{transform:rotate(1turn)}}.destination-recommender{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:2rem 1rem}.recommender-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;margin:0 auto;max-width:900px;padding:3rem 2rem}.recommender-container h1{color:#2d3748;font-size:2rem;margin-bottom:2rem;text-align:center}.progress-steps{display:flex;justify-content:space-between;margin-bottom:3rem;padding:0 2rem;position:relative}.progress-steps:before{background:#e2e8f0;content:"";height:2px;left:10%;position:absolute;right:10%;top:20px;z-index:0}.progress-step{flex-direction:column;gap:.5rem;position:relative;z-index:1}.progress-step,.step-number{align-items:center;display:flex}.step-number{background:#e2e8f0;border-radius:50%;color:#a0aec0;font-weight:700;height:40px;justify-content:center;transition:all .3s ease;width:40px}.progress-step.active .step-number{background:#667eea;color:#fff}.step-label{color:#718096;font-size:.875rem;font-weight:500}.progress-step.active .step-label{color:#2d3748}.wizard-step{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.wizard-step h2{color:#2d3748;font-size:1.5rem;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#4a5568;display:block;font-weight:600;margin-bottom:.5rem}.form-group input[type=date],.form-group input[type=text]{border:2px solid #e2e8f0;border-radius:8px;font-size:1.125rem;min-height:52px;padding:1rem 1.25rem;transition:border-color .2s;width:100%}.form-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;height:32px;width:32px}.form-group input[type=date]::-moz-calendar-picker-indicator{cursor:pointer;height:32px;width:32px}.form-group input:focus{border-color:#667eea;outline:none}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.radio-group{display:flex;flex-wrap:wrap;gap:1rem}.radio-label{align-items:center;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s}.radio-label:hover{background:#f7fafc;border-color:#667eea}.radio-label input[type=radio]{cursor:pointer;margin:0}.radio-label input[type=radio]:checked+span,.radio-label:has(input:checked){background:#eef2ff;border-color:#667eea;color:#667eea;font-weight:600}.interest-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin-top:1rem}.interest-btn{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1rem;transition:all .2s}.interest-btn:hover{border-color:#667eea;transform:translateY(-2px)}.interest-btn.selected{background:#667eea;border-color:#667eea;color:#fff}.interest-btn.selected.secondary{background:#48bb78;border-color:#48bb78}.wizard-buttons{display:flex;gap:1rem;justify-content:space-between;margin-top:3rem}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover:not(:disabled){background:#5568d3;box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover{background:#cbd5e0}.results-subtitle{color:#718096;margin-bottom:2rem;text-align:center}.recommendations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;margin-bottom:2rem}.destination-card{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .3s}.destination-card:hover{border-color:#667eea;box-shadow:0 8px 24px #667eea33;transform:translateY(-4px)}.destination-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:1rem}.destination-header h3{color:#2d3748;font-size:1.25rem;margin:0}.budget-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.budget-badge.excellent{background:#c6f6d5;color:#22543d}.budget-badge.good{background:#bee3f8;color:#2c5282}.budget-badge.stretch{background:#fed7d7;color:#742a2a}.destination-tagline{color:#4a5568;font-style:italic;font-weight:600;margin-bottom:.5rem}.destination-description{color:#718096;line-height:1.6;margin-bottom:1rem}.destination-meta{background:#fff;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem}.meta-item{color:#4a5568;font-size:.875rem}.meta-item strong{color:#2d3748}.btn-select-destination{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem;transition:all .2s;width:100%}.btn-select-destination:hover{background:#5568d3;box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.error-message{background:#fed7d7;border-left:4px solid #fc8181;border-radius:8px;color:#742a2a;margin-bottom:1.5rem;padding:1rem}@media (max-width:768px){.recommender-container{padding:2rem 1rem}.progress-steps{padding:0 1rem}.step-label{font-size:.75rem}.form-row{grid-template-columns:1fr}.radio-group{flex-direction:column}.interest-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.wizard-buttons{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.date-range-picker{background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:20px}.picker-section{margin-bottom:16px}.picker-section:last-child{margin-bottom:0}.picker-label{color:#333;display:block;font-size:14px;font-weight:600;margin-bottom:12px}.preset-buttons{display:flex;flex-wrap:wrap;gap:8px}.preset-btn{background:#fff;border:1px solid #d0d0d0;border-radius:6px;color:#555;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.preset-btn:hover{background:#f7f7ff;border-color:#667eea;color:#667eea}.preset-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;font-weight:500}.custom-dates{border-top:1px solid #f0f0f0;display:flex;gap:16px;padding-top:12px}.date-input-group{display:flex;flex:1 1;flex-direction:column;gap:6px}.date-input-group label{color:#666;font-size:13px;font-weight:500}.date-input{border:1px solid #d0d0d0;border-radius:6px;color:#333;font-size:16px;min-height:48px;padding:12px 16px;transition:border-color .2s}.date-input::-webkit-calendar-picker-indicator{cursor:pointer;height:28px;width:28px}.date-input::-moz-calendar-picker-indicator{cursor:pointer;height:28px;width:28px}.date-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.picker-actions{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;padding-top:16px}.compare-checkbox{align-items:center;color:#555;cursor:pointer;display:flex;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.compare-checkbox input[type=checkbox]{accent-color:#667eea;cursor:pointer;height:18px;width:18px}.action-buttons{display:flex;gap:10px}.apply-btn,.reset-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.reset-btn{background:#f5f5f5;color:#666}.reset-btn:hover{background:#e8e8e8;color:#333}.apply-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;min-width:100px}.apply-btn:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.apply-btn:active{transform:translateY(0)}@media (max-width:768px){.date-range-picker{padding:16px}.preset-buttons{gap:6px}.preset-btn{font-size:13px;padding:6px 12px}.custom-dates{flex-direction:column;gap:12px}.picker-actions{align-items:stretch;flex-direction:column;gap:16px}.action-buttons{justify-content:stretch;width:100%}.apply-btn,.reset-btn{flex:1 1}}.revenue-bar-chart{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;width:100%}.chart-container{align-items:flex-end;display:flex;gap:16px;height:300px;justify-content:space-around;padding:20px 10px;position:relative}.bar-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px;height:100%;max-width:100px;min-width:50px}.bar-value{color:#4f46e5;font-size:.75rem;font-weight:600;min-height:20px;text-align:center;white-space:nowrap}.bar-track{align-items:flex-end;display:flex;flex:1 1;position:relative;width:100%}.bar-fill{background:linear-gradient(0deg,#4f46e5,#7c3aed,#a855f7);border-radius:6px 6px 0 0;box-shadow:0 -2px 10px #4f46e566;cursor:pointer;min-height:5px;transition:all .3s ease;width:100%}.bar-fill:hover{box-shadow:0 -4px 16px #4f46e599;transform:translateY(-2px)}.bar-fill:after{background:linear-gradient(180deg,#ffffff4d,#fff0);content:"";height:30%;left:0;position:absolute;right:0;top:0}.bar-label{color:#666;font-size:.7rem;font-weight:500;margin-top:20px;max-width:100px;overflow:hidden;text-align:center;text-overflow:ellipsis;transform:rotate(-45deg);transform-origin:center;white-space:nowrap}.no-chart-data{color:#999;font-style:italic;padding:60px 20px;text-align:center}@media (max-width:768px){.chart-bars{gap:8px;height:250px}.bar-container{max-width:80px;min-width:40px}.bar-value{font-size:.65rem}.bar-label{font-size:.6rem;margin-top:15px}}@media (max-width:480px){.chart-bars{gap:4px;height:200px}.bar-container{max-width:60px;min-width:30px}.bar-value{display:none;font-size:.6rem}.bar-label{font-size:.55rem}}.admin-dashboard{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:2rem}.admin-dashboard>*{margin-left:auto;margin-right:auto;max-width:1400px}.admin-header{color:#fff;margin-bottom:3rem}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}.header-content>div:first-child{text-align:left}.admin-header h1{color:#fff;font-size:2.8rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px #0000001a}.admin-subtitle{color:#ffffffe6;font-size:1.2rem}.export-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.export-btn{border:none;border-radius:8px;box-shadow:0 2px 8px #00000026;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease;white-space:nowrap}.export-btn:hover:not(:disabled){box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.export-btn:disabled{cursor:not-allowed;opacity:.5}.export-csv{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.export-pdf{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.export-copy{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.section-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem;margin-top:3rem}.section-header h2{color:#fff;font-size:1.8rem;font-weight:600;margin:0;text-shadow:0 2px 4px #0000001a}.refresh-button{align-items:center;background:#fff;border:2px solid #fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#667eea;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.refresh-button:hover:not(:disabled){background:#fffffff2;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.refresh-button:active:not(:disabled){transform:translateY(0)}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.refresh-icon{display:inline-block;font-size:1.2rem;transition:transform .3s ease}.refresh-button:hover:not(:disabled) .refresh-icon{transform:rotate(180deg)}.kpis-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.kpi-card{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;display:flex;gap:1rem;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease}.kpi-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-5px)}.kpi-icon{flex-shrink:0;font-size:2.5rem}.kpi-content{flex-grow:1}.kpi-label{color:#666;font-size:.9rem;font-weight:500;margin-bottom:.25rem}.kpi-value{color:#333;font-size:1.8rem;font-weight:700}.kpi-card.primary{border-left:4px solid #667eea}.kpi-card.success{border-left:4px solid #10b981}.kpi-card.info{border-left:4px solid #3b82f6}.kpi-card.warning{border-left:4px solid #f59e0b}.kpi-card.danger{border-left:4px solid #ef4444}.kpis-loading{color:#fff;font-size:1.1rem;padding:2rem;text-align:center}.admin-cards{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.admin-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;cursor:pointer;padding:2.5rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.admin-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-5px)}.admin-card-icon{font-size:3.5rem;margin-bottom:1rem}.admin-card h2{color:#333;font-size:1.6rem;font-weight:600;margin-bottom:.5rem}.admin-card p{color:#666;font-size:1rem;margin-bottom:1.5rem}.admin-card-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:transform .2s ease,box-shadow .2s ease}.admin-card-button:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.admin-info{background:#fffffff2;border:2px solid #ffc10780;border-radius:12px;box-shadow:0 2px 8px #0000001a;color:#856404;padding:1rem 1.5rem;text-align:center}.admin-info p{color:#856404;margin:0}.loading{color:#fff;font-size:1.2rem;padding:3rem;text-align:center}.trends-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.trends-grid,.trends-tables{display:grid;margin-bottom:2rem}.trends-tables{grid-gap:2rem;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.trend-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:1.5rem}.trend-table-container h3{color:#333;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.table-wrapper{border:1px solid #e5e7eb;border-radius:8px;max-height:400px;overflow-y:auto}.trend-table{border-collapse:collapse;font-size:.9rem;width:100%}.trend-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:1}.trend-table th{border-bottom:2px solid #fff3;font-weight:600;padding:.75rem 1rem;text-align:left}.trend-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s ease}.trend-table tbody tr:hover{background-color:#f9fafb}.trend-table tbody tr:last-child{border-bottom:none}.trend-table td{color:#333;padding:.75rem 1rem}.trend-table td:first-child{color:#666;font-weight:500}.revenue-cell{color:#667eea!important}.orders-cell,.revenue-cell{font-weight:600;text-align:right}.orders-cell{color:#10b981!important}.users-cell{color:#f59e0b!important;font-weight:600;text-align:right}.no-data{color:#9ca3af!important;padding:2rem 1rem!important;text-align:center!important}.analytics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:2rem}.analytics-card{background:#fff;border-radius:16px;box-shadow:0 4px 12px #0000001a;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease}.analytics-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-5px)}.analytics-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem}.analytics-icon{font-size:1.8rem}.analytics-header h3{color:#333;font-size:1.2rem;font-weight:600;margin:0}.analytics-content{padding:.5rem 0}.analytics-list{list-style:none;margin:0;padding:0}.analytics-item{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;gap:.75rem;padding:.75rem 0}.analytics-item:last-child{border-bottom:none}.analytics-item .rank{color:#667eea;font-size:1rem;font-weight:700;min-width:30px}.analytics-item .item-label{color:#444;flex-grow:1;font-weight:500}.analytics-item .item-value{color:#333;font-size:1rem;font-weight:700}.no-data{color:#999;font-style:italic;padding:1.5rem;text-align:center}@media (max-width:768px){.admin-dashboard{padding:1rem}.admin-header h1{font-size:2.2rem}.admin-subtitle{font-size:1rem}.section-header h2{font-size:1.5rem}.admin-cards,.kpis-grid{gap:1rem;grid-template-columns:1fr}.kpi-value{font-size:1.5rem}.admin-card-icon{font-size:2.5rem}.analytics-grid{grid-template-columns:1fr}.analytics-item .item-label,.analytics-item .item-value{font-size:.9rem}.section-header{align-items:flex-start;flex-direction:column}.refresh-button{justify-content:center;width:100%}.trends-grid,.trends-tables{grid-template-columns:1fr}.trend-table{font-size:.85rem}.trend-table td,.trend-table th{padding:.5rem .75rem}.revenue-charts-grid{gap:16px;grid-template-columns:1fr}.chart-section h3{font-size:1rem}}.date-range-display{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:8px;box-shadow:0 2px 4px #0000000d;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:12px 20px}.range-label{color:#555;font-size:14px;font-weight:600}.range-dates{color:#667eea;font-size:14px;font-weight:700}.comparison-indicator{color:#666;font-size:13px;font-style:italic}.kpi-change{border-radius:4px;display:inline-block;font-size:.9rem;font-weight:600;margin-top:8px;padding:4px 8px}.kpi-change.positive{background:#10b9811a;color:#10b981}.kpi-change.negative{background:#ef44441a;color:#ef4444}.trend-period{color:#667eea;font-size:.85rem;font-weight:400;margin-left:8px}.revenue-charts-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:2rem}.chart-section{display:flex;flex-direction:column;gap:16px}.chart-section h3{color:#333;font-size:1.1rem;font-weight:600;margin:0;padding-left:8px}@media print{.admin-dashboard{background:#fff;padding:1rem}.admin-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;margin-bottom:1rem;padding:1rem}.date-range-picker,.export-buttons{display:none!important}.section-header h2{border-bottom:2px solid #667eea;color:#333;padding-bottom:.5rem}.kpi-card,.revenue-bar-chart{border:1px solid #e0e0e0;box-shadow:none;page-break-inside:avoid}.trend-chart{page-break-inside:avoid}@page{margin:1cm}}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column}.header-content>div:first-child{text-align:center;width:100%}.export-buttons{justify-content:center;width:100%}.export-btn{flex:1 1;min-width:100px}}.admin-orders{margin:0 auto;max-width:1400px;padding:40px 20px}.admin-orders-header{margin-bottom:30px}.admin-orders-header h1{font-size:2rem;margin-bottom:10px}.orders-table{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.orders-table table{border-collapse:collapse;width:100%}.orders-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;font-weight:600;padding:15px;text-align:left}.orders-table td{border-bottom:1px solid #dee2e6;padding:15px}.orders-table tr:hover{background:#f8f9fa}.order-id,.user-id{color:#666;font-family:monospace;font-size:.9rem}.status-completed{background:#d4edda;color:#155724}.status-refunded{background:#f8d7da;color:#721c24}.modal{max-width:500px}.modal-content p{margin:10px 0}.modal-content label{display:block;font-weight:500;margin-top:15px}.modal-content textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:1rem;margin-top:8px;padding:10px;resize:vertical;width:100%}.modal-actions button:first-child{background:#6c757d;color:#fff}.modal-actions button:first-child:hover{background:#5a6268}.refund-confirm{background:#dc3545!important;color:#fff!important}.refund-confirm:hover:not(:disabled){background:#c82333!important}.refund-confirm:disabled{background:#ccc!important;cursor:not-allowed}@media (max-width:768px){.orders-table{font-size:.9rem}.orders-table td,.orders-table th{padding:10px 8px}}.admin-payments{margin:0 auto;max-width:1400px;padding:40px 20px}.admin-payments-header{margin-bottom:30px}.admin-payments-header h1{font-size:2rem;margin-bottom:10px}.back-button{background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;margin-bottom:20px;padding:8px 16px}.back-button:hover{background:#e0e0e0}.filters{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.filters label{align-items:center;display:flex;font-weight:500;gap:10px}.filters input,.filters select{border:1px solid #ddd;border-radius:6px;font-size:1rem;padding:8px 12px}.filters input{min-width:200px}.filters input::placeholder{color:#999}.payments-table{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.payments-table table{border-collapse:collapse;width:100%}.payments-table th{background:#f8f9fa;border-bottom:2px solid #dee2e6;font-weight:600;padding:15px;text-align:left}.payments-table td{border-bottom:1px solid #dee2e6;padding:15px}.payments-table tr:hover{background:#f8f9fa}.order-id,.payment-id,.user-id{color:#666;font-family:monospace;font-size:.9rem}.status-badge{border-radius:12px;display:inline-block;font-size:.85rem;font-weight:500;padding:4px 12px}.status-succeeded{background:#d4edda;color:#155724}.status-pending{background:#fff3cd;color:#856404}.status-failed{background:#f8d7da;color:#721c24}.status-refunded{background:#d1ecf1;color:#0c5460}.status-unknown{background:#e2e3e5;color:#383d41}.view-button{background:#4285f4;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;margin-right:8px;padding:6px 16px}.view-button:hover{background:#357ae8}.refund-button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:6px 16px}.refund-button:hover{background:#c82333}.refund-button:disabled{background:#ccc;cursor:not-allowed}.pagination{align-items:center;display:flex;gap:20px;justify-content:center;margin-top:30px}.pagination button{background:#4285f4;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 20px}.pagination button:disabled{background:#ccc;cursor:not-allowed}.pagination button:not(:disabled):hover{background:#357ae8}.error,.loading{font-size:1.1rem;padding:60px 20px;text-align:center}.error{color:#dc3545}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;max-height:90vh;max-width:600px;overflow-y:auto;padding:30px;width:90%}.modal h2{margin-top:0}.modal h2,.modal-content{margin-bottom:20px}.detail-section{border-bottom:1px solid #dee2e6;margin-bottom:25px;padding-bottom:20px}.detail-section:last-child{border-bottom:none}.detail-section h3{color:#333;font-size:1.1rem;margin-bottom:15px}.detail-section p{align-items:center;display:flex;justify-content:space-between;margin:8px 0}.detail-section strong{color:#666;min-width:150px}.detail-section a{color:#4285f4;text-decoration:none}.detail-section a:hover{text-decoration:underline}.loading-text{color:#999;font-style:italic;text-align:center}.verify-button{background:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:background .2s}.verify-button:hover:not(:disabled){background:#138496}.verify-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.stripe-verification{background:#e7f9f5;border-left:4px solid #28a745}.stripe-verification h3{color:#28a745}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.modal-actions button{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 20px}.modal-actions button:hover{background:#5a6268}@media (max-width:768px){.payments-table{font-size:.9rem}.payments-table td,.payments-table th{padding:10px 8px}.detail-section p{align-items:flex-start;flex-direction:column;gap:4px}.detail-section strong{min-width:auto}}body{background:#f8f9fa;font-family:Arial,sans-serif;margin:0}:root{--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px}body,html{box-sizing:border-box;height:100%;max-width:100%;overflow-x:hidden;width:100%}*,:after,:before{box-sizing:inherit}canvas,img,svg,video{height:auto;max-width:100%}.container{max-width:100%;padding:clamp(12px,2.5vw,32px);padding:clamp(var(--space-3),2.5vw,var(--space-6))}.nav-list,.navbar{flex-wrap:wrap}.nav-list{gap:8px 16px;gap:var(--space-2) var(--space-4)}.navbar .nav-right{align-items:center;display:flex;flex-shrink:0;margin-left:auto}@media (max-width:768px){.navbar{flex-wrap:wrap}.nav-list{justify-content:flex-start}.navbar .nav-right{margin-left:auto}}@media (max-width:640px){.itinerary-display{margin:12px auto;margin:var(--space-3) auto;padding:12px;padding:var(--space-3)}.itinerary-display h1{font-size:clamp(1.5rem,6vw,2rem)}.itinerary-display h2{font-size:clamp(1.35rem,5.5vw,1.75rem)}.itinerary-display h3{font-size:clamp(1.2rem,5vw,1.5rem)}.charge-details .proceed-to-pay-btn,.proceed-to-pay-btn{font-size:.95rem;padding:12px}}.order-modal-overlay{height:auto!important;inset:0;position:fixed;width:auto!important}@media (max-width:400px){.order-modal{min-width:auto!important;padding:24px 16px;padding:var(--space-5) var(--space-4);width:92vw}}.orders-card{overflow-x:auto}body.modal-open{overflow:hidden}@supports (-webkit-overflow-scrolling:touch){.order-modal-overlay{transform:translateZ(0)}}
/*# sourceMappingURL=main.86375c14.css.map*/