*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #ffffff;--bg-soft: #f7f8fa;--bg-card: #ffffff;--bg-card-hover: #f0f4ff;--bg-footer: #1a1d27;--text: #1a1d27;--text-secondary: #5f6577;--accent: #2563eb;--accent-glow: rgba(37, 99, 235, .08);--deal: #16a34a;--flash-deal: #ea580c;--rare: #dc2626;--slight: #64748b;--border: #e2e5ed;--border-light: #d1d5e0;--star-filled: #f59e0b;--star-empty: #d1d5e0;--header-bg: rgba(255, 255, 255, .88);--hero-glow: rgba(37, 99, 235, .06);--shadow-card: 0 1px 3px rgba(0, 0, 0, .06);--shadow-card-hover: 0 4px 12px rgba(37, 99, 235, .1);--notice-bg: rgba(245, 158, 11, .06);--notice-border: rgba(245, 158, 11, .2);--notice-text: #b45309;--disclaimer-bg: #f7f8fa;--radius: 12px;--radius-lg: 16px;--max-width: 1100px;color-scheme:light}[data-theme=dark]{--bg: #0a0c10;--bg-soft: #0f1117;--bg-card: #161923;--bg-card-hover: #1e2230;--bg-footer: #080a0e;--text: #e4e6ed;--text-secondary: #8b8fa3;--accent: #4f8ff7;--accent-glow: rgba(79, 143, 247, .15);--deal: #00c853;--flash-deal: #ff9100;--rare: #ff1744;--slight: #78909c;--border: #1e2235;--border-light: #2a2e3d;--star-filled: #ffc107;--star-empty: #3a3e4f;--header-bg: rgba(10, 12, 16, .85);--hero-glow: rgba(79, 143, 247, .08);--shadow-card: none;--shadow-card-hover: none;--notice-bg: rgba(255, 193, 7, .08);--notice-border: rgba(255, 193, 7, .2);--notice-text: #ffc107;--disclaimer-bg: rgba(255, 255, 255, .02);color-scheme:dark}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans TC,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--header-bg);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-inner{max-width:var(--max-width);margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between}.header-logo{display:flex;align-items:center;gap:8px;text-decoration:none}.header-icon{font-size:1.3rem}.header-brand{font-size:1.25rem;font-weight:700;color:var(--accent)}.header-right{display:flex;align-items:center;gap:24px}.header-nav{display:flex;gap:28px}.header-nav a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s}.header-nav a:hover{color:var(--text)}.theme-toggle{background:none;border:1px solid var(--border);border-radius:8px;padding:6px 8px;cursor:pointer;font-size:1.1rem;line-height:1;color:var(--text-secondary);transition:border-color .2s,background .2s;display:flex;align-items:center;justify-content:center}.theme-toggle:hover{border-color:var(--accent);background:var(--accent-glow)}.hero{background:radial-gradient(ellipse at 50% 0%,var(--hero-glow) 0%,transparent 70%);border-bottom:1px solid var(--border)}.hero-inner{max-width:var(--max-width);margin:0 auto;padding:80px 24px 60px;text-align:center}.hero-badge{display:inline-block;padding:6px 16px;background:var(--accent-glow);border:1px solid rgba(37,99,235,.2);border-radius:20px;font-size:.8rem;color:var(--accent);font-weight:600;letter-spacing:.5px;margin-bottom:24px}[data-theme=dark] .hero-badge{border-color:#4f8ff740}.hero-title{font-size:2.8rem;font-weight:800;line-height:1.3;margin-bottom:20px}.hero-highlight{background:linear-gradient(135deg,var(--accent),#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .hero-highlight{background:linear-gradient(135deg,#4f8ff7,#8b5cf6);-webkit-background-clip:text;background-clip:text}.hero-desc{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto 32px;line-height:1.8}.hero-actions{display:flex;gap:16px;justify-content:center;margin-bottom:48px}.hero-stats{display:flex;justify-content:center;gap:48px}.hero-stat{display:flex;flex-direction:column;align-items:center}.hero-stat-num{font-size:1.5rem;font-weight:700;color:var(--accent)}.hero-stat-label{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.btn{display:inline-block;padding:12px 28px;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;border:none}.btn-primary{background:linear-gradient(135deg,var(--accent),#1d4ed8);color:#fff}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#4f8ff7,#3b7be6)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px #2563eb40}.btn-outline{background:transparent;color:var(--text);border:1px solid var(--border-light)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-full{width:100%;text-align:center}.section-inner{max-width:var(--max-width);margin:0 auto;padding:80px 24px}.section-header{text-align:center;margin-bottom:48px}.section-title{font-size:2rem;font-weight:700;margin-bottom:12px}.section-subtitle{font-size:1rem;color:var(--text-secondary);max-width:500px;margin:0 auto}.deals-section{background:var(--bg-soft);border-bottom:1px solid var(--border)}.deals-section .section-inner{max-width:780px}.deals-delay-notice{display:flex;align-items:center;gap:10px;padding:14px 18px;background:var(--notice-bg);border:1px solid var(--notice-border);border-radius:var(--radius);font-size:.85rem;color:var(--notice-text);margin-bottom:24px}.notice-icon{font-size:1.1rem;flex-shrink:0}.deal-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:16px;box-shadow:var(--shadow-card);transition:background .2s,border-color .2s,box-shadow .2s}.deal-card:hover{background:var(--bg-card-hover);border-color:var(--accent);box-shadow:var(--shadow-card-hover)}.deal-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.deal-route{display:flex;align-items:center;gap:8px}.deal-route-text{font-size:1.15rem;font-weight:700;color:var(--text)}.deal-route-arrow{color:var(--accent);font-size:1rem}.deal-route-cities{font-size:.8rem;color:var(--text-secondary);margin-top:2px}.tier-badge{font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:20px;white-space:nowrap}.tier-slight{background:#64748b1a;color:var(--slight)}.tier-deal{background:#16a34a1a;color:var(--deal)}.tier-flash_deal{background:#ea580c1a;color:var(--flash-deal)}.tier-rare{background:#dc26261a;color:var(--rare)}.deal-body{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:16px}.deal-info{flex:1}.deal-airline{font-size:.9rem;color:var(--accent);font-weight:600;margin-bottom:4px}.deal-date{font-size:.85rem;color:var(--text-secondary)}.deal-price-block{text-align:right}.deal-price{font-size:1.6rem;font-weight:800;color:var(--text)}.deal-price-currency{font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-right:2px}.deal-baseline{font-size:.78rem;color:var(--text-secondary);text-decoration:line-through;margin-top:2px}.deal-card-footer{display:flex;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--border)}.drop-bar-container{flex:1;height:8px;background:var(--border);border-radius:4px;overflow:hidden}.drop-bar{height:100%;border-radius:4px;transition:width .3s ease}.drop-bar-slight{background:var(--slight)}.drop-bar-deal{background:var(--deal)}.drop-bar-flash_deal{background:var(--flash-deal)}.drop-bar-rare{background:var(--rare)}.drop-pct{font-size:.85rem;font-weight:700;white-space:nowrap}.drop-pct-slight{color:var(--slight)}.drop-pct-deal{color:var(--deal)}.drop-pct-flash_deal{color:var(--flash-deal)}.drop-pct-rare{color:var(--rare)}.drop-label{font-size:.75rem;color:var(--text-secondary)}.deal-detected{font-size:.75rem;color:var(--text-secondary);margin-top:8px;text-align:right}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--text-secondary);font-size:.9rem}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state,.error-state{text-align:center;padding:48px 16px;color:var(--text-secondary)}.empty-icon{font-size:2.5rem;margin-bottom:12px}.error-state button{margin-top:12px;padding:8px 24px;background:var(--accent);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.9rem}.error-state button:hover{opacity:.85}.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:28px;padding-top:20px;border-top:1px solid var(--border)}.pagination-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled):not(.pagination-active){border-color:var(--accent);color:var(--accent);background:var(--accent-glow)}.pagination-btn:disabled{opacity:.35;cursor:not-allowed}.pagination-active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}[data-theme=dark] .pagination-active{background:#4f8ff7;border-color:#4f8ff7}.features-section{background:var(--bg);border-bottom:1px solid var(--border)}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 24px;box-shadow:var(--shadow-card);transition:border-color .2s,transform .2s,box-shadow .2s}.feature-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.feature-icon{font-size:2rem;margin-bottom:16px}.feature-title{font-size:1.05rem;font-weight:600;margin-bottom:10px}.feature-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.7}.pricing-section{background:var(--bg-soft)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}.pricing-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px 28px;position:relative;box-shadow:var(--shadow-card);transition:border-color .2s,transform .2s,box-shadow .2s}.pricing-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.pricing-highlight{border-color:var(--accent);box-shadow:0 4px 24px #2563eb1f}[data-theme=dark] .pricing-highlight{box-shadow:0 0 40px #4f8ff71a}.pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,var(--accent),#1d4ed8);color:#fff;padding:4px 16px;border-radius:20px;font-size:.75rem;font-weight:700;white-space:nowrap}[data-theme=dark] .pricing-badge{background:linear-gradient(135deg,#4f8ff7,#3b7be6)}.pricing-header{text-align:center;margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid var(--border)}.pricing-name{font-size:1.15rem;font-weight:600;margin-bottom:16px}.pricing-name-en{display:block;font-size:.8rem;color:var(--text-secondary);font-weight:400;margin-top:4px}.pricing-price{display:flex;align-items:baseline;justify-content:center;gap:2px;margin-bottom:12px}.pricing-currency-note{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-size:.85rem;color:var(--text-secondary)}.currency-flag{display:inline-block;padding:3px 10px;background:var(--accent-glow);border:1px solid var(--accent);border-radius:6px;font-size:.75rem;font-weight:700;color:var(--accent);letter-spacing:.5px}.pricing-currency{font-size:.7rem;font-weight:700;color:var(--accent);letter-spacing:.5px;margin-right:2px}.pricing-dollar{font-size:1.2rem;font-weight:600;color:var(--text-secondary)}.pricing-amount{font-size:3rem;font-weight:800;line-height:1;color:var(--text)}.pricing-period{font-size:.9rem;color:var(--text-secondary)}.pricing-target{font-size:.82rem;color:var(--text-secondary);line-height:1.6}.pricing-features{list-style:none;margin-bottom:28px}.pricing-features li{display:flex;align-items:flex-start;gap:10px;font-size:.85rem;color:var(--text-secondary);line-height:1.6;padding:8px 0;border-bottom:1px solid var(--border)}.pricing-features li:last-child{border-bottom:none}.pricing-check{color:var(--deal);font-weight:700;flex-shrink:0;margin-top:2px}.pricing-disclaimer{text-align:center;margin-top:32px;font-size:.8rem;color:var(--text-secondary);font-style:italic}.footer{border-top:1px solid var(--border);background:var(--bg-footer);color:#c8cad0}.footer-inner{max-width:var(--max-width);margin:0 auto;padding:60px 24px 32px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}.footer-brand{font-size:1.3rem;font-weight:700;color:#4f8ff7;margin-bottom:12px}.footer-brand-desc{font-size:.85rem;color:#8b8fa3;line-height:1.7;margin-bottom:16px}.footer-contact p{font-size:.8rem;color:#8b8fa3}.footer-col-title{font-size:.9rem;font-weight:600;color:#e4e6ed;margin-bottom:16px}.footer-links{list-style:none}.footer-links li{margin-bottom:10px}.footer-links a{font-size:.85rem;color:#8b8fa3;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#4f8ff7}.footer-divider{height:1px;background:#2a2e3d;margin-bottom:24px}.footer-disclaimer{margin-bottom:24px;padding:20px;background:#ffffff08;border:1px solid #2a2e3d;border-radius:var(--radius)}.footer-disclaimer p{font-size:.78rem;color:#8b8fa3;line-height:1.8;margin-bottom:8px}.footer-disclaimer p:last-child{margin-bottom:0}.footer-disclaimer strong{color:#c8cad0;font-weight:600}.footer-bottom{display:flex;justify-content:space-between;align-items:center}.footer-copy{font-size:.78rem;color:#5f6577}.footer-bottom-links{display:flex;align-items:center;gap:8px}.footer-bottom-links a{font-size:.78rem;color:#8b8fa3;text-decoration:none;transition:color .2s}.footer-bottom-links a:hover{color:#4f8ff7}.footer-dot{color:#5f6577;font-size:.7rem}@media(max-width:768px){.hero-title{font-size:2rem}.hero-desc{font-size:1rem}.hero-stats{gap:24px}.hero-stat-num{font-size:1.2rem}.features-grid{grid-template-columns:1fr;gap:16px}.pricing-grid{grid-template-columns:1fr;gap:20px;max-width:420px;margin:0 auto}.header-nav{gap:16px}.header-nav a{font-size:.8rem}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-col-brand{grid-column:1 / -1}.footer-bottom{flex-direction:column;gap:12px;text-align:center}}@media(max-width:480px){.hero-inner{padding:48px 16px 40px}.hero-title{font-size:1.7rem}.hero-actions{flex-direction:column;align-items:center}.section-inner{padding:48px 16px}.section-title{font-size:1.5rem}.deal-card{padding:16px}.deal-body{flex-direction:column;align-items:flex-start}.deal-price-block{text-align:left}.pricing-card{padding:24px 20px}.footer-grid{grid-template-columns:1fr}.header-right{gap:12px}}
