.play-root{min-height:100vh;background:var(--color-surface);color:var(--color-on-surface);padding:2rem 1rem;display:flex;justify-content:center;align-items:flex-start}.play-layout{width:100%;max-width:1180px;display:grid;grid-template-columns:1fr clamp(400px,34vw,480px);gap:1.25rem;align-items:flex-start}.play-frame{min-width:0;border:1px solid var(--color-outline-variant);border-radius:24px;background:var(--color-surface-container-lowest);box-shadow:var(--shadow-elevated);overflow:hidden;position:relative}.play-passport-sidebar{position:sticky;top:1.5rem}.hero-block{padding:1.5rem;background:var(--color-surface-container);border-bottom:1px dashed var(--color-outline-variant);animation:question-in .35s cubic-bezier(.16,1,.3,1) both}.hero-block h1{margin:.5rem 0;font-family:var(--font-sans);font-size:2rem;font-weight:800;letter-spacing:-.4px;color:var(--color-primary);display:inline-block;border-bottom:4px solid var(--color-tertiary-container);padding-bottom:3px}.hero-block p{margin:0;color:var(--color-on-surface-variant);line-height:1.5}.hero-block-text{display:flex;flex-direction:column;align-items:flex-start}.best-pill{margin-top:1rem;margin-left:auto;display:inline-flex;padding:.4rem .75rem;border-radius:999px;font-family:var(--font-stamp);font-size:.75rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;background:var(--color-tertiary-fixed);color:var(--color-on-tertiary-fixed);align-self:flex-end}.featured-routes{padding:1rem 1.5rem;display:grid;gap:.75rem;animation:question-in .35s cubic-bezier(.16,1,.3,1) 60ms both}.mode-card,.quick-card{display:block;border:1px solid var(--color-outline-variant);border-bottom-width:4px;border-radius:14px;text-align:left;padding:1rem;background:var(--color-surface-container-lowest);cursor:pointer;transition:transform .12s ease-out,border-bottom-width .12s ease-out}.mode-card:active,.quick-card:active,.answer-row:active{transform:translateY(3px);border-bottom-width:1px}.mode-card-primary{background:var(--color-primary);border-color:var(--color-primary);border-bottom-color:var(--color-on-primary-container);color:#fff}.mode-card.mode-card-primary p,.mode-card.mode-card-primary .kicker{color:#ffffffde}.mode-card h3,.quick-card h4{margin:.35rem 0;font-family:var(--font-sans)}.mode-card p,.quick-card p{margin:0;color:var(--color-on-surface-variant);line-height:1.4}.featured-route-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.featured-route-main{display:flex;align-items:center;gap:.75rem;min-width:0}.featured-route-copy{min-width:0}.featured-route-copy h3{font-size:1.05rem}.featured-route-icon{width:48px;height:48px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex:none;background:#fff3;color:#fff}.featured-route-icon svg,.featured-route-chevron svg{width:22px;height:22px}.featured-route-icon-daily{background:color-mix(in srgb,var(--color-primary-container) 34%,#fff 66%);color:var(--color-primary)}.featured-route-chevron{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:color-mix(in srgb,currentColor 72%,transparent 28%);flex:none}.mode-card-primary .featured-route-chevron{color:#ffffffb8}.quick-card-media{position:relative;overflow:hidden;min-height:180px;background-size:cover;background-position:center;border-color:#fff3}.quick-card-content{position:relative;min-height:148px;display:flex;flex-direction:column;justify-content:flex-end}.quick-card-media h4{color:#fff}.quick-card-media p{color:#ffffffe0;max-width:30ch}.quick-grid-portrait{grid-template-columns:repeat(3,1fr)}.quick-card-portrait{position:relative;height:220px;overflow:hidden;background-size:cover;background-position:center;border:none;border-radius:12px;padding:0;cursor:pointer;transition:transform .12s ease-out,opacity .12s ease-out}.quick-card-portrait:active{transform:scale(.97);opacity:.9;border-bottom-width:1px}.quick-card-gradient{position:absolute;inset:0;background:linear-gradient(180deg,#0000 0% 50%,#000000d1);pointer-events:none}.quick-card-content-portrait{position:absolute;bottom:0;left:0;right:0;padding:10px;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.quick-card-category-pill{font-family:var(--font-stamp);font-size:.62rem;font-weight:700;letter-spacing:.9px;text-transform:uppercase;background:#0000007a;padding:2px 6px;border-radius:4px;margin-bottom:2px;display:inline-block}.quick-card-portrait h4{margin:0;color:#fff;font-family:var(--font-sans);font-size:.95rem;font-weight:700;line-height:1.2;text-align:left}.quick-card-portrait p{margin:0;color:#ffffffd1;font-size:.72rem;line-height:1.35;text-align:left}.qcard-diff-stamp{position:absolute;top:10px;right:10px;z-index:2;min-width:44px;padding:4px 6px;border-radius:6px;border:1.5px solid var(--diff-border, #006687);background:var(--diff-bg, #e3f2fd);color:var(--diff-text, #001e2b);font-family:var(--font-stamp);font-size:.56rem;font-weight:700;letter-spacing:.7px;text-transform:uppercase;text-align:center;transform:rotate(4deg);box-shadow:inset 0 0 0 2px transparent}.qcard-diff-stamp:before{content:"";position:absolute;inset:3px;border-radius:3px;border:1px dashed var(--diff-border, #006687);opacity:.55;pointer-events:none}.quick-grid-section{padding:0 1.5rem 1.5rem;animation:question-in .35s cubic-bezier(.16,1,.3,1) .13s both}.quick-grid{margin-top:.65rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.kicker{font-family:var(--font-stamp);font-size:.6875rem;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--color-outline)}.countdown-screen,.summary-screen,.results-screen{padding:2rem 1.5rem;text-align:center}.countdown-screen h2,.summary-screen h2,.results-screen h2{margin:.5rem 0;font-family:var(--font-sans);font-size:1.8rem;font-weight:800;line-height:1.15}.summary-screen{animation:question-in .28s cubic-bezier(.16,1,.3,1) both}.countdown-board{padding-top:2.4rem;padding-bottom:2.3rem}.countdown-head-row{display:grid;justify-items:center;gap:.35rem}.countdown-head-divider{width:min(82%,420px);height:2px;border-radius:999px;background:repeating-linear-gradient(90deg,var(--color-outline-variant) 0 8px,transparent 8px 14px)}.count-number{margin:.45rem auto 0;display:inline-grid;place-items:center;color:var(--color-primary);font-family:var(--font-stamp);font-size:clamp(4.5rem,18vw,7.5rem);font-weight:700;line-height:.95;text-shadow:0 10px 24px rgba(0,102,135,.22);animation:countdown-pop .26s ease-out}@keyframes countdown-pop{0%{transform:scale(.8);opacity:.4}to{transform:scale(1);opacity:1}}.boarding-now{margin:.35rem 0 1.45rem;font-family:var(--font-stamp);font-size:1.02rem;letter-spacing:2.8px;text-transform:uppercase;color:var(--color-primary);opacity:0;min-height:1.2rem;transition:opacity .16s ease-out}.boarding-now-visible{opacity:.9}.countdown-destination-row{margin-top:.25rem;display:grid;justify-items:center;gap:.15rem}.countdown-destination-row h2{margin:0;font-size:clamp(1.4rem,4.8vw,2rem);letter-spacing:1.7px;text-transform:uppercase}.countdown-gate-copy{margin:.7rem 0 0;color:var(--color-on-surface-variant);font-family:var(--font-stamp);font-size:.78rem;letter-spacing:1.4px;text-transform:uppercase}.game-header{background:var(--color-surface-container);border-bottom:1px dashed var(--color-outline-variant);padding:.8rem 1rem}.header-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.header-mode{font-family:var(--font-stamp);letter-spacing:1px;text-transform:uppercase;font-size:.72rem}.header-score{min-width:70px;text-align:right;font-family:var(--font-stamp);font-size:1.125rem;font-weight:700;color:var(--color-secondary);font-variant-numeric:tabular-nums}.header-score--bump{animation:score-bump .28s cubic-bezier(.16,1,.3,1)}.hint-btn{border:1px solid var(--color-primary);border-radius:999px;background:var(--color-primary);color:#fff;font-family:var(--font-stamp);font-size:.65rem;letter-spacing:.8px;padding:.3rem .55rem;cursor:pointer;transition:background .12s ease-out}.hint-btn:hover:not(:disabled){background:color-mix(in srgb,var(--color-primary) 88%,var(--color-on-surface) 12%)}.hint-btn:disabled{cursor:not-allowed;opacity:.45}.timer-row{margin-top:.55rem}.timer-track-wrap{position:relative;width:calc(100% - 80px)}.timer-track{position:relative;width:100%;height:11px;border:1px dashed var(--color-outline-variant);border-radius:999px;overflow:hidden;background:var(--color-surface-container-high)}.timer-fill{position:absolute;left:0;top:0;bottom:0;width:100%;background:var(--color-primary);transform-origin:left center;transition:transform 1s linear}.timer-track[data-state=warning] .timer-fill{background:var(--color-secondary)}.timer-track[data-state=danger] .timer-fill{background:var(--color-error)}.timer-text{width:70px;text-align:right;font-family:var(--font-stamp);font-size:.9rem;font-variant-numeric:tabular-nums}.timer-text-warning{color:var(--color-secondary)}.timer-text-danger{color:var(--color-error);animation:timer-danger-pulse .9s ease-in-out infinite}@keyframes timer-danger-pulse{0%{opacity:1}50%{opacity:.45}to{opacity:1}}.quit-btn{width:40px;height:40px;border:1px solid var(--color-outline-variant);border-radius:999px;background:transparent;color:var(--color-on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease-out,border-color .12s ease-out}.quit-btn svg{width:15px;height:15px}.quit-btn:hover{background:var(--color-surface-container-high);border-color:var(--color-outline)}.quit-btn:active{transform:translateY(1px)}.question-shell{margin:1rem;animation:question-in .22s cubic-bezier(.16,1,.3,1) both}.question-card{padding:1rem;border:1.5px dashed var(--color-outline-variant);border-radius:16px;background:var(--color-surface-container-lowest)}.question-meta{display:flex;justify-content:space-between;gap:.5rem}.question-checkpoint{margin:.5rem 0 0;text-align:center;font-family:var(--font-stamp);font-size:.7rem;letter-spacing:1.8px;text-transform:uppercase;color:var(--color-on-surface-variant)}.question-card h2{margin:.7rem 0 0;font-family:var(--font-sans);font-size:1.5rem;font-weight:700;line-height:1.3;overflow-wrap:break-word}.question-country{margin:.7rem 0 0;font-family:var(--font-sans);font-size:clamp(2rem,6vw,2.55rem);font-weight:800;letter-spacing:2px;text-transform:uppercase;text-align:center;overflow-wrap:break-word;word-break:break-word;color:var(--color-primary)}.question-divider{display:block;width:100%;height:2px;margin-top:.72rem;background:repeating-linear-gradient(90deg,var(--color-outline-variant) 0 6px,transparent 6px 11px)}.question-subtitle{margin:.58rem 0 0;color:var(--color-on-surface-variant);font-size:.95rem;line-height:1.35;text-align:center}.question-media{margin-top:.75rem;border:1px solid var(--color-outline-variant);border-radius:14px;background:var(--color-surface-container-lowest);min-height:160px;aspect-ratio:2.15;overflow:hidden;display:grid;place-items:center}.question-media-outline{padding:1rem;aspect-ratio:unset;height:240px}.question-media-landmark{aspect-ratio:unset;min-height:unset;height:300px}.question-media-image{width:100%;height:100%;max-height:300px;-o-object-fit:contain;object-fit:contain}.question-media-image-outline{width:auto;height:auto;max-width:100%;max-height:200px;-o-object-fit:contain;object-fit:contain}.hint-letter-badge{margin:.8rem 0 0;padding:.5rem .75rem;border:1px solid var(--color-outline-variant);border-radius:10px;font-size:.9rem;color:var(--color-on-surface-variant);background:var(--color-surface-container-low);animation:question-in .2s cubic-bezier(.16,1,.3,1) both;display:inline-flex;align-items:center;gap:.4rem}.hint-letter{font-family:var(--font-stamp);font-size:1.15rem;color:var(--color-primary);font-weight:700}.pin-it-section{padding:0 1rem .7rem;display:grid;gap:.75rem;animation:question-in .22s cubic-bezier(.16,1,.3,1) both}.pin-map-shell{border:1px solid var(--color-outline-variant);border-radius:14px;background:linear-gradient(180deg,#dff3ff,#bde7ff);overflow:hidden}.pin-map{width:100%;height:auto;aspect-ratio:2;display:block;cursor:crosshair}.pin-map-ocean{fill:#75cbff73}.pin-map-country{fill:#ffffffdb;stroke:#1a4e6359;stroke-width:1}.pin-map-country-hint{fill:#ffd84dc7;stroke:#855d00a6}.pin-map-pin{stroke:#fff;stroke-width:2}.pin-map-pin-guess{fill:#2f6df6}.pin-map-pin-target{fill:#e53935}.pin-map-pin-core{fill:#fff}.pin-map-line{stroke:#153544bf;stroke-width:2;stroke-dasharray:6 5}.pin-it-result{border:1px solid var(--color-outline-variant);border-radius:12px;background:var(--color-surface-container-low);padding:.7rem .8rem;text-align:center;animation:question-in .25s cubic-bezier(.16,1,.3,1) both}.pin-it-distance{margin-top:.25rem;font-family:var(--font-sans);font-weight:800;font-size:1.3rem;color:var(--color-on-surface)}.pin-it-quality{margin-top:.15rem;color:var(--color-on-surface-variant);font-size:.92rem}.pin-it-points{margin-top:.3rem;color:var(--color-correct);font-family:var(--font-stamp);letter-spacing:.7px;text-transform:uppercase}.answers{display:grid;gap:.65rem;padding:0 1rem .7rem;animation:question-in .22s cubic-bezier(.16,1,.3,1) both}.answers-flags{padding:0 1rem .7rem}.flag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.flag-option{position:relative;display:grid;place-items:center;border:2px solid var(--color-outline-variant);border-bottom:4px solid var(--color-surface-container-high);border-radius:10px;background:#fff;padding:.35rem;overflow:hidden;cursor:pointer;min-height:92px}.flag-option img{width:100%;height:100%;min-height:84px;-o-object-fit:contain;object-fit:contain;display:block}.flag-option:disabled{cursor:default}.flag-selected{border-color:var(--color-primary-container);border-bottom-color:var(--color-on-primary-container)}.flag-correct{border-color:#10b981;border-bottom-color:#10b981}.flag-wrong{border-color:#ff3b30;border-bottom-color:#ff3b30;animation:answer-shake .3s cubic-bezier(.16,1,.3,1)}.flag-faded{opacity:.45}.flag-eliminated{opacity:.25;filter:grayscale(1);cursor:not-allowed}.answer-row{position:relative;border:2px solid var(--color-outline-variant);border-bottom:4px solid var(--color-surface-container-high);border-radius:10px;min-height:62px;display:grid;grid-template-columns:36px 1fr;align-items:center;gap:.65rem;padding:.55rem 3.9rem .55rem .65rem;background:#fff;cursor:pointer;text-align:left;transition:opacity .12s ease-out}.answer-row:disabled{cursor:default}.answer-letter{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;background:var(--color-surface-container-high);font-family:var(--font-stamp);font-size:.92rem}.answer-label{font-size:1rem;line-height:1.35;overflow-wrap:break-word;min-width:0}.flag-option .stamp{position:absolute;right:.25rem;top:.2rem}.answer-row .stamp{position:absolute;right:.35rem;top:-.45rem}.answer-selected{border-color:var(--color-primary-container);border-bottom-color:var(--color-on-primary-container)}.answer-correct{border-color:#10b981;border-bottom-color:#10b981}.answer-wrong{border-color:#ff3b30;border-bottom-color:#ff3b30;animation:answer-shake .3s cubic-bezier(.16,1,.3,1)}.answer-faded{opacity:.45}.answer-eliminated{opacity:.25;filter:grayscale(1);cursor:not-allowed;text-decoration:line-through}.stamp{position:relative;width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-stamp);font-size:.67rem;font-weight:700;letter-spacing:1px;line-height:1.05;text-transform:uppercase;border-radius:999px;border:3px solid currentColor;background:transparent;transform:rotate(-12deg);transform-origin:center;opacity:.88}.stamp:before{content:"";position:absolute;inset:6px;border-radius:999px;border:1px dashed currentColor;opacity:.65}@keyframes stamp-slam{0%{opacity:0;transform:scale(.15) rotate(-22deg)}30%{opacity:1;transform:scale(1.42) rotate(-5deg)}55%{transform:scale(.91) rotate(-14deg)}75%{transform:scale(1.05) rotate(-11deg)}to{opacity:1;transform:scale(1) rotate(-12deg)}}@keyframes stamp-spring{0%{opacity:0;transform:scale(.15) rotate(-25deg)}35%{opacity:1;transform:scale(1.35) rotate(-4deg)}58%{transform:scale(.89) rotate(-17deg)}78%{transform:scale(1.06) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(-12deg)}}.stamp-good{color:#10b981;animation:stamp-slam .3s cubic-bezier(.22,1,.36,1)}.stamp-bad{color:#ff3b30;animation:stamp-spring .32s cubic-bezier(.22,1,.36,1)}.status-row{display:flex;align-items:center;gap:.7rem;justify-content:space-between;padding:.55rem 1rem .9rem}.status-stat{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:48px}.status-label{font-family:var(--font-stamp);font-size:.58rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--color-outline)}.status-value{font-family:var(--font-stamp);font-size:.9rem;font-weight:600;color:var(--color-on-surface-variant);font-variant-numeric:tabular-nums}.status-value--hot{color:var(--color-secondary)}.status-value--score{color:var(--color-primary)}.status-instruction{flex:1;text-align:right;font-size:.84rem;color:var(--color-on-surface-variant)}.delta{margin-left:.3rem;color:var(--color-correct);font-family:var(--font-stamp)}.delta-distance{color:var(--color-on-surface-variant);letter-spacing:.2px}@keyframes results-fade-in-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes results-fade-in-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes results-score-pop{0%{transform:scale(1)}45%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes question-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes answer-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes score-bump{0%{transform:scale(1)}40%{transform:scale(1.2)}to{transform:scale(1)}}.results-trip-screen{display:grid;gap:1rem;justify-items:center;padding:1.5rem 1.25rem 2rem;background:var(--color-surface);border-radius:inherit;text-align:left}.results-hero{text-align:center;width:min(100%,620px);opacity:0;transform:translateY(10px)}.results-hero--visible{animation:results-fade-in-up .45s cubic-bezier(.16,1,.3,1) forwards}.results-hero-title{margin:0;font-family:var(--font-sans);font-size:clamp(1.9rem,5.5vw,2.5rem);font-weight:800;letter-spacing:-.4px;color:var(--color-primary)}.results-hero-subtitle{margin:.3rem 0 0;font-family:var(--font-stamp);font-size:.7rem;letter-spacing:1.2px;text-transform:uppercase;color:var(--color-outline)}.boarding-card{width:min(100%,620px);border-radius:16px;border:1px solid var(--color-outline-variant);background:var(--color-surface-container-lowest);overflow:visible;opacity:0;transform:translateY(14px)}.boarding-card--visible{animation:results-fade-in-up .52s cubic-bezier(.16,1,.3,1) .1s forwards}.receipt-divider{display:flex;align-items:center;margin:.2rem 0}.receipt-cutout{width:20px;height:20px;border-radius:999px;margin-inline:-10px;background:var(--color-surface);flex:none}.receipt-divider-line{flex:1;height:2px;background:repeating-linear-gradient(90deg,var(--color-outline-variant) 0 8px,transparent 8px 14px)}.boarding-card-top{padding:1rem 1.25rem 1.25rem;display:grid;gap:.75rem}.boarding-flight-row{display:flex;justify-content:space-between;align-items:center}.boarding-landed-badge{display:flex;align-items:center;gap:.3rem;color:var(--color-tertiary-container)}.boarding-landed-badge span{font-family:var(--font-stamp);font-size:.7rem;font-weight:700;letter-spacing:1.1px;text-transform:uppercase}.boarding-score-row{display:flex;align-items:center;justify-content:center;gap:1.5rem}.boarding-score-side{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem}.boarding-score-sep{width:1px;height:52px;background:var(--color-outline-variant);border-radius:.5px;flex:none}.boarding-score-num{display:block;font-family:var(--font-sans);font-size:clamp(2.2rem,8vw,2.8rem);font-weight:800;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--color-primary)}.boarding-score-num--pop{animation:results-score-pop .28s cubic-bezier(.16,1,.3,1) forwards}.boarding-xp-val{display:block;font-family:var(--font-sans);font-size:1.5rem;font-weight:800;line-height:1;color:var(--color-secondary-container);font-variant-numeric:tabular-nums}.boarding-card-mid{padding:1rem;display:grid;gap:.65rem}.boarding-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.boarding-metric{border-radius:10px;border:1px solid var(--color-outline-variant);background:var(--color-surface-container-lowest);padding:.6rem .75rem;display:flex;flex-direction:column;gap:.2rem}.boarding-metric-val{font-family:var(--font-sans);font-size:1.3rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-on-surface);line-height:1.1}.boarding-metric-full{border-radius:10px;border:1px solid var(--color-outline-variant);background:var(--color-surface-container-lowest);padding:.6rem .75rem;display:grid;gap:.3rem}.boarding-perf-meta{margin:0;font-family:var(--font-stamp);font-size:.78rem;color:var(--color-outline)}.boarding-perf-track{height:8px;border-radius:999px;background:var(--color-surface-container-high);overflow:hidden;margin-top:.35rem}.boarding-perf-fill{height:100%;border-radius:999px;background:var(--color-primary);transition:width 1.2s cubic-bezier(.16,1,.3,1)}.boarding-manifest-row{display:flex;align-items:center;gap:.5rem;padding:.28rem 0}.boarding-manifest-name{flex:1;font-size:.88rem;font-weight:500;color:var(--color-on-surface);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.boarding-manifest-meta{font-family:var(--font-stamp);font-size:.76rem;color:var(--color-outline);min-width:34px;text-align:right}.boarding-manifest-score{font-family:var(--font-stamp);font-size:.88rem;font-weight:700;color:var(--color-primary);min-width:64px;text-align:right;font-variant-numeric:tabular-nums}.boarding-card-bot{padding:1rem 1.25rem 1.5rem;border-bottom-left-radius:15px;border-bottom-right-radius:15px;background:var(--color-surface-container);display:grid;gap:.75rem}.boarding-visas-row{display:flex;flex-wrap:wrap;gap:.75rem;padding:.25rem .125rem}.boarding-visa-wrap{position:relative}@keyframes boarding-stamp-press{0%{transform:scale(1.2) rotate(-4deg);opacity:0}60%{transform:scale(.93) rotate(-10deg);opacity:1}to{transform:scale(1) rotate(-8deg);opacity:1}}.boarding-visa-stamp{width:80px;height:80px;border-radius:50%;border:3px solid var(--stamp-border, var(--color-primary));background:var(--stamp-bg, #e8f7ff);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;opacity:0;transform:rotate(-8deg)}.boarding-visa-stamp--revealed{animation:boarding-stamp-press .38s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--stamp-index, 0) * .12s)}.boarding-visa-stamp__ring{position:absolute;inset:6px;border-radius:50%;border:1px dashed var(--stamp-border, var(--color-primary));opacity:.45;pointer-events:none}.boarding-visa-stamp__code{font-family:var(--font-stamp);font-size:1rem;font-weight:700;letter-spacing:.3px;color:var(--stamp-ink, var(--color-primary));line-height:1;position:relative;z-index:1}.boarding-new-badge{position:absolute;bottom:-4px;right:-4px;padding:2px 6px;border-radius:3px;background:var(--color-secondary);color:#fff;font-family:var(--font-stamp);font-size:.6875rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;transform:rotate(12deg)}.boarding-visa-locked{width:80px;height:80px;border-radius:50%;border:2px dashed var(--color-outline-variant);display:flex;align-items:center;justify-content:center;color:var(--color-outline);opacity:.5}.results-complete-overlay{position:absolute;inset:0;background:#0f0c08e0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;z-index:20}@keyframes overlay-fade-out{0%{opacity:1}to{opacity:0}}.results-complete-overlay--fading{animation:overlay-fade-out .38s cubic-bezier(.16,1,.3,1) forwards}.results-complete-stamp{width:96px;height:96px;border-radius:14px;border:4px solid var(--color-correct);background:var(--color-correct-container);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;position:relative}.results-complete-stamp__ring{position:absolute;inset:5px;border-radius:9px;border:1.5px dashed var(--color-correct);opacity:.5;pointer-events:none}.results-complete-stamp__main{font-family:var(--font-stamp);font-size:1.05rem;font-weight:700;letter-spacing:1px;color:var(--color-correct);line-height:1;position:relative;z-index:1}.results-complete-stamp__sub{font-family:var(--font-stamp);font-size:.6875rem;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:var(--color-correct);opacity:.7;position:relative;z-index:1}.results-complete-caption{font-family:var(--font-stamp);font-size:.7rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:#fff8efc7;margin:0}.boarding-actions{width:min(100%,620px);display:flex;flex-direction:row;align-items:stretch;gap:.65rem;opacity:0;transform:translateY(-10px)}.boarding-actions--visible{animation:results-fade-in-down .42s cubic-bezier(.16,1,.3,1) .45s forwards}.boarding-fly-again{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;flex:2}.secondary-action-share{width:48px;flex-shrink:0;padding:0;justify-content:center}.secondary-action-home{flex:1}.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;border-radius:12px;border:none;border-bottom:3px solid color-mix(in srgb,var(--color-primary) 70%,#000 30%);background:var(--color-primary);color:#fff;font-family:var(--font-stamp);font-size:1rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;transition:transform 80ms ease-out,border-bottom-width 80ms ease-out}.primary-action:active{border-bottom-width:1px;transform:translateY(2px)}.secondary-action{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:12px;border:1px solid var(--color-outline-variant);background:var(--color-surface-container-high);color:var(--color-on-surface-variant);font-family:var(--font-stamp);font-size:.875rem;font-weight:700;letter-spacing:.3px;text-transform:uppercase;cursor:pointer;transition:background .12s ease-out}.secondary-action:hover{background:var(--color-surface-container)}.secondary-action:active{opacity:.75}.action-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.action-icon svg{width:20px;height:20px}.quit-modal-backdrop{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:60}.quit-modal-card{width:min(100%,350px);border-radius:20px;border:1px solid var(--color-outline-variant);background:var(--color-surface-container-lowest);color:var(--color-on-surface);padding:1.2rem;box-shadow:var(--shadow-elevated);animation:quit-modal-in .22s ease-out}.quit-modal-icon-wrap{display:flex;justify-content:center;margin-bottom:.75rem}.quit-modal-icon-circle{width:64px;height:64px;border-radius:999px;background:var(--color-primary);color:#fff;display:grid;place-items:center}.quit-modal-icon-circle svg{width:26px;height:26px}.quit-modal-card h2{margin:0;text-align:center;font-family:var(--font-sans);font-size:1.35rem}.quit-modal-score-line{margin:.7rem 0 0;text-align:center;color:var(--color-on-surface-variant);line-height:1.45}.quit-modal-divider{margin:.9rem 0;border-top:1.5px dashed var(--color-outline-variant)}.quit-modal-warning{display:flex;align-items:center;gap:.6rem;background:var(--color-error-container);color:var(--color-on-error-container);border-radius:12px;padding:.7rem;margin-bottom:.95rem}.quit-modal-warning svg{width:18px;height:18px;flex:none}.quit-modal-warning p{margin:0;font-size:.85rem;line-height:1.3}.quit-stay-btn,.quit-abandon-btn{width:100%;border-radius:12px;text-transform:uppercase;letter-spacing:.6px;font-family:var(--font-stamp);cursor:pointer}.quit-stay-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--color-primary);border-bottom-width:3px;border-bottom-color:var(--color-on-primary-container);background:var(--color-primary);color:#fff;padding:.75rem 1rem}.quit-stay-btn svg{width:16px;height:16px}.quit-abandon-btn{margin-top:.55rem;border:0;background:transparent;color:var(--color-error);padding:.5rem}@keyframes quit-modal-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.hero-block-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.hero-block-text{flex:1;min-width:0}.hero-settings-btn{width:40px;height:40px;border:1px solid var(--color-outline-variant);border-radius:10px;background:var(--color-surface-container-lowest);color:var(--color-on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:background .12s ease-out,border-color .12s ease-out;margin-top:.2rem}.hero-settings-btn svg{width:18px;height:18px}.hero-settings-btn:hover{background:var(--color-surface-container-high);border-color:var(--color-outline)}.hero-settings-btn:active{transform:translateY(1px)}.daily-ticket-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.daily-ticket-inner{flex:1;min-width:0}.daily-ticket-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.daily-ticket-kicker{color:var(--color-secondary)!important}.daily-live-dot{width:7px;height:7px;border-radius:999px;background:var(--color-secondary);animation:daily-dot-pulse 2s ease-in-out infinite;flex:none}@keyframes daily-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.25)}}.daily-ticket-title{margin:.25rem 0 .2rem;font-family:var(--font-sans);font-size:1.05rem;color:var(--color-on-surface)}.daily-ticket-desc{margin:0;font-size:.85rem;color:var(--color-on-surface-variant);line-height:1.4}.settings-panel{position:absolute;inset:0;background:#fdf5e6;z-index:40;display:flex;flex-direction:column;overflow:hidden;animation:settings-slide-in .24s cubic-bezier(.16,1,.3,1)}@keyframes settings-slide-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.settings-header{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;background:#fdf5e6;flex:none}.settings-header .kicker{color:var(--color-primary);letter-spacing:1.6px}.settings-close-btn{width:40px;height:40px;border:none;background:transparent;color:var(--color-on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;transition:background .1s ease-out}.settings-close-btn svg{width:18px;height:18px}.settings-close-btn:hover{background:var(--color-surface-container)}.settings-perf-line{height:2px;margin:0 16px;background:repeating-linear-gradient(90deg,var(--color-outline-variant) 0 6px,transparent 6px 12px);flex:none}.settings-body{flex:1;overflow-y:auto;padding:12px 16px 40px;display:flex;flex-direction:column;gap:6px}.settings-section{margin-top:10px}.settings-section-label{font-family:var(--font-stamp);font-size:.65rem;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--color-outline);margin-bottom:8px;padding-left:4px}.settings-card-group{background:#fff;border:1px solid var(--color-outline-variant);border-radius:16px;overflow:hidden}.settings-row{display:flex;align-items:center;gap:14px;padding:13px 16px;width:100%;text-align:left;position:relative}.settings-row-btn{border:none;background:transparent;cursor:pointer;transition:background .1s ease-out}.settings-row-btn:hover{background:var(--color-surface-container-low)}.settings-row-btn:active{background:var(--color-surface-container)}.settings-row-label{cursor:pointer}.settings-store-row{text-decoration:none;color:var(--color-on-surface);display:flex;transition:background .1s ease-out}.settings-store-row:hover{background:var(--color-surface-container-low)}.settings-row-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--color-primary)}.settings-row-icon--dark{background:#1a1a1a!important;color:#fff}.settings-row-avatar{width:40px;height:40px;border-radius:12px;-o-object-fit:cover;object-fit:cover;flex:none}.settings-row-icon svg{width:22px;height:22px}.settings-row-content{flex:1;min-width:0}.settings-row-title{font-family:var(--font-sans);font-size:.9rem;font-weight:600;color:var(--color-on-surface);line-height:1.25}.settings-row-sub{font-family:var(--font-sans);font-size:.75rem;color:var(--color-outline);margin-top:2px;line-height:1.3}.settings-row-chevron{width:20px;height:20px;color:var(--color-outline);display:inline-flex;align-items:center;justify-content:center;flex:none;transition:transform .18s ease-out}.settings-row-chevron--open{transform:rotate(90deg)}.settings-row-chevron svg{width:100%;height:100%}.settings-divider-row{height:1px;background:repeating-linear-gradient(90deg,var(--color-outline-variant) 0 5px,transparent 5px 10px);margin-left:70px}.settings-stats-grid{display:flex;align-items:center;padding:16px;gap:0}.settings-stat-item{flex:1;text-align:center}.settings-stat-value{font-family:var(--font-sans);font-size:1.35rem;font-weight:800;color:var(--color-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.settings-stat-label{font-family:var(--font-stamp);font-size:.6875rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--color-outline);margin-top:3px}.settings-stat-divider{width:1px;height:40px;background:var(--color-outline-variant)}.settings-toggle-wrap{position:relative;flex:none}.settings-toggle-input{position:absolute;opacity:0;width:0;height:0}.settings-toggle-track{display:block;width:48px;height:28px;border-radius:14px;background:var(--color-outline-variant);position:relative;cursor:pointer;transition:background .2s ease-out}.settings-toggle-track--on{background:var(--color-primary)}.settings-toggle-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:11px;background:#fff;box-shadow:0 1px 4px #0000002e;transition:transform .2s cubic-bezier(.16,1,.3,1)}.settings-toggle-track--on .settings-toggle-thumb{transform:translate(20px)}.settings-help-row{align-items:flex-start}.settings-help-answer{font-size:.82rem;color:var(--color-on-surface-variant);line-height:1.5;margin-top:6px;padding-right:8px}.settings-badge-row{display:flex;gap:10px;flex-wrap:wrap;padding:4px 0 2px}.settings-badge-img{height:40px;width:auto;display:block;border-radius:6px;transition:opacity .1s ease-out}.settings-badge-img:hover{opacity:.85}.settings-footer{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:6px}.settings-footer-text{text-align:center;font-family:var(--font-stamp);font-size:.65rem;letter-spacing:.8px;color:var(--color-outline);margin:0;text-transform:uppercase}.settings-footer-links{display:flex;align-items:center;gap:8px}.settings-footer-link{font-family:var(--font-sans);font-size:.72rem;font-weight:500;color:var(--color-primary);text-decoration:underline;text-underline-offset:2px;transition:opacity .1s ease-out}.settings-footer-link:hover{opacity:.7}.settings-footer-dot{font-size:.75rem;color:var(--color-outline)}.feedback-overlay{position:fixed;inset:0;background:#00000080;z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem;animation:feedback-fade-in .18s ease-out}@keyframes feedback-fade-in{0%{opacity:0}to{opacity:1}}.feedback-card{background:#fdf5e6;border-radius:20px;padding:24px;width:100%;max-width:380px;box-shadow:0 20px 60px #00000040;animation:feedback-slide-up .24s cubic-bezier(.16,1,.3,1)}@keyframes feedback-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.feedback-header{display:flex;align-items:center;gap:12px;margin-bottom:0}.feedback-icon-circle{width:40px;height:40px;border-radius:12px;background:#ff5c261f;color:#ff5c26;display:flex;align-items:center;justify-content:center;flex:none}.feedback-icon-circle svg{width:20px;height:20px}.feedback-title{font-family:var(--font-stamp);font-size:.8rem;font-weight:700;letter-spacing:1.2px;color:var(--color-on-surface);flex:1}.feedback-divider{height:1px;margin:16px 0;background:repeating-linear-gradient(90deg,var(--color-outline-variant) 0 5px,transparent 5px 10px)}.feedback-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.feedback-pill{padding:6px 14px;border-radius:20px;border:1.5px solid var(--color-outline-variant);background:#fff;font-family:var(--font-sans);font-size:.8rem;font-weight:500;color:var(--color-outline);cursor:pointer;transition:all .12s ease-out}.feedback-pill--active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.feedback-pill:not(.feedback-pill--active):hover{border-color:var(--color-primary);color:var(--color-primary)}.feedback-textarea{width:100%;border:1.5px solid var(--color-outline-variant);border-radius:12px;padding:12px 14px;font-family:var(--font-sans);font-size:.875rem;line-height:1.5;color:var(--color-on-surface);background:#fff;resize:none;box-sizing:border-box;outline:none;transition:border-color .15s ease-out}.feedback-textarea:focus{border-color:var(--color-primary)}.feedback-textarea::-moz-placeholder{color:var(--color-outline)}.feedback-textarea::placeholder{color:var(--color-outline)}.feedback-actions{display:flex;gap:10px}.feedback-cancel-btn{flex:1;padding:12px;border-radius:12px;border:1.5px dashed var(--color-outline-variant);background:transparent;font-family:var(--font-sans);font-size:.875rem;font-weight:500;color:var(--color-outline);cursor:pointer;transition:background .1s ease-out}.feedback-cancel-btn:hover{background:var(--color-surface-container-low)}.feedback-send-btn{flex:2;padding:12px;border-radius:12px;border:none;border-bottom:3px solid var(--color-primary-dark, #004D67);background:var(--color-primary);font-family:var(--font-stamp);font-size:.875rem;font-weight:700;letter-spacing:.5px;color:#fff;cursor:pointer;transition:opacity .12s ease-out,transform .12s ease-out}.feedback-send-btn:hover:not(:disabled){opacity:.9}.feedback-send-btn:active:not(:disabled){transform:translateY(2px);border-bottom-width:1px}.feedback-send-btn:disabled{opacity:.45;cursor:not-allowed}.passport-widget{width:100%;font-family:var(--font-sans)}.pw-topbar{display:flex;align-items:center;justify-content:flex-end;margin-bottom:7px}.pw-topbar-label{font-family:var(--font-stamp);font-size:.72rem;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--color-outline)}.pw-settings-btn{width:30px;height:30px;border:1px solid var(--color-outline-variant);border-radius:7px;background:var(--color-surface-container);color:var(--color-on-surface-variant);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease-out;flex:none}.pw-settings-btn svg{width:14px;height:14px}.pw-settings-btn:hover{background:var(--color-surface-container-high)}.pw-settings-btn:active{transform:translateY(1px)}.pw-spread{display:flex;border-radius:var(--radius-xl);border:1px solid var(--color-outline-variant);overflow:visible;box-shadow:var(--shadow-elevated);position:relative}.pw-spread:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.08;pointer-events:none;z-index:1;border-radius:var(--radius-xl)}.pw-left{flex:.9;min-width:0;background:var(--color-surface-container-lowest);padding:16px 12px 14px 16px;display:flex;flex-direction:column;gap:10px;border-radius:var(--radius-xl) 0 0 var(--radius-xl)}.pw-spine{width:2px;flex:none;background:repeating-linear-gradient(to bottom,var(--color-outline-variant) 0 5px,transparent 5px 10px);margin:6px 0;opacity:.75}.pw-right{flex:1.1;min-width:0;background:var(--color-surface-container-lowest);padding:16px 16px 14px 12px;display:flex;flex-direction:column;gap:10px;border-radius:0 var(--radius-xl) var(--radius-xl) 0}.pw-issuer{display:block;font-family:var(--font-stamp);font-size:.6rem;letter-spacing:.6px;text-transform:uppercase;color:var(--color-outline);line-height:1}.pw-title{display:block;font-family:var(--font-sans);font-size:1.15rem;font-weight:900;letter-spacing:1.2px;text-transform:uppercase;color:var(--color-primary);line-height:1;margin-top:-2px}.pw-avatar{width:76px;height:76px;border-radius:50%;border:2px dashed var(--color-outline-variant);padding:3px;align-self:center;flex:none;box-sizing:border-box}.pw-avatar-inner{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center}.pw-avatar-emoji{font-size:2.2rem;line-height:1}.pw-avatar-img{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}.pw-field{display:flex;flex-direction:column;gap:0;min-width:0}.pw-field-row{display:flex;gap:8px}.pw-field-row .pw-field{flex:1;min-width:0}.pw-field-label{display:block;font-family:var(--font-stamp);font-size:.6rem;letter-spacing:.5px;text-transform:uppercase;color:var(--color-outline);line-height:1.3}.pw-field-val{display:block;font-family:var(--font-sans);font-size:1rem;font-weight:700;color:var(--color-on-surface);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-field-primary{color:var(--color-primary)}.pw-field-accent{color:var(--color-secondary)}.pw-xp{display:flex;flex-direction:column;gap:3px}.pw-xp-track{height:5px;border-radius:3px;background:#00000014;overflow:hidden}.pw-xp-fill{height:100%;border-radius:3px;background:var(--color-primary);transition:width .6s cubic-bezier(.16,1,.3,1)}.pw-xp-label{display:block;font-family:var(--font-stamp);font-size:.6rem;letter-spacing:.4px;color:var(--color-outline);line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pw-mrz{background:var(--color-surface-container-high);border-radius:var(--radius-sm);padding:5px 6px}.pw-mrz-line{font-family:var(--font-stamp);font-size:.55rem;letter-spacing:.2px;color:var(--color-on-surface-variant);line-height:1.65;white-space:nowrap;overflow:hidden}.pw-stamps-title{display:block;font-family:var(--font-stamp);font-size:.65rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--color-on-surface-variant);line-height:1}.pw-stamps-sub{display:block;font-family:var(--font-stamp);font-size:.6rem;letter-spacing:.4px;color:var(--color-outline);line-height:1;margin-top:-2px}.pw-stamps-grid-new{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:3px}.pw-vstamp{aspect-ratio:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:transparent;border:none;overflow:visible}.pw-vstamp--btn{all:unset;aspect-ratio:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:transparent;border:none;overflow:visible;cursor:pointer}.pw-vstamp--locked .pw-vstamp-stamp-svg,.pw-vstamp--locked .pw-vstamp-lock,.pw-vstamp--locked .pw-vstamp-locked-label{opacity:.45}.pw-vstamp-label{font-family:var(--font-stamp);font-size:.42rem;font-weight:700;letter-spacing:.3px;color:var(--vstamp-ink, var(--color-on-surface-variant));line-height:1.2;text-align:center;word-break:break-word;max-width:88%;position:relative;z-index:1;text-transform:uppercase}.pw-vstamp-icon{font-size:.65rem;line-height:1;position:relative;z-index:1}.pw-vstamp-lock{display:block;position:relative;z-index:1}.pw-vstamp-locked-label{font-family:var(--font-stamp);font-size:.38rem;font-weight:700;letter-spacing:.8px;color:#aaa;text-transform:uppercase;position:relative;z-index:1;line-height:1;margin-top:1px}.pw-best{min-width:0}@media(max-width:860px){.play-layout{grid-template-columns:1fr}.play-passport-sidebar{display:none}}@media(max-width:640px){.flag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-card-media{min-height:165px}.quick-grid-portrait{grid-template-columns:repeat(2,1fr)}.quick-card-portrait{height:195px}.featured-route-card{padding:.9rem}.featured-route-icon{width:42px;height:42px}.featured-route-copy h3{font-size:.98rem}.hero-block-inner{gap:.5rem}.count-number{font-size:clamp(4rem,24vw,6.2rem)}.boarding-actions .secondary-action{justify-content:center}.boarding-score-num{font-size:clamp(1.9rem,9vw,2.4rem)}.boarding-xp-val{font-size:1.25rem}.boarding-metrics-grid{gap:.5rem}.play-root{padding:0}.play-frame{border-radius:0;border-left:0;border-right:0}.timer-track-wrap{width:calc(100% - 65px)}}.lb-nav-row{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;padding:0 1.5rem 1.5rem}.lb-nav-link{font-family:var(--font-stamp);font-size:11px;font-weight:700;letter-spacing:1.2px;color:var(--color-primary);text-decoration:none;opacity:.75;transition:opacity .15s}.lb-nav-link:hover{opacity:1}.pw-vstamp-icon{width:.9rem;height:.9rem;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.pw-vstamp-icon svg{width:100%;height:100%;stroke:var(--vstamp-ink, var(--color-on-surface-variant))}.boarding-visa-stamp--stampCircle{width:80px;height:80px;border-radius:50%}.boarding-visa-stamp--stampCircle .boarding-visa-stamp__ring{border-radius:50%}.boarding-visa-stamp--stampDoubleRing{width:84px;height:84px;border-radius:50%}.boarding-visa-stamp--stampDoubleRing .boarding-visa-stamp__ring{border-radius:50%;border-style:solid;opacity:.38}.boarding-visa-stamp--stampOval{width:100px;height:64px;border-radius:999px}.boarding-visa-stamp--stampOval .boarding-visa-stamp__ring{border-radius:999px;border-style:solid;inset:5px;opacity:.38}.boarding-visa-stamp--stampRectWide{width:96px;height:62px;border-radius:6px}.boarding-visa-stamp--stampRectWide .boarding-visa-stamp__ring{border-radius:4px;border-style:solid;opacity:.35}.boarding-visa-stamp--stampRectTall{width:56px;height:78px;border-radius:6px}.boarding-visa-stamp--stampRectTall .boarding-visa-stamp__ring{border-radius:4px}.boarding-visa-stamp--stampDiamond{width:72px;height:72px;border-radius:10px;clip-path:polygon(30% 0%,70% 0%,100% 30%,100% 70%,70% 100%,30% 100%,0% 70%,0% 30%)}.boarding-visa-stamp--stampDiamond .boarding-visa-stamp__ring{border-radius:6px;clip-path:polygon(30% 0%,70% 0%,100% 30%,100% 70%,70% 100%,30% 100%,0% 70%,0% 30%);opacity:.4}.boarding-visa-stamp--stampTriangle{width:80px;height:80px;border-radius:50%;clip-path:polygon(50% 4%,98% 94%,2% 94%)}.boarding-visa-stamp--stampTriangle .boarding-visa-stamp__ring{border-radius:50%;clip-path:polygon(50% 4%,98% 94%,2% 94%);opacity:.38}.boarding-visa-stamp--stampWaxSeal{width:80px;height:80px;border-radius:50%;box-shadow:0 0 0 3px var(--stamp-bg, #e8f7ff),0 0 0 5px var(--stamp-border, var(--color-primary))}.boarding-visa-stamp--stampWaxSeal .boarding-visa-stamp__ring{border-radius:50%;border-style:solid;inset:8px;opacity:.35}.boarding-visa-earned{display:flex;flex-direction:column;gap:.5rem}.boarding-visa-earned-grid{display:flex;flex-wrap:wrap;gap:.625rem;padding:.125rem 0}@keyframes visa-stamp-pop{0%{transform:scale(.6) rotate(-12deg);opacity:0}65%{transform:scale(1.1) rotate(-8deg);opacity:1}to{transform:scale(1) rotate(-6deg);opacity:1}}.visa-earned-item{display:flex;flex-direction:column;align-items:center;gap:4px}.visa-earned-stamp{display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;background:transparent;position:relative;opacity:0;transform:scale(.6) rotate(-12deg);overflow:visible}.visa-earned-stamp--visible{animation:visa-stamp-pop .36s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(var(--vstamp-index, 0) * .08s)}.visa-earned-stamp{width:52px;height:52px}.visa-earned-stamp__code{font-family:var(--font-stamp);font-size:.6rem;font-weight:700;letter-spacing:.3px;color:var(--vstamp-ink, var(--color-primary));line-height:1;position:relative;z-index:1;text-align:center;padding:0 4px}.visa-earned-name{font-family:var(--font-stamp);font-size:.5625rem;font-weight:600;letter-spacing:.3px;color:var(--color-on-surface-variant);text-align:center;max-width:72px;line-height:1.2;text-transform:uppercase}.web-adbreak-overlay{position:fixed;inset:0;z-index:9999;background:#0d1b2a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;animation:web-adbreak-fade-in .2s ease forwards}@keyframes web-adbreak-fade-in{0%{opacity:0}to{opacity:1}}.web-adbreak-sweep-track{position:absolute;top:30%;left:0;right:0;height:40px;overflow:hidden;display:flex;align-items:center;pointer-events:none}.web-adbreak-track-line{position:absolute;inset:50% 0 auto;height:1px;background:#ffffff1a}.web-adbreak-plane{position:absolute;left:-32px;font-size:1.5rem;line-height:1;opacity:.6;animation:web-adbreak-plane-sweep 2.3s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes web-adbreak-plane-sweep{0%{transform:translate(0)}to{transform:translate(calc(100vw + 64px))}}.web-adbreak-content{display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 2rem}.web-adbreak-label-row{display:flex;align-items:center;gap:10px}.web-adbreak-dash{display:block;width:20px;height:1px;background:#c9a84c;opacity:.6}.web-adbreak-small-label{font-family:var(--font-mono, monospace);font-size:.625rem;font-weight:700;letter-spacing:.2em;color:#c9a84c;opacity:.85;text-transform:uppercase}.web-adbreak-headline{font-family:var(--font-display, sans-serif);font-size:1.875rem;font-weight:800;letter-spacing:.06em;color:#ffffffe6;text-align:center;line-height:1.2;margin:0}.web-adbreak-sponsor{font-size:.8125rem;color:#ffffff80;font-style:italic;letter-spacing:.02em;margin:0}.web-adbreak-dots{display:flex;gap:10px;margin-top:4px}.web-adbreak-dot{display:block;width:8px;height:8px;border-radius:50%;background:#c9a84c;opacity:.25}.web-adbreak-dot--1{animation:web-adbreak-dot-fill .3s ease forwards;animation-delay:0ms}.web-adbreak-dot--2{animation:web-adbreak-dot-fill .3s ease forwards;animation-delay:.6s}.web-adbreak-dot--3{animation:web-adbreak-dot-fill .3s ease forwards;animation-delay:1.2s}@keyframes web-adbreak-dot-fill{0%{opacity:.25}to{opacity:1}}.web-adbreak-ad-slot{margin-top:24px;width:100%;max-width:360px;display:flex;justify-content:center}.web-adbreak-footer{position:absolute;bottom:2.5rem;font-family:var(--font-mono, monospace);font-size:.625rem;letter-spacing:.2em;color:#fff6;text-transform:uppercase}.home-ad-break{display:flex;justify-content:center;padding:.5rem 0 1.5rem}.results-banner-ad{margin-top:1.25rem;width:100%;max-width:480px}.boarding-visa-wrap--btn,.visa-earned-item--btn{background:none;border:none;padding:0;margin:0;cursor:pointer;font:inherit;display:flex;flex-direction:column;align-items:center;gap:.375rem;-webkit-tap-highlight-color:transparent}.boarding-visa-wrap--btn:focus-visible,.visa-earned-item--btn:focus-visible{outline:2px solid var(--callout-color, #006687);outline-offset:3px;border-radius:6px}.boarding-visa-wrap--active .boarding-visa-stamp,.visa-earned-item--active .visa-earned-stamp{box-shadow:0 0 0 3px var(--callout-color, #006687),0 0 0 5px color-mix(in srgb,var(--callout-color, #006687) 20%,transparent);transition:box-shadow .15s ease}.stamp-callout{display:flex;align-items:center;gap:.625rem;margin-top:.75rem;padding:.625rem .75rem;background:color-mix(in srgb,var(--callout-color, #006687) 8%,transparent);border:1px solid color-mix(in srgb,var(--callout-color, #006687) 30%,transparent);border-radius:8px;animation:callout-slide-in .18s ease both}@keyframes callout-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.stamp-callout__accent{display:none}.stamp-callout__body{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.stamp-callout__title{font-family:var(--font-mono, monospace);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--callout-color, #006687);line-height:1.2}.stamp-callout__desc{font-size:.75rem;color:#000000a6;line-height:1.35}.pw-vstamp--btn:focus-visible{outline:2px solid var(--vstamp-border, var(--color-primary));outline-offset:2px;border-radius:3px}.pw-vstamp-callout-float{position:absolute;top:50%;transform:translateY(-50%);left:calc(100% + 7px);z-index:30;width:140px;display:flex;align-items:flex-start;gap:.4rem;padding:6px 8px;background:#fff;border:1.5px solid color-mix(in srgb,var(--callout-color, #006687) 30%,transparent);border-left:3px solid var(--callout-color, #006687);border-radius:6px;box-shadow:0 2px 10px #0000001f;pointer-events:none;animation:callout-float-in .15s ease both}.pw-vstamp-callout-float--left{left:auto;right:calc(100% + 7px);border-left:1.5px solid color-mix(in srgb,var(--callout-color, #006687) 30%,transparent);border-right:3px solid var(--callout-color, #006687)}.pw-vstamp-callout-float:not(.pw-vstamp-callout-float--left):before{content:"";position:absolute;left:-5px;top:50%;transform:translateY(-50%);border:4px solid transparent;border-right-color:var(--callout-color, #006687)}.pw-vstamp-callout-float--left:before{content:"";position:absolute;right:-5px;top:50%;transform:translateY(-50%);border:4px solid transparent;border-left-color:var(--callout-color, #006687)}.pw-vstamp-callout-float .stamp-callout__body{flex:1;min-width:0}.pw-vstamp-callout-float .stamp-callout__title{font-size:.6rem}.pw-vstamp-callout-float .stamp-callout__desc{font-size:.65rem}@keyframes callout-float-in{0%{opacity:0;transform:translateY(-50%) scale(.95)}to{opacity:1;transform:translateY(-50%) scale(1)}}.stats-widget{width:100%;margin-top:12px;background:var(--color-surface-container-lowest);border-radius:var(--radius-xl);border:1px dashed var(--color-outline-variant);box-shadow:var(--shadow-elevated);padding:14px 16px;display:flex;flex-direction:column;gap:10px;font-family:var(--font-sans);position:relative;overflow:hidden}.stats-widget:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.06;pointer-events:none;z-index:0;border-radius:var(--radius-xl)}.stats-widget>*{position:relative;z-index:1}.stats-widget-header{font-family:var(--font-stamp);font-size:.6rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--color-outline);line-height:1}.stats-loading{font-family:var(--font-stamp);font-size:.65rem;color:var(--color-outline);text-align:center;padding:8px 0}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.stat-card{display:flex;flex-direction:column;gap:1px;background:var(--color-surface-container);border:1px dashed var(--color-outline-variant);border-radius:var(--radius-sm);padding:7px 10px;min-width:0}.stat-card-value{display:block;font-size:1rem;font-weight:700;color:var(--color-on-surface);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.stat-card-label{display:block;font-family:var(--font-stamp);font-size:.56rem;letter-spacing:.5px;text-transform:uppercase;color:var(--color-outline);line-height:1.3}.stats-divider{height:2px;background:repeating-linear-gradient(to right,var(--color-outline-variant) 0 6px,transparent 6px 12px);opacity:.7;margin:0 -2px}.stats-pro-section{display:flex;flex-direction:column;gap:8px}.stats-section-label{font-family:var(--font-stamp);font-size:.58rem;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--color-outline)}.stats-last10-row{display:flex;background:color-mix(in srgb,var(--color-surface-container) 60%,transparent);border-radius:var(--radius-sm);padding:8px 4px}.stats-last10-cell{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0 4px}.stats-last10-cell--bordered{border-left:1px solid var(--color-outline-variant)}.stats-last10-value{font-size:1rem;font-weight:700;color:var(--color-on-surface);line-height:1.2}.stats-last10-label{font-family:var(--font-stamp);font-size:.52rem;letter-spacing:.4px;text-transform:uppercase;color:var(--color-outline);text-align:center}.stats-highlight-row{display:grid;grid-template-columns:1fr 1fr}.stats-mode-chips{display:flex;flex-wrap:wrap;gap:6px}.stats-mode-chip{display:flex;flex-direction:column;align-items:center;gap:1px;background:var(--color-surface-container);border:1px dashed var(--color-outline-variant);border-radius:var(--radius-sm);padding:6px 10px;min-width:56px}.stats-mode-chip-count{font-size:1rem;font-weight:700;color:var(--color-on-surface);line-height:1.2}.stats-mode-chip-label{font-family:var(--font-stamp);font-size:.52rem;letter-spacing:.4px;text-transform:uppercase;color:var(--color-outline);text-align:center}.stats-cal-scroll{overflow-x:auto;scrollbar-width:none}.stats-cal-scroll::-webkit-scrollbar{display:none}.stats-cal-month-label{position:absolute;font-family:var(--font-stamp);font-size:.5rem;letter-spacing:.3px;color:var(--color-outline);line-height:1;top:0}.stats-cal-grid{display:flex;flex-direction:row;gap:2px}.stats-cal-col{display:flex;flex-direction:column;gap:2px}.stats-cal-cell{width:9px;height:9px;border-radius:2px;flex:none}.stats-pro-locked{position:relative;border-radius:var(--radius-sm);overflow:hidden;cursor:default;min-height:140px}.stats-pro-locked-blur{display:flex;flex-direction:column;gap:8px;padding:8px 4px;filter:blur(5px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.7;transform:scale(1.02)}.stats-pro-fake-cal{height:44px;border-radius:4px;background:repeating-linear-gradient(to right,color-mix(in srgb,var(--color-primary) 20%,transparent) 0 9px,transparent 9px 11px);opacity:.6}.stats-pro-locked-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--color-surface-container-lowest) 55%,transparent);backdrop-filter:blur(3px);transition:background .25s ease,backdrop-filter .25s ease}.stats-pro-locked:hover .stats-pro-locked-overlay{background:color-mix(in srgb,var(--color-surface-container-lowest) 85%,transparent);backdrop-filter:blur(8px)}.stats-pro-lock-resting{display:flex;align-items:center;justify-content:center;transition:opacity .2s ease,transform .2s ease;position:absolute}.stats-pro-lock-svg{width:26px;height:26px;color:var(--color-outline);filter:drop-shadow(0 1px 3px color-mix(in srgb,var(--color-primary) 20%,transparent))}.stats-pro-lock-resting{animation:lock-pulse 3s ease-in-out infinite}@keyframes lock-pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.08);opacity:1}}.stats-pro-locked:hover .stats-pro-lock-resting{opacity:0;transform:scale(.8);animation:none;pointer-events:none}.stats-pro-upsell{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 16px;opacity:0;transform:translateY(6px);transition:opacity .22s ease,transform .22s ease;pointer-events:none;text-align:center;max-width:220px}.stats-pro-locked:hover .stats-pro-upsell{opacity:1;transform:translateY(0);pointer-events:auto}.stats-pro-upsell-lock{width:20px;height:20px;color:var(--color-primary);margin-bottom:2px;flex:none}.stats-pro-upsell-title{font-family:var(--font-sans);font-size:.9rem;font-weight:800;color:var(--color-on-surface);letter-spacing:.2px;line-height:1}.stats-pro-upsell-sub{font-family:var(--font-sans);font-size:.68rem;color:var(--color-on-surface-variant);line-height:1.45}.stats-pro-upsell-actions{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap;justify-content:center}.stats-pro-upsell-btn{display:inline-block;padding:6px 14px;border-radius:20px;font-family:var(--font-stamp);font-size:.6rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;text-decoration:none;transition:opacity .15s ease,transform .15s ease;background:var(--color-primary);color:var(--color-on-primary, #fff);flex:none}.stats-pro-upsell-btn--secondary{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.stats-pro-upsell-btn:hover{opacity:.88;transform:translateY(-1px)}.stats-pro-upsell-btn:active{transform:translateY(0)}@keyframes nudge-slide-in{0%{transform:translate(260px);opacity:0}to{transform:translate(0);opacity:1}}.sign-in-nudge{position:fixed;top:16px;right:16px;width:256px;display:flex;flex-direction:row;align-items:center;background:#fff;border:1px solid #BDC8CF;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;z-index:900;animation:nudge-slide-in .45s cubic-bezier(.34,1.56,.64,1) forwards}.sign-in-nudge-accent{width:4px;align-self:stretch;background:var(--color-primary, #006687);flex-shrink:0}.sign-in-nudge-body{flex:1;display:flex;flex-direction:row;align-items:center;gap:8px;padding:10px 4px 10px 10px;background:none;border:none;cursor:pointer;text-align:left;min-width:0}.sign-in-nudge-body:hover .sign-in-nudge-title{text-decoration:underline}.sign-in-nudge-google-circle{width:30px;height:30px;border-radius:50%;background:#4285f41a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sign-in-nudge-google-circle svg{width:16px;height:16px}.sign-in-nudge-text{display:flex;flex-direction:column;gap:1px;min-width:0}.sign-in-nudge-title{font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:700;line-height:1.4;color:var(--color-on-surface, #1E1B13);white-space:nowrap}.sign-in-nudge-sub{font-family:Plus Jakarta Sans,sans-serif;font-size:10px;font-weight:500;letter-spacing:.3px;color:var(--color-outline, #6E797F);white-space:nowrap}.sign-in-nudge-close{padding:10px 10px 10px 6px;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-outline, #6E797F);flex-shrink:0;transition:color .15s}.sign-in-nudge-close svg{width:14px;height:14px}.sign-in-nudge-close:hover{color:var(--color-on-surface, #1E1B13)}
