*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:15px;line-height:1.5}html,body,#root{height:100%;min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit;font-size:inherit}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0px 1000px var(--bg-surface) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary);transition:background-color 9999s ease-in-out 0s}img{display:block;max-width:100%}:root{--brand: #5B5BD6;--brand-dark: #4848b8;--brand-light: #ebebff;--brand-fg: #ffffff;--bg-page: #f0f2f5;--bg-surface: #ffffff;--bg-hover: #f5f5f5;--bg-muted: #f8fafc;--text-primary: #111827;--text-secondary: #6b7280;--text-muted: #9ca3af;--text-inverse: #ffffff;--bg-inverse: #1e293b;--border: #e5e7eb;--border-focus: var(--brand);--bubble-user-bg: var(--brand);--bubble-user-fg: #ffffff;--bubble-bot-bg: #fafafa;--bubble-bot-fg: #111827;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 20px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0,0,0,.06);--shadow-md: 0 6px 24px rgba(15,15,15,.08);--shadow-lg: 0 15px 35px rgba(15,15,15,.15);--shadow-elevated: 0 10px 30px rgba(15,15,15,.08);--typing-primary: var(--brand);--typing-secondary: var(--brand-dark);--bubble-user-gradient: linear-gradient(135deg, #111111, #27272a);--transition: .15s ease;--badge-purple-text: #6d28d9;--badge-purple-border: rgba(109,40,217,.55);--badge-green-text: #15803d;--badge-green-border: rgba(21,128,61,.55);--badge-blue-text: #1d4ed8;--badge-blue-border: rgba(29,78,216,.55);--badge-amber-text: #b45309;--badge-amber-border: rgba(180,83,9,.55)}html[data-theme=dark]{--bg-page: #09090b;--bg-surface: #111318;--bg-hover: #171a20;--bg-muted: #0f1116;--text-primary: #f3f4f6;--text-secondary: #a1a1aa;--text-muted: #71717a;--text-inverse: #0b0f18;--bg-inverse: #e5e7eb;--border: #27272a;--border-focus: var(--brand-light);--bubble-bot-bg: #1c1c1f;--bubble-bot-fg: #f3f4f6;--shadow-sm: 0 2px 8px rgba(0,0,0,.28);--shadow-md: 0 8px 30px rgba(0,0,0,.35);--shadow-lg: 0 18px 50px rgba(0,0,0,.42);--shadow-elevated: 0 10px 30px rgba(0,0,0,.3);--bubble-user-gradient: linear-gradient(135deg, #111111, #27272a);--badge-purple-text: #c4b5fd;--badge-purple-border: rgba(196,181,253,.65);--badge-green-text: #86efac;--badge-green-border: rgba(134,239,172,.65);--badge-blue-text: #93c5fd;--badge-blue-border: rgba(147,197,253,.65);--badge-amber-text: #fbbf24;--badge-amber-border: rgba(251,191,36,.65)}::selection{background:color-mix(in srgb,var(--brand) 24%,white)}#root{isolation:isolate}body{overscroll-behavior-y:none}@media(max-width:767px){input[type=text],input[type=email],input[type=tel],input[type=password],textarea{font-size:16px!important}}@supports (padding: env(safe-area-inset-bottom)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@keyframes typing-wave{0%,to{transform:translateY(0) scale(1);opacity:.6}50%{transform:translateY(-8px) scale(1.1);opacity:1}}@keyframes jn-bubbleGlow{0%,to{opacity:0;transform:scale(1)}50%{opacity:.6;transform:scale(1.02)}}@keyframes jn-iconPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.15);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes jn-iconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes jn-iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes jn-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes jn-fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes jn-slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes jn-slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes jn-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes jn-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes jn-pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}@keyframes jn-pulse-recording{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 12px #ef444400}to{box-shadow:0 0 #ef444400}}@keyframes jn-audio-pulse{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}@keyframes jn-toast-in{0%{opacity:0;transform:translateY(-16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes jn-toast-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-16px) scale(.96)}}@keyframes jn-autoSendProgress{0%{width:0%}to{width:100%}}@keyframes jn-orbRotate{to{transform:rotate(360deg)}}@keyframes jn-orbBreathe{0%,to{transform:scale(1);filter:brightness(1) saturate(1)}50%{transform:scale(1.08);filter:brightness(1.15) saturate(1.2)}}@keyframes jn-orbHaloBreathe{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.7;transform:scale(1.35)}}@keyframes jn-shimmerText{0%{background-position:200% 50%}to{background-position:-100% 50%}}@keyframes jn-shimmerSheen{0%{transform:translate(-120%) skew(-18deg);opacity:0}20%{opacity:.6}60%{opacity:.6}to{transform:translate(220%) skew(-18deg);opacity:0}}.jn-thinking-orb{position:relative;width:28px;height:28px;flex-shrink:0;display:inline-block}.jn-thinking-orb__halo{position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(from 0deg,#6366f1,#8b5cf6,#ec4899,#06b6d4,#22c55e,#6366f1);filter:blur(8px);animation:jn-orbRotate 4s linear infinite,jn-orbHaloBreathe 2.6s ease-in-out infinite;will-change:transform,opacity}.jn-thinking-orb__core{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#6366f1,#8b5cf6,#ec4899,#06b6d4,#22c55e,#6366f1);animation:jn-orbRotate 3s linear infinite,jn-orbBreathe 2.4s ease-in-out infinite;will-change:transform,filter;box-shadow:inset 0 0 0 1px #ffffff40}.jn-thinking-orb__core:after{content:"";position:absolute;inset:2.5px;border-radius:50%;background:var(--bubble-bot-bg);box-shadow:inset 0 1px 2px #0000000a}.jn-thinking-orb__plane{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1;pointer-events:none;color:#1e3a8a}.jn-thinking-orb__plane svg{width:62%;height:62%;display:block}@keyframes jn-iconSwap{0%{opacity:0;transform:translateY(3px) scale(.85)}60%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}.jn-icon-swap{animation:jn-iconSwap .36s cubic-bezier(.22,1,.36,1)}html[data-theme=dark] .jn-thinking-orb__plane{color:#93c5fd}.jn-shimmer-text{background:linear-gradient(90deg,var(--text-muted) 0%,var(--text-muted) 30%,var(--text-primary) 50%,var(--text-muted) 70%,var(--text-muted) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:jn-shimmerText 2.4s linear infinite;font-weight:500;letter-spacing:-.005em;white-space:nowrap}html[data-theme=dark] .jn-shimmer-text{background:linear-gradient(90deg,#ffffff59 0% 30%,#fffffff2 50%,#ffffff59 70% 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text}.jn-thinking-bubble{position:relative;overflow:hidden}.jn-thinking-bubble:after{content:"";position:absolute;top:0;left:0;width:35%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.45) 50%,transparent 100%);animation:jn-shimmerSheen 2.8s ease-in-out infinite;pointer-events:none;mix-blend-mode:overlay}html[data-theme=dark] .jn-thinking-bubble:after{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%)}@media(prefers-reduced-motion:reduce){.jn-thinking-orb__core,.jn-thinking-orb__halo,.jn-shimmer-text,.jn-thinking-bubble:after{animation:none!important}}.jn-markdown{font-size:var(--bubble-bot-fs, .9375rem);line-height:1.65;letter-spacing:-.01em;color:var(--text-primary);font-feature-settings:"kern" 1,"liga" 1}.jn-markdown h1,.jn-markdown h2,.jn-markdown h3,.jn-markdown h4{line-height:1.25;color:var(--text-primary);font-weight:700;margin:0}.jn-markdown h1{font-size:1.2em;font-weight:700;letter-spacing:-.025em;margin-top:1.25em;margin-bottom:.5em;padding-bottom:.35em;border-bottom:1.5px solid var(--border)}.jn-markdown>h1:first-child{margin-top:0}.jn-markdown h2{font-size:1.0625em;font-weight:650;letter-spacing:-.015em;margin-top:1.5em;margin-bottom:.4em;display:flex;align-items:center;gap:.5em}.jn-markdown>h2:first-child{margin-top:0}.jn-markdown h2:before{content:"";display:inline-block;width:3px;height:1em;border-radius:2px;background:var(--brand);flex-shrink:0}.jn-markdown h3{font-size:.9375em;font-weight:600;letter-spacing:-.01em;margin-top:1.1em;margin-bottom:.3em;color:var(--brand)}html[data-theme=dark] .jn-markdown h3{color:#818cf8}.jn-markdown>h3:first-child{margin-top:0}.jn-markdown h4{font-size:.875em;font-weight:600;margin-top:1em;margin-bottom:.25em;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.jn-markdown p{margin:0 0 .75em;color:var(--text-primary)}.jn-markdown p:last-child{margin-bottom:0}.jn-markdown h2+p,.jn-markdown h3+p{margin-top:0}.jn-markdown ul,.jn-markdown ol{margin:.5em 0 .85em;padding-left:0;list-style:none}.jn-markdown li{position:relative;padding-left:1.3em;margin-bottom:.35em;line-height:1.6;color:var(--text-primary)}.jn-markdown ul>li:before{content:"";position:absolute;left:.35em;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--brand);flex-shrink:0}.jn-markdown ol{counter-reset:jn-ol}.jn-markdown ol>li{counter-increment:jn-ol}.jn-markdown ol>li:before{content:counter(jn-ol) ".";position:absolute;left:0;top:0;font-size:.8125em;font-weight:700;color:var(--brand);line-height:2;min-width:1.1em;text-align:right}.jn-markdown ul ul,.jn-markdown ol ul,.jn-markdown ul ol,.jn-markdown ol ol{margin:.2em 0;padding-left:0}.jn-markdown ul ul>li:before{width:4px;height:4px;background:var(--text-muted);top:.65em}.jn-markdown a{color:var(--brand);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--brand) 40%,transparent);text-underline-offset:2px;transition:text-decoration-color .15s ease,color .15s ease}.jn-markdown a:hover{text-decoration-color:var(--brand)}.jn-markdown strong{font-weight:650;color:var(--text-primary)}.jn-markdown em{font-style:italic}.jn-markdown blockquote{border-left:3px solid var(--brand);padding:6px 0 6px 14px;margin:.6em 0;color:var(--text-secondary);background:color-mix(in srgb,var(--brand) 5%,transparent);border-radius:0 8px 8px 0;font-style:italic}html[data-theme=dark] .jn-markdown blockquote{background:color-mix(in srgb,var(--brand) 8%,transparent)}.jn-markdown code{font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,monospace;font-size:.8125em;background:color-mix(in srgb,var(--brand) 9%,transparent);color:var(--brand);padding:1.5px 5px;border-radius:5px;border:1px solid color-mix(in srgb,var(--brand) 18%,transparent);font-feature-settings:normal}html[data-theme=dark] .jn-markdown code{background:color-mix(in srgb,var(--brand) 14%,transparent);color:#a5b4fc;border-color:color-mix(in srgb,var(--brand) 25%,transparent)}.jn-markdown pre{margin:.7em 0;border-radius:var(--radius-sm);overflow:hidden;position:relative}.jn-markdown pre code{background:none;border:none;padding:0;border-radius:0;font-size:.85em;color:inherit}.jn-markdown table{min-width:100%;border-collapse:collapse;margin:.7em 0;font-size:.875em}.jn-markdown th,.jn-markdown td{border:1px solid var(--border);padding:7px 12px;text-align:left;vertical-align:top;min-width:80px}.jn-markdown th{font-size:.8125em;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb,var(--brand) 8%,var(--bg-muted));color:var(--brand);border-color:color-mix(in srgb,var(--brand) 20%,var(--border))}html[data-theme=dark] .jn-markdown th{background:color-mix(in srgb,var(--brand) 12%,var(--bg-muted));color:#a5b4fc}.jn-markdown tbody tr:nth-child(2n) td{background:var(--bg-muted)}.jn-markdown hr{border:none;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--brand) 35%,transparent),transparent);margin:1.2em 0}.jn-markdown img{max-width:100%;border-radius:var(--radius-sm);margin:.5em 0;box-shadow:var(--shadow-sm)}.jn-markdown>*:first-child{margin-top:0!important}.jn-markdown>*:last-child{margin-bottom:0!important}.jn-markdown .iata-code{font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,monospace;font-size:.8em;font-weight:700;letter-spacing:.08em;background:color-mix(in srgb,var(--brand) 9%,transparent);color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 22%,transparent);padding:1px 6px;border-radius:5px}html[data-theme=dark] .jn-markdown .iata-code{background:color-mix(in srgb,var(--brand) 14%,transparent);color:#a5b4fc;border-color:color-mix(in srgb,var(--brand) 28%,transparent)}.jn-markdown .flight-number{display:inline-flex;align-items:center;gap:4px;font-size:.82em;font-weight:700;letter-spacing:.04em;color:#fff;background:linear-gradient(120deg,var(--brand),#7c3aed);padding:2px 9px 2px 7px;border-radius:6px;white-space:nowrap}.jn-markdown .flight-number:before{content:"✈";font-size:.9em;opacity:.85}.jn-markdown .price-tag{font-size:.9em;font-weight:700;color:#15803d;background:#16a34a1a;border:1px solid rgba(22,163,74,.2);padding:1.5px 8px;border-radius:6px;white-space:nowrap;letter-spacing:-.01em}html[data-theme=dark] .jn-markdown .price-tag{background:#22c55e24;border-color:#22c55e40;color:#4ade80}.jn-markdown .duration{display:inline-flex;align-items:center;gap:3px;font-size:.82em;font-weight:600;color:#0891b2;background:#06b6d41a;border:1px solid rgba(6,182,212,.2);padding:1.5px 7px;border-radius:6px;white-space:nowrap}.jn-markdown .duration:before{content:"⏱";font-size:.85em}html[data-theme=dark] .jn-markdown .duration{background:#06b6d424;border-color:#06b6d440;color:#22d3ee}.jn-markdown .status-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:999px;font-size:.8em;font-weight:600;letter-spacing:.02em;text-transform:capitalize;border:1px solid transparent}.jn-markdown .status-badge:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.jn-markdown .status-confirmed{background:#16a34a1a;border-color:#16a34a33;color:#15803d}.jn-markdown .status-confirmed:before{background:#22c55e}.jn-markdown .status-pending{background:#d977061a;border-color:#d9770633;color:#b45309}.jn-markdown .status-pending:before{background:#f59e0b;animation:jn-pulse-dot 1.5s ease-in-out infinite}.jn-markdown .status-cancelled{background:#dc26261a;border-color:#dc262633;color:#b91c1c}.jn-markdown .status-cancelled:before{background:#ef4444}.jn-markdown .status-processing{background:color-mix(in srgb,var(--brand) 10%,transparent);border-color:color-mix(in srgb,var(--brand) 22%,transparent);color:var(--brand)}.jn-markdown .status-processing:before{background:var(--brand);animation:jn-pulse-dot 1.5s ease-in-out infinite}html[data-theme=dark] .jn-markdown .status-confirmed{background:#22c55e24;border-color:#22c55e40;color:#4ade80}html[data-theme=dark] .jn-markdown .status-pending{background:#f59e0b24;border-color:#f59e0b40;color:#fbbf24}html[data-theme=dark] .jn-markdown .status-cancelled{background:#ef444424;border-color:#ef444440;color:#f87171}html[data-theme=dark] .jn-markdown .status-processing{background:color-mix(in srgb,var(--brand) 14%,transparent);border-color:color-mix(in srgb,var(--brand) 28%,transparent);color:#a5b4fc}.jn-markdown h3{display:flex;align-items:center;gap:8px;font-size:.95em;font-weight:700;color:var(--text-primary);margin:1em 0 .35em;padding-bottom:4px;border-bottom:1px solid var(--border);line-height:1.4}.jn-markdown h4{font-size:.88em;font-weight:600;color:var(--text-primary);margin:.8em 0 .25em;line-height:1.4}.jn-markdown details{margin:.5em 0;border:1px solid var(--border);border-radius:var(--radius-sm, 8px);overflow:hidden}.jn-markdown summary{padding:8px 14px;font-size:.88em;font-weight:600;color:var(--brand);cursor:pointer;background:var(--bg-muted);list-style:none;display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none}.jn-markdown summary::-webkit-details-marker{display:none}.jn-markdown summary:after{content:"▾";margin-left:auto;font-size:.85em;transition:transform .15s ease}.jn-markdown details[open] summary:after{transform:rotate(180deg)}.jn-markdown details>:not(summary){padding:0 14px 8px}.jn-markdown .callout{display:flex;gap:11px;align-items:flex-start;padding:11px 15px;border-left:3px solid;border-radius:0 10px 10px 0;margin:.75em 0;font-size:.9em;line-height:1.55}.jn-markdown .callout-icon{flex-shrink:0;font-size:1em;margin-top:.05em;line-height:1.55}.jn-markdown .callout>div{flex:1;min-width:0}.jn-markdown .callout-info{border-color:#3b82f6;background:#3b82f612;color:#1d4ed8}.jn-markdown .callout-warning{border-color:#f59e0b;background:#f59e0b12;color:#92400e}.jn-markdown .callout-success{border-color:#22c55e;background:#22c55e12;color:#15803d}.jn-markdown .callout-error{border-color:#ef4444;background:#ef444412;color:#b91c1c}.jn-markdown .callout-tip{border-color:#8b5cf6;background:#8b5cf612;color:#6d28d9}html[data-theme=dark] .jn-markdown .callout-info{background:#3b82f61c;color:#93c5fd}html[data-theme=dark] .jn-markdown .callout-warning{background:#f59e0b1c;color:#fcd34d}html[data-theme=dark] .jn-markdown .callout-success{background:#22c55e1c;color:#86efac}html[data-theme=dark] .jn-markdown .callout-error{background:#ef44441c;color:#fca5a5}html[data-theme=dark] .jn-markdown .callout-tip{background:#8b5cf61c;color:#c4b5fd}.conv-card{contain:layout}.conv-card button:hover{background:var(--bg-muted)!important;color:var(--text-primary)!important}.conv-card button[title=Delete]:hover,.conv-card button[title="Confirm delete"]:hover{color:#ef4444!important;border-color:#ef444459!important}.suggestion-chip{transition:border-color .2s ease,transform .2s ease,background .2s ease}.suggestion-chip:hover{border-color:#0000004d;background:#00000005;transform:translateY(-1px)}html[data-theme=dark] .suggestion-chip:hover{border-color:#ffffff40;background:#ffffff0a}.typing-glow{position:relative;overflow:visible}.typing-glow:before{content:"";position:absolute;inset:-4px;border-radius:1.5rem;background:linear-gradient(135deg,var(--typing-primary),var(--typing-secondary));opacity:0;z-index:-1;filter:blur(12px);animation:jn-bubbleGlow 3s ease-in-out infinite;will-change:opacity,transform}.input-pill:focus-within{border-color:#0000000f;box-shadow:0 20px 45px #0f0f0f1f}html[data-theme=dark] .input-pill:focus-within{border-color:#ffffff14;box-shadow:0 20px 45px #0006}html[data-theme=dark] .input-dock{background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.4) 100%)}html[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1) brightness(.8);cursor:pointer}.tool-separator{width:1px;height:20px;background:var(--border);flex-shrink:0}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media(max-width:640px){.chat-header-subtitle,.header-btn-secondary,.header-online-text{display:none!important}.header-btn-icon{width:30px!important;height:30px!important}.input-dock{padding-top:1.25rem!important}}@media(max-width:960px)and (orientation:portrait){.chat-header{position:sticky!important;top:0!important}}@media(max-width:896px)and (orientation:landscape)and (max-height:500px){.chat-header{position:sticky!important;top:0!important}}@media(max-width:640px){.quick-actions-bar{flex-wrap:nowrap!important;overflow-x:auto!important}.quick-actions-bar::-webkit-scrollbar{display:none}.suggestion-grid-2col{grid-template-columns:1fr!important}}@media(min-width:1200px){.chat-header{padding-left:max(1rem,calc((100% - 1200px)/2))!important;padding-right:max(1rem,calc((100% - 1200px)/2))!important}}@media print{body{background:#fff!important;padding:0!important}nav,aside,header,[data-print-hide]{display:none!important}.jn-markdown pre{border:1px solid #ddd}.jn-markdown table{display:table}}.jn-menu-item{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;transition:background .12s ease,border-color .12s ease;border-left:3px solid transparent;-webkit-user-select:none;user-select:none}.jn-menu-item:hover{background:var(--bg-hover);border-left-color:var(--brand)}.jn-menu-item:active{background:var(--brand-light)}.jn-chat-messages{padding-left:4px;padding-right:4px}@media(min-width:480px){.jn-chat-messages{padding-left:10px;padding-right:10px}}@media(min-width:768px){.jn-chat-messages{padding-left:16px;padding-right:16px}}.entity-link{appearance:none;background:transparent;border:0;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);transition:text-decoration-color .12s ease,background-color .12s ease}.entity-link:hover,.entity-link:focus-visible{text-decoration-color:currentColor;outline:none}.entity-link:focus-visible{border-radius:3px;box-shadow:0 0 0 2px var(--focus-ring, #3b82f6)}[data-entity-style=balanced] .entity-link.entity-type-flight,[data-entity-style=balanced] .entity-link.entity-type-airport,[data-entity-style=balanced] .entity-link.entity-type-airline,[data-entity-style=balanced] .entity-link.entity-type-transit{text-decoration-color:#2563eb}[data-entity-style=balanced] .entity-link.entity-type-place,[data-entity-style=balanced] .entity-link.entity-type-neighborhood,[data-entity-style=balanced] .entity-link.entity-type-landmark{text-decoration-color:#059669}[data-entity-style=balanced] .entity-link.entity-type-hotel,[data-entity-style=balanced] .entity-link.entity-type-restaurant,[data-entity-style=balanced] .entity-link.entity-type-cuisine,[data-entity-style=balanced] .entity-link.entity-type-event,[data-entity-style=balanced] .entity-link.entity-type-activity{text-decoration-color:#d97706}[data-entity-style=balanced] .entity-link.entity-type-currency,[data-entity-style=balanced] .entity-link.entity-type-visa,[data-entity-style=balanced] .entity-link.entity-type-language,[data-entity-style=balanced] .entity-link.entity-type-payment,[data-entity-style=balanced] .entity-link.entity-type-plug{text-decoration-color:#b45309}[data-entity-style=balanced] .entity-link.entity-type-app,[data-entity-style=balanced] .entity-link.entity-type-telecom{text-decoration-color:#0891b2}[data-entity-style=rich] .entity-link{padding:0 4px;border-radius:4px;text-decoration:none;background:color-mix(in srgb,currentColor 8%,transparent)}[data-entity-style=rich] .entity-link.entity-type-flight,[data-entity-style=rich] .entity-link.entity-type-airport,[data-entity-style=rich] .entity-link.entity-type-airline,[data-entity-style=rich] .entity-link.entity-type-transit{background:#2563eb1f;color:#1d4ed8}[data-entity-style=rich] .entity-link.entity-type-place,[data-entity-style=rich] .entity-link.entity-type-neighborhood,[data-entity-style=rich] .entity-link.entity-type-landmark{background:#0596691f;color:#047857}[data-entity-style=rich] .entity-link.entity-type-hotel,[data-entity-style=rich] .entity-link.entity-type-restaurant,[data-entity-style=rich] .entity-link.entity-type-cuisine,[data-entity-style=rich] .entity-link.entity-type-event,[data-entity-style=rich] .entity-link.entity-type-activity{background:#d977061f;color:#b45309}[data-entity-style=rich] .entity-link.entity-type-currency,[data-entity-style=rich] .entity-link.entity-type-visa,[data-entity-style=rich] .entity-link.entity-type-language,[data-entity-style=rich] .entity-link.entity-type-payment,[data-entity-style=rich] .entity-link.entity-type-plug{background:#b453091f;color:#92400e}[data-entity-style=rich] .entity-link.entity-type-app,[data-entity-style=rich] .entity-link.entity-type-telecom{background:#0891b21f;color:#0e7490}[data-entity-links=off] .entity-link{pointer-events:none;text-decoration:none;color:inherit}.entity-peek-overlay{position:fixed;inset:0;z-index:50;pointer-events:none}.entity-peek-overlay[data-open=true]{pointer-events:auto}.entity-peek-backdrop{position:absolute;inset:0;background:#0f172a73;opacity:0;transition:opacity .18s ease}.entity-peek-overlay[data-open=true] .entity-peek-backdrop{opacity:1}.entity-peek-sheet{position:absolute;left:0;right:0;bottom:0;max-height:78vh;background:var(--color-surface, #fff);color:var(--color-text, #0f172a);border-top-left-radius:18px;border-top-right-radius:18px;box-shadow:0 -16px 40px #0f172a38;transform:translateY(100%);transition:transform .22s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;overflow:hidden}.entity-peek-overlay[data-open=true] .entity-peek-sheet{transform:translateY(0)}.entity-peek-sheet__grabber{align-self:center;width:44px;height:5px;border-radius:999px;background:#0f172a26;margin:10px 0 6px}.entity-peek-card{position:absolute;width:360px;max-height:520px;background:var(--color-surface, #fff);color:var(--color-text, #0f172a);border-radius:14px;box-shadow:0 18px 48px #0f172a38;border:1px solid rgba(15,23,42,.08);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(4px) scale(.98);transition:opacity .16s ease,transform .16s ease}.entity-peek-overlay[data-open=true] .entity-peek-card{opacity:1;transform:translateY(0) scale(1)}.entity-peek-header{padding:14px 16px 8px;border-bottom:1px solid rgba(15,23,42,.06);flex-shrink:0}.entity-peek-title{font-size:18px;font-weight:700;margin:0 0 2px}.entity-peek-subtitle{font-size:12px;color:#0f172a99;text-transform:uppercase;letter-spacing:.04em}.entity-peek-breadcrumb{display:flex;align-items:center;gap:4px;padding:6px 14px 0;font-size:12px;color:#0f172a8c;overflow-x:auto;white-space:nowrap;flex-shrink:0}.entity-peek-breadcrumb button{appearance:none;background:transparent;border:0;cursor:pointer;color:inherit;padding:2px 4px;border-radius:4px}.entity-peek-breadcrumb button:hover{background:#0f172a0f;color:#0f172ae6}.entity-peek-tabs{display:flex;gap:2px;padding:6px 12px 0;border-bottom:1px solid rgba(15,23,42,.06);overflow-x:auto;flex-shrink:0}.entity-peek-tabs button{appearance:none;background:transparent;border:0;padding:8px 12px;font-size:13px;color:#0f172aa6;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}.entity-peek-tabs button[aria-selected=true]{color:var(--color-text, #0f172a);border-bottom-color:var(--color-accent, #2563eb);font-weight:600}.entity-peek-body{padding:14px 16px;overflow-y:auto;flex:1;min-height:0;font-size:14px;line-height:1.5}.entity-peek-footer{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid rgba(15,23,42,.06);background:#0f172a05;flex-shrink:0}.entity-peek-related{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.entity-peek-related button{appearance:none;background:#0f172a0d;border:0;border-radius:999px;padding:5px 10px;font-size:12px;color:inherit;cursor:pointer}.entity-peek-related button:hover{background:#0f172a1a}.entity-peek-save{display:inline-flex;align-items:center;gap:6px;appearance:none;border:0;border-radius:10px;background:var(--color-accent, #2563eb);color:#fff;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}.entity-peek-save:hover{filter:brightness(1.05)}.entity-peek-save__chevron{border-left:1px solid rgba(255,255,255,.35);padding-left:8px;margin-left:4px}.entity-peek-ask{display:inline-flex;align-items:center;appearance:none;border:1px solid rgba(15,23,42,.12);background:transparent;border-radius:10px;padding:8px 12px;font-size:13px;color:inherit;cursor:pointer}.entity-peek-ask-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.entity-peek-ask-chips button{appearance:none;background:#0f172a0a;border:1px dashed rgba(15,23,42,.18);border-radius:999px;padding:5px 10px;font-size:12px;cursor:pointer}@media(prefers-reduced-motion:reduce){.entity-peek-sheet,.entity-peek-card,.entity-peek-backdrop{transition:none}}[data-theme=dark] .entity-peek-sheet,[data-theme=dark] .entity-peek-card{background:#0f172a;color:#f8fafc;border-color:#f8fafc1a}[data-theme=dark] .entity-peek-footer{background:#ffffff08;border-top-color:#f8fafc14}[data-theme=dark] .entity-peek-tabs{border-bottom-color:#f8fafc14}[data-theme=dark] .entity-peek-tabs button{color:#f8fafc99}[data-theme=dark] .entity-peek-tabs button[aria-selected=true]{color:#f8fafc}[data-theme=dark] .entity-peek-related button,[data-theme=dark] .entity-peek-ask-chips button{background:#f8fafc0f;border-color:#f8fafc26;color:inherit}.entity-peek-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.jn-booking{--b-teal: #0D9488;--b-teal-bright: #14B8A6;--b-teal-glow: rgba(20,184,166,.15);--b-teal-dim: rgba(13,148,136,.12);--b-indigo: #6366F1;--b-indigo-glow: rgba(99,102,241,.15);--b-blue: #3B82F6;--b-amber: #F59E0B;--b-amber-dim: rgba(245,158,11,.12);--b-rose: #EF4444;--b-rose-dim: rgba(239,68,68,.12);--b-green: #10B981;--b-green-glow: rgba(16,185,129,.15);--b-bg: #070B15;--b-bg-2: #0B1120;--b-bg-card: #0F172A;--b-bg-card-hover: #131D36;--b-bg-card-2: #1A2236;--b-bg-input: #182338;--b-bg-input-focus: #1F2E47;--b-border: #1E2B44;--b-border-focus: #14B8A6;--b-border-light: #263852;--b-border-glow: rgba(20,184,166,.4);--b-text: #F1F5F9;--b-text-secondary: #94A3B8;--b-text-muted: #64748B;--b-text-dim: #475569;--b-radius-xs: 6px;--b-radius-sm: 8px;--b-radius: 12px;--b-radius-lg: 16px;--b-radius-xl: 20px;--b-radius-2xl: 24px;--b-shadow-xs: 0 1px 2px rgba(0,0,0,.2);--b-shadow-sm: 0 2px 8px rgba(0,0,0,.25);--b-shadow: 0 8px 32px rgba(0,0,0,.4);--b-shadow-lg: 0 16px 48px rgba(0,0,0,.5);--b-shadow-glow: 0 0 0 1px rgba(20,184,166,.3), 0 0 32px rgba(20,184,166,.15);--b-transition-fast: .12s cubic-bezier(.4, 0, .2, 1);--b-transition: .2s cubic-bezier(.4, 0, .2, 1);--b-transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--b-gradient-teal: linear-gradient(135deg, #0D9488 0%, #14B8A6 100%);--b-gradient-indigo: linear-gradient(135deg, #4F46E5 0%, #8B5CF6 100%);font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--b-text);-webkit-font-smoothing:antialiased}:root[data-theme=light] .jn-booking{--b-bg: #F8FAFC;--b-bg-2: #FFFFFF;--b-bg-card: #FFFFFF;--b-bg-card-hover: #F1F5F9;--b-bg-card-2: #F8FAFC;--b-bg-input: #F1F5F9;--b-bg-input-focus: #FFFFFF;--b-border: #E2E8F0;--b-border-light: #CBD5E1;--b-text: #0F172A;--b-text-secondary: #475569;--b-text-muted: #64748B;--b-text-dim: #94A3B8}.jn-booking-backdrop{position:fixed;inset:0;z-index:1000;width:100vw;height:100vh;height:100dvh;background:var(--b-bg);display:flex;align-items:stretch;justify-content:center;animation:jn-fade-in .2s ease-out}@keyframes jn-fade-in{0%{opacity:0}to{opacity:1}}.jn-booking-overlay{width:100%;max-width:1200px;min-height:100%;background:var(--b-bg);display:flex;flex-direction:column;overflow:hidden;animation:jn-slide-up .28s cubic-bezier(.16,1,.3,1)}@keyframes jn-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.jn-booking-topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-bottom:1px solid var(--b-border);background:var(--b-bg-2);position:sticky;top:0;z-index:5}.jn-booking-crumbs{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--b-text-muted)}.jn-booking-crumbs strong{color:var(--b-text-secondary);font-weight:500}.jn-booking-crumbs .sep{color:var(--b-text-dim)}.jn-booking-crumbs .active{color:var(--b-teal-bright)}.jn-crumb-link{background:none;border:none;padding:0;cursor:pointer;font:inherit;font-weight:500;color:var(--b-text-secondary);border-bottom:1px dashed transparent;transition:color var(--b-transition),border-color var(--b-transition)}.jn-crumb-link:hover{color:var(--b-teal-bright);border-bottom-color:var(--b-teal-bright)}.jn-booking-timer{display:inline-flex;align-items:center;gap:9px;padding:8px 16px;border:1.5px solid var(--b-border-focus);background:var(--b-bg-input);border-radius:100px;font-size:12px;color:var(--b-text-secondary);font-variant-numeric:tabular-nums;box-shadow:0 0 0 4px var(--b-border-glow),0 4px 14px #0000002e}.jn-booking-timer .dot{width:7px;height:7px;border-radius:50%;background:var(--b-green);box-shadow:0 0 8px #10b98199;animation:jn-pulse 2s ease-in-out infinite}.jn-booking-timer .lbl{text-transform:uppercase;letter-spacing:.7px;font-size:10px;font-weight:600}.jn-booking-timer .time{font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700;color:var(--b-text);letter-spacing:.3px}.jn-booking-timer.warning{background:var(--b-amber-dim);border-color:var(--b-amber);color:#fcd34d;box-shadow:0 0 0 4px var(--b-amber-dim),0 4px 14px #f59e0b47}.jn-booking-timer.warning .dot{background:var(--b-amber);animation-duration:1s}.jn-booking-timer.warning .time{color:#fcd34d}.jn-booking-timer.expired .time{color:var(--b-amber)}@keyframes jn-pulse{0%,to{opacity:1}50%{opacity:.5}}.jn-booking-close{background:transparent;color:var(--b-text-muted);border:1px solid var(--b-border);border-radius:100px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--b-transition)}.jn-booking-close:hover{color:var(--b-text);border-color:var(--b-border-light)}.jn-stepper{display:flex;gap:0;padding:18px 28px;border-bottom:1px solid var(--b-border);background:var(--b-bg-2)}.jn-step{display:flex;gap:12px;align-items:center;flex:1;cursor:pointer;opacity:.55;transition:opacity var(--b-transition)}.jn-step.active,.jn-step.done{opacity:1}.jn-step:not(:last-child):after{content:"";flex:1;height:2px;background:var(--b-border);margin:0 14px}.jn-step.done:not(:last-child):after{background:var(--b-gradient-teal)}.jn-step-num{width:32px;height:32px;border-radius:50%;background:var(--b-bg-input);border:1px solid var(--b-border);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--b-text-secondary)}.jn-step.active .jn-step-num{background:var(--b-teal-dim);border-color:var(--b-teal-bright);color:var(--b-teal-bright);box-shadow:var(--b-shadow-glow)}.jn-step.done .jn-step-num{background:var(--b-gradient-teal);border-color:transparent;color:#fff}.jn-step-label{font-size:10px;color:var(--b-text-dim);text-transform:uppercase;letter-spacing:.6px}.jn-step-title{font-size:13px;color:var(--b-text-secondary);font-weight:500}.jn-step.active .jn-step-title{color:var(--b-text)}.jn-booking-body{flex:1;overflow:auto;padding:28px;display:grid;gap:28px;grid-template-columns:minmax(0,1fr) 360px}@media(max-width:960px){.jn-booking-body{grid-template-columns:minmax(0,1fr);padding:18px}}.jn-recap{border:1px solid var(--b-border);background:var(--b-bg-card);border-radius:var(--b-radius-lg);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}.jn-recap .route{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:22px;letter-spacing:-.6px;color:var(--b-text)}.jn-recap .meta{font-size:12px;color:var(--b-text-muted);margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}.jn-meta-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;background:var(--b-bg-input);border:1px solid var(--b-border);color:var(--b-text-secondary);line-height:1}.jn-meta-chip svg{color:var(--b-text-muted);flex-shrink:0}.jn-meta-chip__label{text-transform:uppercase;letter-spacing:.5px;font-size:9px;font-weight:600;color:var(--b-text-dim)}.jn-meta-chip__value{font-size:12px;font-weight:600;color:var(--b-text)}.jn-meta-chip--warn{background:var(--b-amber-dim);border-color:var(--b-amber)}.jn-meta-chip--warn svg,.jn-meta-chip--warn .jn-meta-chip__value{color:var(--b-amber)}.jn-recap .price-amount{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:24px;color:var(--b-teal-bright)}.jn-recap .price-label{font-size:11px;color:var(--b-text-muted);text-transform:uppercase;letter-spacing:.6px}.jn-recap .price-sub{font-size:11px;color:var(--b-text-dim)}.jn-price-link{background:none;border:none;padding:0;margin:0;cursor:pointer;font:inherit;display:inline-flex;align-items:baseline;color:var(--b-teal-bright);border-bottom:1px dashed transparent;transition:border-color var(--b-transition),opacity var(--b-transition)}.jn-price-link:hover{border-bottom-color:var(--b-teal-bright)}.jn-price-link__caret{font-size:.7em;opacity:.7}.jn-ticket-strip{display:flex;align-items:center;gap:12px;margin-top:10px;padding:12px 16px;border:1px solid var(--b-amber);background:var(--b-amber-dim);border-radius:var(--b-radius)}.jn-ticket-strip__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;background:var(--b-amber);color:#1a1205}.jn-ticket-strip__title{font-size:13px;font-weight:600;color:var(--b-text)}.jn-ticket-strip__sub{font-size:12px;color:var(--b-text-secondary);margin-top:2px}.jn-ticket-strip--muted{border-color:var(--b-border-light);background:var(--b-bg-input)}.jn-ticket-strip--muted .jn-ticket-strip__icon{background:var(--b-border-light);color:var(--b-text-secondary)}.jn-section-head{display:flex;align-items:baseline;justify-content:space-between;margin:26px 0 12px}.jn-section-head:first-child{margin-top:0}.jn-section-title{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--b-text);font-weight:600}.jn-section-count{font-size:12px;color:var(--b-text-muted);font-weight:400;margin-left:8px}.jn-section-hint{font-size:12px;color:var(--b-text-muted)}.jn-completion{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--b-radius);background:linear-gradient(135deg,#0d948814,#6366f10a);border:1px solid var(--b-border)}.jn-ring{position:relative;width:52px;height:52px;flex:none}.jn-ring svg{transform:rotate(-90deg)}.jn-ring-bg{stroke:var(--b-border-light)}.jn-ring-fill{stroke:var(--b-teal-bright);stroke-linecap:round;transition:stroke-dashoffset .4s cubic-bezier(.4,0,.2,1)}.jn-ring-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--b-teal-bright);font-weight:700}.jn-saved-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:12px}.jn-saved-traveller{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--b-border);background:var(--b-bg-card);border-radius:var(--b-radius);cursor:pointer;transition:all var(--b-transition)}.jn-saved-traveller:hover{border-color:var(--b-teal);background:var(--b-bg-card-hover);transform:translateY(-1px)}.jn-saved-avatar{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px}.jn-saved-name{font-size:13px;color:var(--b-text);font-weight:500}.jn-saved-meta{font-size:11px;color:var(--b-text-muted)}.jn-saved-arrow{margin-left:auto;color:var(--b-text-muted);font-size:16px}.jn-scan-cta{margin-top:12px;display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--b-radius);background:linear-gradient(135deg,#6366f11a,#14b8a60f);border:1px dashed rgba(99,102,241,.4);cursor:pointer;transition:all var(--b-transition)}.jn-scan-cta:hover{border-color:var(--b-indigo);background:#6366f129}.jn-scan-icon{width:40px;height:40px;border-radius:12px;background:var(--b-gradient-indigo);display:inline-flex;align-items:center;justify-content:center;font-size:20px}.jn-scan-title{font-size:13px;color:var(--b-text);font-weight:600}.jn-scan-sub{font-size:11px;color:var(--b-text-muted)}.jn-pax-list{display:flex;flex-direction:column;gap:10px}.jn-pax-card{border:1px solid var(--b-border);background:var(--b-bg-card);border-radius:var(--b-radius-lg);overflow:hidden;transition:all var(--b-transition)}.jn-pax-card.open{border-color:var(--b-border-light);box-shadow:var(--b-shadow-sm)}.jn-pax-header{padding:14px 18px;display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.jn-pax-header:hover{background:var(--b-bg-card-hover)}.jn-pax-badge{width:36px;height:36px;border-radius:10px;background:var(--b-teal-dim);color:var(--b-teal-bright);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.jn-pax-name{font-size:14px;color:var(--b-text);font-weight:600}.jn-pax-type{font-size:11px;color:var(--b-text-muted)}.jn-pax-status{display:flex;align-items:center;gap:10px;margin-left:auto}.jn-status-dot{width:8px;height:8px;border-radius:50%;background:var(--b-text-dim)}.jn-status-dot.active{background:var(--b-amber);box-shadow:0 0 6px #f59e0b99}.jn-status-dot.done{background:var(--b-green);box-shadow:0 0 6px #10b98199}.jn-pax-body{padding:0 18px 18px;display:none}.jn-pax-card.open .jn-pax-body{display:block}.jn-divider{height:1px;background:var(--b-border);margin:0 -18px 18px}.jn-form-row{display:grid;gap:10px;margin-bottom:12px}.jn-form-row.cols-2{grid-template-columns:1fr 1fr}.jn-form-row.cols-title{grid-template-columns:100px 1fr 1fr}.jn-form-row.cols-dob{grid-template-columns:80px 1fr 90px}@media(max-width:600px){.jn-form-row.cols-2,.jn-form-row.cols-title{grid-template-columns:1fr}}.jn-field{display:flex;flex-direction:column;gap:6px}.jn-field-label{font-size:12px;color:var(--b-text-secondary);font-weight:500;display:flex;align-items:center;gap:6px}.jn-field-label .req{color:var(--b-rose)}.jn-field-label .optional{color:var(--b-text-dim);margin-left:auto;font-weight:400;font-size:11px}.jn-field-input{width:100%;padding:10px 12px;border-radius:var(--b-radius-sm);background:var(--b-bg-input);border:1px solid var(--b-border);color:var(--b-text);font-size:13px;font-family:inherit;transition:all var(--b-transition)}.jn-field-input:focus{outline:none;border-color:var(--b-border-focus);background:var(--b-bg-input-focus);box-shadow:0 0 0 3px var(--b-teal-glow)}.jn-field-input::placeholder{color:var(--b-text-dim)}.jn-field-input.invalid{border-color:var(--b-rose)}.jn-gender-group{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.jn-gender-btn{padding:10px 8px;border:1px solid var(--b-border);background:var(--b-bg-input);border-radius:var(--b-radius-sm);color:var(--b-text-secondary);font-size:12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;transition:all var(--b-transition)}.jn-gender-btn:hover{border-color:var(--b-border-light)}.jn-gender-btn.selected{border-color:var(--b-teal-bright);color:var(--b-teal-bright);background:var(--b-teal-dim)}.jn-sidebar{display:flex;flex-direction:column;gap:14px;position:sticky;top:0;align-self:start}.jn-sidebar-card{border:1px solid var(--b-border);background:var(--b-bg-card);border-radius:var(--b-radius-lg);padding:18px 20px}.jn-sidebar-title{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--b-text);font-weight:600;margin-bottom:14px}.jn-price-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;color:var(--b-text-secondary)}.jn-price-row .val{font-variant-numeric:tabular-nums;color:var(--b-text)}.jn-price-row.total{font-size:16px;font-weight:600;color:var(--b-text);border-top:1px solid var(--b-border);padding-top:12px;margin-top:8px}.jn-price-row.total .val{color:var(--b-teal-bright);font-family:Space Grotesk,sans-serif}.jn-extra-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--b-border);border-radius:var(--b-radius-sm);cursor:pointer;transition:all var(--b-transition);margin-bottom:8px}.jn-extra-item:hover{border-color:var(--b-border-light)}.jn-extra-item.selected{border-color:var(--b-teal-bright);background:var(--b-teal-dim)}.jn-extra-icon{font-size:18px}.jn-extra-name{font-size:13px;color:var(--b-text);font-weight:500}.jn-extra-desc{font-size:11px;color:var(--b-text-muted)}.jn-extra-price{margin-left:auto;font-size:13px;color:var(--b-text);font-weight:600;font-variant-numeric:tabular-nums}.jn-booking-footer{border-top:1px solid var(--b-border);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--b-bg-2);position:sticky;bottom:0;z-index:5}.jn-back-btn{background:transparent;color:var(--b-text-secondary);border:1px solid var(--b-border);border-radius:100px;padding:10px 18px;font-size:13px;cursor:pointer;transition:all var(--b-transition)}.jn-back-btn:hover{border-color:var(--b-border-light);color:var(--b-text)}.jn-primary-btn{background:var(--b-gradient-teal);color:#fff;border:none;border-radius:100px;padding:12px 28px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--b-transition);box-shadow:0 4px 18px #0d948866;display:inline-flex;align-items:center;gap:8px}.jn-primary-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 28px #0d94888c}.jn-primary-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.jn-pay-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.jn-pay-method-btn{padding:14px;border:1px solid var(--b-border);background:var(--b-bg-input);border-radius:var(--b-radius);color:var(--b-text);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--b-transition);display:inline-flex;align-items:center;justify-content:center;gap:8px}.jn-pay-method-btn:hover{border-color:var(--b-text-secondary)}.jn-pay-method-btn.apple{background:#000;color:#fff;border-color:#000}.jn-pay-method-btn.google{background:#fff;color:#000;border-color:transparent}.jn-pay-success{background:#10b9811f;border:1px solid rgba(16,185,129,.4);border-radius:var(--b-radius);padding:18px 20px;display:flex;align-items:flex-start;gap:12px;color:var(--b-text)}.jn-pay-success .check{font-size:22px;color:var(--b-green)}.jn-pay-success h3{font-size:16px;margin:0 0 4px}.jn-pay-success p{font-size:13px;color:var(--b-text-secondary);margin:0}.jn-error{background:var(--b-rose-dim);border:1px solid rgba(239,68,68,.4);border-radius:var(--b-radius);padding:12px 14px;font-size:13px;color:#fca5a5;margin:8px 0}.jn-doc-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.jn-doc-tab{padding:8px 14px;border:1px solid var(--b-border);background:var(--b-bg-input);border-radius:100px;font-size:12px;color:var(--b-text-secondary);cursor:pointer;transition:all var(--b-transition)}.jn-doc-tab:hover:not(:disabled){border-color:var(--b-border-light);color:var(--b-text)}.jn-doc-tab.active{background:var(--b-teal-dim);border-color:var(--b-teal-bright);color:var(--b-teal-bright)}.jn-doc-tab:disabled{opacity:.4;cursor:not-allowed}.jn-doc-panel{padding:14px;border:1px solid var(--b-border);background:var(--b-bg-card);border-radius:var(--b-radius)}.jn-doc-panel h4{font-size:13px;margin:0 0 6px;color:var(--b-text)}.jn-doc-panel p{font-size:12px;color:var(--b-text-muted);margin:0 0 10px}.jn-deferred{background:linear-gradient(135deg,#6366f10f,#14b8a60a);border:1px solid var(--b-border);border-radius:var(--b-radius-lg);padding:16px 18px;display:flex;gap:12px;align-items:flex-start;margin-top:18px}.jn-deferred .icon{font-size:24px}.jn-deferred h4{font-size:13px;color:var(--b-text);margin:0 0 4px}.jn-deferred p{font-size:12px;color:var(--b-text-muted);margin:0}@media(max-width:720px){.jn-booking-overlay{width:100%}.jn-stepper{padding:12px;gap:4px}.jn-step-title{display:none}.jn-booking-body{padding:14px;gap:14px}.jn-booking-footer{flex-direction:column-reverse;gap:10px;padding:12px 16px}.jn-booking-footer .jn-primary-btn{width:100%;justify-content:center}.jn-recap{flex-direction:column;align-items:flex-start}}.jn-booking{--b-space-1: 4px;--b-space-2: 8px;--b-space-3: 12px;--b-space-4: 16px;--b-space-5: 20px;--b-space-6: 24px;--b-space-8: 32px}.jn-stack>*+*{margin-top:var(--b-space-5)}.jn-card{border:1px solid var(--b-border);background:var(--b-bg-card);border-radius:var(--b-radius-lg);padding:var(--b-space-5)}.jn-card.pad-lg{padding:var(--b-space-6)}.jn-card.pad-sm{padding:var(--b-space-4)}.jn-card.dashed{border-style:dashed;border-color:var(--b-border-light);background:transparent}.jn-icon{display:inline-block;vertical-align:-.15em;flex:none;stroke-width:1.75}.jn-section-icon{width:28px;height:28px;flex:none;border-radius:var(--b-radius-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--b-teal-dim);color:var(--b-teal-bright)}.jn-section-icon.indigo{background:var(--b-indigo-glow);color:var(--b-indigo)}.jn-section-icon.amber{background:var(--b-amber-dim);color:var(--b-amber)}.jn-banner{display:flex;gap:var(--b-space-3);align-items:flex-start;padding:var(--b-space-3) var(--b-space-4);border-radius:var(--b-radius);font-size:12px;line-height:1.5;border:1px solid var(--b-border);background:var(--b-bg-card-2);color:var(--b-text-secondary)}.jn-banner .jn-icon{color:var(--b-text-muted);margin-top:1px}.jn-banner.info{background:var(--b-indigo-glow);border-color:transparent;color:var(--b-text-secondary)}.jn-banner.info .jn-icon{color:var(--b-indigo)}.jn-banner.warn{background:var(--b-amber-dim);border-color:transparent;color:var(--b-text)}.jn-banner.warn .jn-icon{color:var(--b-amber)}.jn-banner.success{background:var(--b-green-glow);border-color:transparent;color:var(--b-text)}.jn-banner.success .jn-icon{color:var(--b-green)}.jn-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;padding:2px 8px;border-radius:100px;background:var(--b-indigo-glow);color:var(--b-indigo)}.jn-modal-scrim{position:fixed;inset:0;z-index:1100;background:#070b15d9;backdrop-filter:blur(8px) saturate(140%);-webkit-backdrop-filter:blur(8px) saturate(140%);display:flex;align-items:center;justify-content:center;padding:var(--b-space-5);animation:jn-fade-in .2s ease}.jn-modal-scrim.top{align-items:flex-start;overflow-y:auto}.jn-modal-card{background:var(--b-bg-card);color:var(--b-text);border:1px solid var(--b-border);border-radius:var(--b-radius-lg);box-shadow:var(--b-shadow-lg);padding:var(--b-space-6);max-width:400px;width:100%;text-align:center;animation:jn-slide-up .25s cubic-bezier(.4,0,.2,1)}.jn-modal-card h3{margin:var(--b-space-3) 0 var(--b-space-1);font-family:Space Grotesk,sans-serif;font-weight:700;font-size:17px;color:var(--b-text)}.jn-modal-card>p{color:var(--b-text-muted);font-size:13px;margin:0}.jn-modal-icon{width:48px;height:48px;margin:0 auto;border-radius:var(--b-radius);display:inline-flex;align-items:center;justify-content:center;background:var(--b-teal-dim);color:var(--b-teal-bright)}.jn-secure-note{display:flex;align-items:center;gap:6px;color:var(--b-text-muted);font-size:11px}.jn-primary-btn:focus-visible,.jn-back-btn:focus-visible,.jn-pay-method-btn:focus-visible,.jn-booking-close:focus-visible{outline:2px solid var(--b-teal-bright);outline-offset:2px}.jn-primary-btn:active:not(:disabled){transform:translateY(0)}.jn-doc-tab{display:inline-flex;align-items:center}.jn-extra-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--b-text-secondary)}.jn-extra-item.selected .jn-extra-icon{color:var(--b-teal-bright)}.jn-saved-arrow{display:inline-flex;align-items:center}.jn-pay-success .check{display:inline-flex;align-items:center;justify-content:center}.jn-deferred .icon{display:inline-flex;align-items:center;justify-content:center;color:var(--b-indigo)}.jn-gender-btn .jn-icon{color:currentColor}.jn-intent-chips{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;background:var(--b-bg-card-2);border:1px dashed var(--b-border-light);border-radius:var(--b-radius);margin-bottom:12px}.jn-intent-chip{padding:8px 14px;border-radius:100px;background:var(--b-bg-input);border:1px solid var(--b-border);color:var(--b-text);font-size:12px;cursor:pointer;transition:all var(--b-transition)}.jn-intent-chip:hover{border-color:var(--b-teal-bright);color:var(--b-teal-bright)}
