.points-main{padding-bottom:24px}.points-main button,.points-main input,.points-main select{font:inherit}.points-main button,.points-main a,.points-main input,.points-main select{touch-action:manipulation}.points-main button{cursor:pointer}.points-main button:disabled{cursor:wait;opacity:.6}.points-main button:focus-visible,.points-main a:focus-visible,.points-main input:focus-visible,.points-main select:focus-visible{outline:3px solid #818cf8;outline-offset:3px}.skip-link{position:absolute;left:20px;top:-100px;padding:12px;background:white;z-index:200}.skip-link:focus{top:10px}.preview-label{font-size:12px;color:#64748b;border:1px solid #dce2ea;border-radius:6px;padding:5px 9px}.nav-links [aria-current]{background:#eef2ff;color:#4338ca}.points-hero{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:62px 0 36px}.points-hero .eyebrow,.results-heading .eyebrow{font-size:11px;letter-spacing:.13em;font-weight:700;margin:0 0 12px}.points-hero h1{font-size:clamp(42px,6vw,70px);letter-spacing:-.06em;line-height:1.08;margin:0 0 16px}.points-hero h1 span{color:#4f46e5}.points-lede{font-size:23px;font-weight:600;letter-spacing:-.03em;margin:0 0 10px}.points-intro{max-width:560px;font-size:15px;color:#64748b;line-height:1.7;margin:0}.hero-ticket{flex:0 0 295px;background:#eef2ff;border:1px solid #dbe0fb;border-radius:14px;padding:28px;transform:rotate(-3deg);color:#3730a3}.hero-ticket>span{font-size:10px;letter-spacing:.16em}.hero-ticket>div{font-size:21px;letter-spacing:-.04em;font-weight:700;margin:18px 0;padding-bottom:20px;border-bottom:1px dashed #b4bcef}.hero-ticket b{margin:0 10px}.hero-ticket small{font-size:12px;color:#6366a0}.mode-notice{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px 20px;margin-bottom:20px}.notice-dot{width:8px;height:8px;background:#d97706;border-radius:50%;flex-shrink:0}.mode-notice strong{font-size:13px}.mode-notice p{font-size:12px;color:#64748b;margin:3px 0 0}.mode-notice button{margin-left:auto;white-space:nowrap}.mode-notice.demo{background:#fffbeb;border-color:#fde68a}.points-search-panel{background:white;border:1px solid #dce2ea;box-shadow:0 5px 20px #0f172a05;border-radius:14px;padding:26px 30px;scroll-margin-top:85px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.panel-heading h2{font-size:18px;letter-spacing:-.03em;margin:0}.panel-heading>span{font-size:12px;color:#64748b}.points-route{display:grid;grid-template-columns:1fr 44px 1fr;gap:16px;align-items:start}.points-location{position:relative;min-width:0}.points-location>label,.points-preferences>label{display:block;color:#475569;font-size:12px;font-weight:600}.points-location>input,.points-preferences input,.points-preferences select,.result-controls select{display:block;width:100%;min-height:48px;background:#f8fafc;border:1px solid #dce2ea;border-radius:8px;padding:11px 12px;color:#0f172a;margin-top:7px;font-size:14px}.points-location input:focus{background:white}.points-swap{border:1px solid #dce2ea;background:white;color:#4f46e5;border-radius:50%;width:44px;height:44px;font-size:22px!important;margin-top:25px}.points-preferences{display:grid;grid-template-columns:1.2fr 1fr 1.2fr .8fr;gap:16px;margin-top:22px}.airport-selection{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px;color:#64748b;font-size:11px}.airport-selection label{display:flex;align-items:center;gap:4px;min-height:30px;padding:2px 5px}.airport-selection input{accent-color:#4f46e5}.points-suggestions{position:absolute;left:0;right:0;top:81px;z-index:10;background:white;border:1px solid #dce2ea;border-radius:8px;box-shadow:0 12px 24px #0f172a18;max-height:280px;overflow:auto}.points-option{display:flex;flex-direction:column;width:100%;border:0;border-bottom:1px solid #f1f5f9;background:white;text-align:left;gap:3px;padding:12px;color:#0f172a;font-size:13px!important;min-height:44px}.points-option small{color:#64748b;font-size:11px}.points-option:hover,.points-option[aria-selected=true]{background:#eef2ff}.points-submit{display:flex;align-items:center;justify-content:space-between;margin-top:22px;border-top:1px solid #edf0f5;padding-top:20px;gap:20px}.points-submit p{margin:0;font-size:12px;color:#475569}.points-submit small{color:#64748b}.primary-button,.secondary-button{border-radius:8px;min-height:44px;padding:10px 17px;font-size:13px!important;font-weight:600!important}.primary-button{background:#4f46e5;border:1px solid #4f46e5;color:white}.primary-button:hover{background:#4338ca}.primary-button span{margin-left:18px}.secondary-button{background:white;border:1px solid #dce2ea;color:#334155}.secondary-button:hover{background:#f1f5f9}.points-results-section{padding:38px 0 0}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.results-heading .eyebrow{margin-bottom:8px;color:#64748b}.results-heading h2{font-size:23px;letter-spacing:-.03em;margin:0}.results-heading p:not(.eyebrow){font-size:13px;color:#64748b;margin:7px 0 0}.result-controls{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:20px 0}.program-filters{display:flex;flex-wrap:wrap;gap:7px}.program-filters button{border:1px solid #dce2ea;border-radius:7px;min-height:40px;padding:8px 12px;font-size:12px;background:white;color:#475569}.program-filters button[aria-pressed=true]{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.result-controls>label{font-size:11px;color:#64748b;min-width:155px}.result-controls select{font-size:12px;min-height:40px;padding:7px 10px;margin-top:3px}.award-card{display:grid;grid-template-columns:minmax(0,1fr) 230px;background:white;border:1px solid #dce2ea;border-radius:12px;margin-bottom:14px;overflow:hidden}.award-info{padding:22px 24px}.award-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.program-mark{width:34px;height:34px;border-radius:9px;background:#eef2ff;color:#4338ca;display:grid;place-items:center;font-size:12px;font-weight:700}.award-program{font-size:14px;font-weight:650}.award-operator{font-size:11px;color:#64748b}.award-badge{margin-left:auto;border:1px solid #dce2ea;border-radius:5px;padding:3px 7px;font-size:10px;color:#475569}.award-route{display:flex;align-items:center;gap:24px;margin:21px 0 17px}.award-endpoint strong{font-size:24px;letter-spacing:-.04em}.award-endpoint small{display:block;font-size:12px;color:#64748b}.award-line{width:90px;display:flex;flex-direction:column;align-items:center;gap:5px;color:#64748b;font-size:10px}.award-line>span{width:100%;height:1px;background:#cbd5e1;position:relative}.award-line>span:after{content:'›';position:absolute;right:-2px;top:-13px;font-size:20px}.award-meta{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:12px;color:#475569}.award-freshness{margin:13px 0 0;color:#64748b;font-size:11px}.award-freshness.stale{color:#b45309}.award-price{background:#fafbff;border-left:1px solid #edf0f5;padding:24px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.award-price .miles{font-size:30px;font-weight:700;letter-spacing:-.05em;line-height:1.1}.award-price .miles small{font-size:12px;font-weight:500;letter-spacing:0;color:#64748b}.award-price .taxes{font-size:13px;margin:5px 0 13px}.award-price .per-traveler{font-size:10px;color:#64748b;margin-bottom:14px}.award-price a{display:block;min-height:44px;padding:10px 12px;border-radius:7px;background:#4f46e5;color:white;font-size:12px;text-align:center;width:100%}.award-price .sample-action{font-size:11px;color:#92400e;border:1px dashed #e5d2a2;border-radius:6px;padding:10px;width:100%}.award-price .cash-compare{background:transparent;color:#4f46e5;padding:9px 0;text-align:left}.award-segments{margin-top:14px;font-size:11px;color:#64748b}.award-segments summary{cursor:pointer;min-height:28px}.award-segments ul{padding-left:18px}.points-empty{text-align:center;padding:46px 20px;border:1px dashed #d5dce7;border-radius:12px;margin-top:20px;background:#ffffff70}.empty-symbol{font-size:26px;color:#6366f1}.points-empty h3{font-size:17px;letter-spacing:-.02em;margin:12px 0 7px}.points-empty p{font-size:13px;color:#64748b;max-width:480px;margin:0 auto 18px}.points-error{padding:16px 20px;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;margin:20px 0}.points-error p{font-size:13px;color:#991b1b;margin-top:0}.points-guide{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;border-top:1px solid #e2e8f0;margin-top:38px;padding-top:28px}.points-guide article>span{font-size:10px;letter-spacing:.1em;color:#64748b}.points-guide h3{font-size:14px;margin:8px 0}.points-guide p{font-size:12px;color:#64748b;line-height:1.7;margin:0}.points-footer{display:flex;justify-content:space-between;gap:18px;font-size:11px;color:#64748b;padding:38px 0 8px}.points-loading{display:grid;gap:14px;margin-top:20px}.skeleton{height:170px;background:linear-gradient(90deg,#eef2f7,#f8fafc,#eef2f7);background-size:200% 100%;border-radius:12px;animation:shimmer 1.5s ease-in-out infinite}@keyframes shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}@media(max-width:800px){.hero-ticket{display:none}.points-hero{padding-top:35px}.preview-label{display:none}.points-search-panel{padding:22px}.mode-notice{flex-wrap:wrap}.mode-notice button{margin-left:20px}.award-card{grid-template-columns:minmax(0,1fr) 205px}.points-preferences{grid-template-columns:1fr 1fr}.results-heading{align-items:flex-start}.nav-links a{padding:8px 10px}}@media(max-width:550px){.shell{width:calc(100% - 32px)}.nav{height:auto;min-height:76px;flex-wrap:wrap;gap:8px;padding:12px 0}.brand{font-size:22px}.nav-links{gap:0}.nav-links a{font-size:11px;padding:8px}.points-hero{padding:30px 0 25px}.points-lede{font-size:20px}.points-intro{font-size:13px}.points-route{grid-template-columns:minmax(0,1fr);gap:9px}.points-swap{margin:0;justify-self:end;width:36px;height:36px;transform:rotate(90deg)}.points-search-panel{padding:20px 16px}.panel-heading{align-items:flex-start}.panel-heading h2{font-size:16px}.panel-heading>span{font-size:10px;white-space:nowrap}.points-preferences{gap:12px}.points-submit{align-items:stretch;flex-direction:column;gap:12px}.mode-notice{padding:14px}.mode-notice>div{flex:1}.mode-notice button{margin:3px 0 0 20px}.results-heading{flex-wrap:wrap;gap:12px}.results-heading h2{font-size:20px}.result-controls{align-items:stretch;flex-direction:column}.result-controls>label{max-width:210px}.award-card{grid-template-columns:minmax(0,1fr)}.award-info{padding:20px}.award-price{border-left:0;border-top:1px solid #edf0f5;padding:18px 20px}.award-route{gap:18px}.award-line{flex:1;max-width:110px}.award-meta{font-size:11px}.points-guide{grid-template-columns:1fr;gap:22px}.points-footer{flex-wrap:wrap}.points-footer span{order:3;width:100%}}
.estimate-badge{border-color:#c7d2fe;color:#4338ca;background:#eef2ff}.estimate-notes{margin:14px 0 0;padding-left:18px;font-size:12px;color:#475569;line-height:1.6}.estimate-gap{font-size:12px;color:#92400e;margin:12px 0 0}.estimate-source{font-size:11px;color:#64748b;margin:12px 0 0}.estimate-source a{color:#4f46e5}.award-price .cash-compare+.cash-compare{padding-top:0}
.cpp-form{border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px 14px;margin:16px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cpp-form legend{font-size:12px;font-weight:650;color:#334155;padding:0 4px}.cpp-form label{font-size:11px;color:#475569;font-weight:600}.cpp-form input{display:block;width:100%;min-height:40px;margin-top:5px;background:#f8fafc;border:1px solid #dce2ea;border-radius:7px;padding:8px 10px;font-size:13px;color:#0f172a}.cpp-result{grid-column:1/-1;font-size:13px;color:#0f172a}@media(max-width:550px){.cpp-form{grid-template-columns:1fr}}
.beta-label{color:#4338ca;border-color:#c7d2fe;background:#eef2ff;font-weight:700}
@media(max-width:800px){.preview-label.beta-label{display:inline-block}}
.estimate-transfers{font-size:12px;color:#334155;margin:12px 0 0}.estimate-transfers a{color:#4f46e5}
.estimate-nonstop{font-size:12px;color:#334155;margin:12px 0 0}
.points-wallet{background:#fff;border:1px solid #dce2ea;border-radius:12px;padding:14px 20px;margin-top:16px}.points-wallet summary{cursor:pointer;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;min-height:32px}.points-wallet summary span{font-weight:650;font-size:14px}.points-wallet summary small{font-size:12px;color:#64748b}.wallet-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:12px}.wallet-grid label{font-size:11px;color:#475569;font-weight:600}.wallet-grid input{display:block;width:100%;min-height:40px;margin-top:5px;background:#f8fafc;border:1px solid #dce2ea;border-radius:7px;padding:8px 10px;font-size:13px}.wallet-note{font-size:11px;color:#64748b;margin:10px 0 0}.estimate-wallet{font-size:12px;font-weight:600;margin:12px 0 0;color:#166534}.estimate-wallet[data-status=short]{color:#92400e}
.points-explore{padding-top:38px}.explore-form{display:grid;grid-template-columns:1.4fr 1fr 1.2fr .8fr auto;gap:12px;align-items:end;margin-top:16px;background:#fff;border:1px solid #dce2ea;border-radius:12px;padding:18px 20px}.explore-form label{font-size:12px;color:#475569;font-weight:600}.explore-form input,.explore-form select{display:block;width:100%;min-height:44px;margin-top:6px;background:#f8fafc;border:1px solid #dce2ea;border-radius:8px;padding:9px 11px;font-size:14px}.explore-status{font-size:13px;color:#475569;margin:14px 0}.explore-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid #dce2ea;border-radius:10px;padding:14px 18px;margin-bottom:10px}.explore-place strong{display:block;font-size:15px}.explore-place small{font-size:11px;color:#64748b}.explore-options{list-style:none;margin:0;padding:0;font-size:12px;color:#334155;display:grid;gap:3px}.explore-covered{color:#166534;font-weight:600}.explore-links{display:flex;flex-direction:column;gap:4px;font-size:12px}.explore-links a{color:#4f46e5;font-weight:600;min-height:28px;display:inline-flex;align-items:center}
@media(max-width:800px){.wallet-grid{grid-template-columns:1fr 1fr}.explore-form{grid-template-columns:1fr 1fr}.explore-row{grid-template-columns:1fr}}
.explore-check{display:flex;align-items:center;gap:6px;font-size:12px;min-height:44px}.explore-check input{width:auto;min-height:0;margin:0}
.explore-form{grid-template-columns:1.4fr 1fr 1.2fr .8fr auto auto}@media(max-width:800px){.explore-form{grid-template-columns:1fr 1fr}}
