:root{--color-primary:#10b981;--color-primary-50:#ecfdf5;--color-primary-100:#d1fae5;--color-primary-200:#a7f3d0;--color-primary-300:#6ee7b7;--color-primary-400:#34d399;--color-primary-500:#10b981;--color-primary-600:#059669;--color-primary-700:#047857;--color-primary-800:#065f46;--color-primary-900:#064e3b;--color-primary-dark:var(--color-primary-700);--color-success:#10b981;--color-success-light:#d1fae5;--color-success-dark:#059669;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-warning-dark:#d97706;--color-error:#ef4444;--color-error-light:#fee2e2;--color-error-dark:#dc2626;--color-info:#3b82f6;--color-info-light:#dbeafe;--color-info-dark:#2563eb;--color-purple:#8b5cf6;--color-purple-light:#ede9fe;--color-purple-dark:#7c3aed;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--gray-700:var(--color-gray-700);--gray-900:var(--color-gray-900);--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-hover:#f3f4f6;--bg-page:linear-gradient(135deg, #f0fdf4 0%, #e0f2fe 100%);--bg-glass:#f8fafce6;--bg-glass-header:#fffc;--text-primary:#1f2937;--text-secondary:#4b5563;--text-tertiary:#6b7280;--text-placeholder:#d1d5db;--text-inverse:#fff;--border-light:#e5e7eb;--border-medium:#d1d5db;--border-focus:#10b9811a;--aqi-excellent:#22c55e;--aqi-good:#84cc16;--aqi-moderate:#eab308;--aqi-unhealthy:#f97316;--aqi-verybad:#ef4444;--aqi-hazardous:#991b1b;--aqi-bg-excellent:#f0fdf4;--aqi-bg-good:#ecfccf;--aqi-bg-moderate:#fef9c3;--aqi-bg-unhealthy:#ffedd5;--aqi-bg-verybad:#fee2e2;--aqi-bg-hazardous:#feca8a;--gradient-aqi:linear-gradient(90deg, #22c55e 0%, #84cc16 17%, #eab308 33%, #f97316 50%, #ef4444 67%, #991b1b 100%);--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-card:var(--radius-xl);--radius-input:var(--radius-lg);--radius-badge:var(--radius-full);--radius-avatar:var(--radius-full);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--shadow-none:none;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #00000026;--shadow-2xl:0 25px 50px #00000040;--shadow-button:var(--shadow-md);--shadow-button-hover:var(--shadow-lg);--shadow-card:0 6px 24px #0000000f;--shadow-card-hover:0 8px 32px #00000014;--shadow-input:0 2px 4px #0000000a;--shadow-input-focus:0 0 0 3px var(--border-focus);--shadow-glass:0 6px 24px #0000000f;--font-family-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-family-mono:ui-monospace, Consolas, "SF Mono", Monaco, monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--text-4xl:30px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--leading-tight:1.2;--leading-normal:1.4;--leading-relaxed:1.6;--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s;--duration-slower:.5s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--transition-fast:all var(--duration-fast) var(--ease-in-out);--transition-normal:all var(--duration-normal) var(--ease-in-out);--transition-slow:all var(--duration-slow) var(--ease-in-out);--z-base:1;--z-dropdown:10;--z-sticky:20;--z-overlay:30;--z-modal:40;--z-toast:50;--z-navigation:100;--max-width-container:1400px;--max-width-content:1200px;--sidebar-width:400px;--header-height:80px}@media (prefers-color-scheme:dark){:root{--color-primary:#34d399;--color-primary-500:#10b981;--color-primary-600:#34d399;--color-primary-dark:var(--color-primary-600);--bg-primary:#1f2937;--bg-secondary:#111827;--bg-hover:#374151;--bg-page:linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);--bg-glass:#1f2937e6;--bg-glass-header:#111827cc;--text-primary:#f3f4f6;--text-secondary:#d1d5db;--text-tertiary:#9ca3af;--text-placeholder:#4b5563;--text-inverse:#1f2937;--border-light:#374151;--border-medium:#4b5563;--border-focus:#34d39933;--shadow-card:0 6px 24px #0000004d;--shadow-card-hover:0 8px 32px #0006}}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-glass);border:1px solid #ffffffb3}.card{background:var(--bg-primary);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:var(--transition-normal)}.card:hover{box-shadow:var(--shadow-card-hover)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-button);font-size:var(--text-base);font-weight:var(--font-semibold);font-family:var(--font-family-sans);cursor:pointer;transition:var(--transition-normal);border:none;outline:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:var(--text-inverse);box-shadow:var(--shadow-button)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-button-hover);transform:translateY(-2px)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-light)}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.input{padding:var(--space-4);border:2px solid var(--border-light);border-radius:var(--radius-input);font-size:var(--text-base);font-family:var(--font-family-sans);background:var(--bg-primary);color:var(--text-primary);transition:var(--transition-normal);box-shadow:var(--shadow-input)}.input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-input-focus);outline:none}.input::placeholder{color:var(--text-placeholder)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;line-height:1.5}body{font-family:var(--font-family-sans);color:var(--text-primary);background:var(--bg-page);min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:4px}:focus-visible{outline:none;box-shadow:0 0 0 3px #10b98133}button{cursor:pointer;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.5}input{font-family:inherit;font-size:inherit}.container{width:100%;max-width:var(--max-width-container);padding:var(--space-4);margin:0 auto}.app-container{width:100%;height:100vh;overflow:hidden}.app-header[data-v-53efa706]{padding:var(--space-3) var(--space-4);background:var(--bg-glass-header);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light);height:var(--header-height);z-index:var(--z-sticky);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;overflow:visible}.header-brand[data-v-53efa706]{align-items:center;gap:var(--space-3);display:flex;overflow:visible}.logo-icon[data-v-53efa706]{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative;box-shadow:0 4px 12px #10b9814d}.leaf-icon[data-v-53efa706]{font-size:var(--text-3xl);z-index:2;line-height:1}.pulse-ring[data-v-53efa706]{border:2px solid var(--color-primary);border-radius:var(--radius-full);animation:2s infinite pulse-53efa706;position:absolute;inset:0}@keyframes pulse-53efa706{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}.brand-name[data-v-53efa706]{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);letter-spacing:.02em}.language-switch[data-v-53efa706]{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--font-medium);color:#1f2937;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:0 0;border:1px solid #d1d5db}.language-switch[data-v-53efa706]:hover{background:#f3f4f6;border-color:#1f2937}.language-switch[data-v-53efa706]:active{transform:scale(.95)}@media (width<=640px){.app-header[data-v-53efa706]{padding:var(--space-2) var(--space-3);height:60px}.brand-name[data-v-53efa706]{font-size:var(--text-lg)}.logo-icon[data-v-53efa706]{width:40px;height:40px}.leaf-icon[data-v-53efa706]{font-size:var(--text-2xl)}}.icon[data-v-8a3ecb9b]{vertical-align:middle;flex-shrink:0;transition:transform .2s;display:inline-block}.icon[data-v-8a3ecb9b]:hover{transform:scale(1.05)}.icon:not(.icon-logo) [stroke=\#1F2937][data-v-8a3ecb9b]{stroke:currentColor}.icon:not(.icon-logo) [fill=\#1F2937][data-v-8a3ecb9b]{fill:currentColor}.icon:not(.icon-logo) [stroke=\#6B7280][data-v-8a3ecb9b]{stroke:currentColor;opacity:.75}.icon:not(.icon-logo) [fill=\#374151][data-v-8a3ecb9b],.icon:not(.icon-logo) [fill=\#6B7280][data-v-8a3ecb9b]{fill:currentColor;opacity:.75}.icon-spin[data-v-8a3ecb9b]{animation:1s linear infinite icon-spin-8a3ecb9b}.icon-pulse[data-v-8a3ecb9b]{animation:1.5s ease-in-out infinite icon-pulse-8a3ecb9b}@keyframes icon-spin-8a3ecb9b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes icon-pulse-8a3ecb9b{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.map-container[data-v-70aa70d3]{background:var(--bg-secondary);width:100%;height:100%;position:relative}.map-view[data-v-70aa70d3]{width:100%;height:100%}.map-controls[data-v-70aa70d3]{bottom:var(--space-4);right:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex;position:absolute}.map-control-btn[data-v-70aa70d3]{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;width:44px;height:44px;transition:var(--transition-fast);color:var(--text-primary);justify-content:center;align-items:center;display:flex}.map-control-btn[data-v-70aa70d3]:hover{background:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.map-control-btn[data-v-70aa70d3]:disabled{opacity:.5;cursor:not-allowed}.map-control-btn.loading[data-v-70aa70d3]{color:var(--color-primary)}.zoom-controls[data-v-70aa70d3]{gap:var(--space-1);flex-direction:column;display:flex}.map-stop-label[data-v-70aa70d3]{border:1px solid var(--border-light);color:var(--text-primary);white-space:nowrap;background:#fffffff2;border-radius:6px;padding:2px 6px;font-size:12px;box-shadow:0 2px 6px #00000026}.zoom-icon[data-v-70aa70d3]{font-size:var(--text-xl);font-weight:var(--font-bold)}@media (width<=640px){.map-controls[data-v-70aa70d3]{bottom:var(--space-3);right:var(--space-3)}.map-control-btn[data-v-70aa70d3]{width:40px;height:40px}}.location-panel[data-v-52587492]{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-xl);padding:var(--space-4);gap:var(--space-4);border:1px solid var(--border-light);flex-direction:column;display:flex}.input-section[data-v-52587492]{gap:var(--space-2);flex-direction:column;display:flex}.section-header[data-v-52587492]{align-items:center;gap:var(--space-2);display:flex}.section-label[data-v-52587492]{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-primary)}.section-hint[data-v-52587492]{font-size:var(--text-xs);color:var(--text-tertiary)}.input-wrapper[data-v-52587492]{gap:var(--space-2);display:flex}.location-input[data-v-52587492]{padding:var(--space-3);font-size:var(--text-base);border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);transition:var(--transition-fast);flex:1}.location-input[data-v-52587492]:focus{border-color:var(--color-primary);box-shadow:var(--shadow-input-focus)}.input-action-btn[data-v-52587492]{padding:var(--space-3);background:var(--color-primary-50);border:1px solid var(--color-primary-200);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);justify-content:center;align-items:center;display:flex}.input-action-btn[data-v-52587492]:hover{background:var(--color-primary-100);border-color:var(--color-primary)}.input-action-btn[data-v-52587492]:disabled{opacity:.5;cursor:not-allowed}.suggestions-list[data-v-52587492]{gap:var(--space-1);flex-direction:column;max-height:200px;display:flex;overflow-y:auto}.suggestion-item[data-v-52587492]{padding:var(--space-2) var(--space-3);background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);gap:var(--space-1);flex-direction:column;display:flex}.suggestion-item[data-v-52587492]:hover{background:var(--bg-hover);border-color:var(--color-primary)}.suggestion-name[data-v-52587492]{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.suggestion-address[data-v-52587492]{font-size:var(--text-xs);color:var(--text-tertiary)}.destinations-list[data-v-52587492]{gap:var(--space-2);flex-direction:column;display:flex}.destination-item[data-v-52587492]{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex}.dest-number[data-v-52587492]{background:var(--color-primary);width:24px;height:24px;color:var(--text-inverse);font-size:var(--text-xs);font-weight:var(--font-bold);border-radius:50%;justify-content:center;align-items:center;display:flex}.dest-name[data-v-52587492]{font-size:var(--text-sm);color:var(--text-primary);flex:1}.dest-remove-btn[data-v-52587492]{padding:var(--space-1);cursor:pointer;color:var(--text-tertiary);background:0 0;border:none}.dest-remove-btn[data-v-52587492]:hover{color:var(--color-error)}.route-preference[data-v-52587492]{gap:var(--space-2);flex-direction:column;display:flex}.preference-options[data-v-52587492]{gap:var(--space-2);display:flex}.preference-btn[data-v-52587492]{align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--bg-primary);border:2px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);flex-direction:column;flex:1;display:flex}.preference-btn[data-v-52587492]:hover{border-color:var(--color-primary)}.preference-btn.active[data-v-52587492]{background:var(--color-primary-50);border-color:var(--color-primary)}.preference-label[data-v-52587492]{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.plan-route-btn[data-v-52587492]{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-inverse);background:var(--color-primary);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-fast);border:none;display:flex}.plan-route-btn[data-v-52587492]:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.plan-route-btn[data-v-52587492]:active{transform:translateY(0)}.plan-route-btn[data-v-52587492]:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (width<=640px){.location-panel[data-v-52587492]{padding:var(--space-3)}.preference-options[data-v-52587492]{flex-direction:column}.plan-route-btn[data-v-52587492]{padding:var(--space-3);font-size:var(--text-base)}}.route-options[data-v-fd0af0cd]{gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex}.options-header[data-v-fd0af0cd]{align-items:center;gap:var(--space-2);display:flex}.back-btn[data-v-fd0af0cd]{align-items:center;gap:var(--space-1);border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;padding:6px 10px;display:inline-flex}.back-icon[data-v-fd0af0cd]{font-weight:var(--font-semibold)}.back-text[data-v-fd0af0cd]{font-size:var(--text-sm)}.header-title[data-v-fd0af0cd]{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.route-summary[data-v-fd0af0cd]{padding:var(--space-3);background:var(--bg-glass);border:1px solid var(--border-light);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;display:flex}.summary-left[data-v-fd0af0cd]{align-items:center;gap:var(--space-2);display:flex}.summary-title[data-v-fd0af0cd]{font-weight:var(--font-semibold);color:var(--text-primary)}.summary-sub[data-v-fd0af0cd]{font-size:var(--text-sm);color:var(--text-secondary)}.summary-aqi[data-v-fd0af0cd]{font-weight:var(--font-semibold)}.route-stops[data-v-fd0af0cd]{background:var(--bg-glass);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.stops-header[data-v-fd0af0cd]{align-items:center;gap:var(--space-2);color:var(--text-primary);font-weight:var(--font-semibold);display:flex}.stops-title[data-v-fd0af0cd]{font-size:var(--text-md)}.stops-list[data-v-fd0af0cd]{gap:var(--space-2);flex-direction:column;display:flex}.stop-item[data-v-fd0af0cd]{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-secondary);border-radius:var(--radius-md);grid-template-columns:32px 1fr auto;display:grid}.stop-badge[data-v-fd0af0cd]{width:26px;height:26px;font-size:12px;font-weight:var(--font-bold);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.stop-badge.start[data-v-fd0af0cd]{background:#10b981}.stop-badge.end[data-v-fd0af0cd]{background:#3b82f6}.stop-badge.mid[data-v-fd0af0cd]{background:#f59e0b}.stop-name[data-v-fd0af0cd]{color:var(--text-primary);font-size:var(--text-sm);white-space:normal;word-break:break-all}.stop-aqi[data-v-fd0af0cd]{font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap}.start-navigation-btn[data-v-fd0af0cd]{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-inverse);background:var(--color-primary);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-fast);border:none;display:flex}.start-navigation-btn[data-v-fd0af0cd]:hover{background:var(--color-primary-dark);transform:translateY(-2px)}.start-navigation-btn[data-v-fd0af0cd]:disabled{opacity:.5;cursor:not-allowed;transform:none}.no-routes[data-v-fd0af0cd]{align-items:center;gap:var(--space-3);padding:var(--space-8);flex-direction:column;display:flex}.no-routes-text[data-v-fd0af0cd]{font-size:var(--text-base);color:var(--text-tertiary)}@media (width<=640px){.route-options[data-v-fd0af0cd]{padding:var(--space-3)}.route-summary[data-v-fd0af0cd]{align-items:flex-start;gap:var(--space-2);flex-direction:column}}.navigation-panel[data-v-cc9c3e68]{gap:var(--space-3);padding:var(--space-4);background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-xl);border:1px solid var(--border-light);flex-direction:column;display:flex}.turn-indicator-area[data-v-cc9c3e68]{gap:var(--space-2);flex-direction:column;display:flex}.turn-card[data-v-cc9c3e68]{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--bg-primary);border-radius:var(--radius-lg);border:2px solid var(--color-primary);transition:var(--transition-fast);display:flex}.turn-card.immediate[data-v-cc9c3e68]{border-color:var(--color-primary-dark);background:var(--color-primary-50);animation:1s ease-in-out infinite pulse-border-cc9c3e68}.turn-card.approaching[data-v-cc9c3e68]{border-width:3px}@keyframes pulse-border-cc9c3e68{0%,to{border-color:var(--color-primary)}50%{border-color:var(--color-primary-dark)}}.turn-icon-wrapper[data-v-cc9c3e68]{background:var(--color-primary-50);border-radius:var(--radius-lg);justify-content:center;align-items:center;width:80px;height:80px;display:flex}.turn-text[data-v-cc9c3e68]{gap:var(--space-2);flex-direction:column;display:flex}.turn-action[data-v-cc9c3e68]{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary)}.turn-distance[data-v-cc9c3e68]{font-size:var(--text-lg);color:var(--text-secondary)}.next-turn-preview[data-v-cc9c3e68]{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex}.next-turn-text[data-v-cc9c3e68]{font-size:var(--text-sm);color:var(--text-tertiary)}.progress-area[data-v-cc9c3e68]{gap:var(--space-2);flex-direction:column;display:flex}.progress-bar-container[data-v-cc9c3e68]{align-items:center;gap:var(--space-3);display:flex}.progress-bar[data-v-cc9c3e68]{background:var(--bg-secondary);border-radius:var(--radius-full);flex:1;height:12px;overflow:hidden}.progress-bar-fill[data-v-cc9c3e68]{background:var(--color-primary);border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.progress-percentage[data-v-cc9c3e68]{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary)}.remaining-info[data-v-cc9c3e68]{gap:var(--space-4);display:flex}.info-item[data-v-cc9c3e68]{align-items:center;gap:var(--space-2);display:flex}.info-label[data-v-cc9c3e68]{font-size:var(--text-sm);color:var(--text-tertiary)}.info-value[data-v-cc9c3e68]{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.traveled-info[data-v-cc9c3e68]{align-items:center;gap:var(--space-2);display:flex}.traveled-label[data-v-cc9c3e68]{font-size:var(--text-xs);color:var(--text-tertiary)}.traveled-value[data-v-cc9c3e68]{font-size:var(--text-sm);color:var(--text-secondary)}.aqi-area[data-v-cc9c3e68]{gap:var(--space-2);flex-direction:column;display:flex}.current-aqi[data-v-cc9c3e68]{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex}.aqi-label[data-v-cc9c3e68]{font-size:var(--text-sm);color:var(--text-tertiary)}.aqi-value[data-v-cc9c3e68]{font-size:var(--text-lg);font-weight:var(--font-bold)}.aqi-level[data-v-cc9c3e68]{font-size:var(--text-sm)}.ahead-aqi-tip[data-v-cc9c3e68]{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-warning-light);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-warning-dark);display:flex}.voice-control[data-v-cc9c3e68]{justify-content:center;display:flex}.voice-btn[data-v-cc9c3e68]{padding:var(--space-3);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);justify-content:center;align-items:center;display:flex}.voice-btn[data-v-cc9c3e68]:hover{background:var(--bg-primary);border-color:var(--color-primary)}.voice-btn.active[data-v-cc9c3e68]{color:var(--color-primary);background:var(--color-primary-50);border-color:var(--color-primary)}.cancel-navigation-btn[data-v-cc9c3e68]{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-error);background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);display:flex}.cancel-navigation-btn[data-v-cc9c3e68]:hover{background:var(--color-error);color:var(--text-inverse)}@media (width<=640px){.navigation-panel[data-v-cc9c3e68],.turn-card[data-v-cc9c3e68]{padding:var(--space-3)}.turn-icon-wrapper[data-v-cc9c3e68]{width:60px;height:60px}.turn-action[data-v-cc9c3e68]{font-size:var(--text-xl)}.remaining-info[data-v-cc9c3e68]{gap:var(--space-2);flex-direction:column}}.toast[data-v-8ab2c1a9]{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);max-width:400px;z-index:var(--z-toast);display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.toast-message[data-v-8ab2c1a9]{font-size:var(--text-base);font-weight:var(--font-medium);flex:1}.toast-close[data-v-8ab2c1a9]{padding:var(--space-1);cursor:pointer;opacity:.5;transition:var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.toast-close[data-v-8ab2c1a9]:hover{opacity:1}.toast-success[data-v-8ab2c1a9]{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid #a7f3d0}.toast-warning[data-v-8ab2c1a9]{background:var(--color-warning-light);color:var(--color-warning-dark);border:1px solid #fcd34d}.toast-error[data-v-8ab2c1a9]{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid #fecaca}.toast-info[data-v-8ab2c1a9]{background:var(--color-info-light);color:var(--color-info-dark);border:1px solid #bfdbfe}.toast-enter-active[data-v-8ab2c1a9]{animation:.3s toast-in-8ab2c1a9}.toast-leave-active[data-v-8ab2c1a9]{animation:.2s toast-out-8ab2c1a9}@keyframes toast-in-8ab2c1a9{0%{opacity:0;transform:translate(-50%)translateY(-20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes toast-out-8ab2c1a9{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(-20px)}}@media (width<=640px){.toast[data-v-8ab2c1a9]{max-width:90vw;padding:var(--space-2) var(--space-3)}}.modal-overlay[data-v-e5335fa9]{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);padding:var(--space-4);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container[data-v-e5335fa9]{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);width:100%;max-width:500px;position:relative}.modal-close[data-v-e5335fa9]{top:var(--space-3);right:var(--space-3);padding:var(--space-2);cursor:pointer;color:var(--text-tertiary);transition:var(--transition-fast);background:0 0;border:none;position:absolute}.modal-close[data-v-e5335fa9]:hover{color:var(--text-primary)}.modal-content[data-v-e5335fa9]{padding:var(--space-6)}.modal-title[data-v-e5335fa9]{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4)}.modal-body[data-v-e5335fa9]{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed)}.modal-actions[data-v-e5335fa9]{gap:var(--space-3);margin-top:var(--space-6);display:flex}.modal-button[data-v-e5335fa9]{padding:var(--space-3) var(--space-5);font-size:var(--text-base);font-weight:var(--font-medium);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.modal-button-cancel[data-v-e5335fa9]{color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-light)}.modal-button-cancel[data-v-e5335fa9]:hover{background:var(--bg-primary);border-color:var(--border-medium)}.modal-button-confirm[data-v-e5335fa9]{color:var(--text-inverse);background:var(--color-primary);border:none}.modal-button-confirm[data-v-e5335fa9]:hover{background:var(--color-primary-dark)}.modal-enter-active[data-v-e5335fa9],.modal-leave-active[data-v-e5335fa9]{transition:opacity .2s}.modal-enter-from[data-v-e5335fa9],.modal-leave-to[data-v-e5335fa9]{opacity:0}@media (width<=640px){.modal-container[data-v-e5335fa9]{max-width:90vw}.modal-content[data-v-e5335fa9]{padding:var(--space-4)}}.home-page[data-v-48c32dfc]{background:var(--bg-page);flex-direction:column;height:100vh;display:flex}.main-content[data-v-48c32dfc]{flex:1;display:flex;overflow:hidden}.map-section[data-v-48c32dfc]{flex:1;position:relative}.panel-section[data-v-48c32dfc]{width:var(--sidebar-width,400px);max-width:100%;padding:var(--space-4);gap:var(--space-4);background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;display:flex;overflow-y:auto}.sidebar-footer[data-v-48c32dfc]{font-size:var(--text-xs);color:var(--text-tertiary);text-align:center;padding:var(--space-2) 0 0;margin-top:auto}@media (width<=1024px){.main-content[data-v-48c32dfc]{flex-direction:column}.map-section[data-v-48c32dfc]{height:50vh}.panel-section[data-v-48c32dfc]{width:100%;height:50vh}}@media (width<=640px){.map-section[data-v-48c32dfc]{height:60vh}.panel-section[data-v-48c32dfc]{height:40vh;padding:var(--space-3)}}
