#app[data-v-49dcc5fb]{width:100%;height:100%;position:relative;overflow:hidden}.tabbar[data-v-49dcc5fb]{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;display:flex;background:var(--bg-secondary);border-top:.5px solid var(--border-light);z-index:1000;padding-bottom:env(safe-area-inset-bottom,0)}@media (min-width: 720px){.tabbar[data-v-49dcc5fb]{max-width:500px;border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}}.tabbar .item[data-v-49dcc5fb]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 0;cursor:pointer;transition:background .15s ease}.tabbar .item[data-v-49dcc5fb]:active{background:var(--bg-tertiary)}.tabbar .item .icon[data-v-49dcc5fb]{font-size:20px;margin-bottom:0;line-height:1;position:relative}.tabbar .item .icon-wrapper[data-v-49dcc5fb]{position:relative;display:inline-block}.tabbar .item .badge[data-v-49dcc5fb]{position:absolute;top:-4px;right:-8px;min-width:18px;height:18px;background:var(--danger-color);border-radius:9px;border:2px solid var(--bg-secondary);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.tabbar .item span[data-v-49dcc5fb]{font-size:9px;color:var(--text-secondary);font-weight:500}.tabbar .item.active span[data-v-49dcc5fb]{color:var(--primary-color)}.tabbar .item.active .icon[data-v-49dcc5fb]{filter:drop-shadow(0 0 2px rgba(24,144,255,.3))}*{margin:0;padding:0;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--primary-color: #0ea5e9;--primary-light: #38bdf8;--primary-dark: #0284c7;--success-color: #22c55e;--warning-color: #f59e0b;--danger-color: #ef4444;--snow-white: #f8fafc;--glacier-blue: #e0f2fe;--bg-primary: #f2f2f7;--bg-secondary: #ffffff;--bg-tertiary: #f9f9f9;--text-primary: #000000;--text-secondary: #8e8e93;--text-tertiary: #c7c7cc;--border-color: #c6c6c8;--border-light: #e5e5ea;--gradient-morning: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-sunset: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-snow: linear-gradient(180deg, #e0f7fa 0%, #b2ebf2 100%);--spacing-xs: 1.07vw;--spacing-sm: 2.13vw;--spacing-md: 3.2vw;--spacing-lg: 4.27vw;--spacing-xl: 5.33vw;--spacing-2xl: 6.4vw;--spacing-3xl: 8vw;--spacing-4xl: 8.53vw;--radius-sm: 2.13vw;--radius-md: 3.2vw;--radius-lg: 4.27vw;--radius-xl: 5.33vw;--radius-2xl: 7.47vw;--shadow-sm: 0 .27vw .8vw rgba(0, 0, 0, .08);--shadow-md: 0 .53vw 2.13vw rgba(0, 0, 0, .08);--shadow-lg: 0 1.07vw 4.27vw rgba(0, 0, 0, .12);--safe-area-top: env(safe-area-inset-top, 5.33vw);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--font-xs: 3.2vw;--font-sm: 3.47vw;--font-md: 3.73vw;--font-base: 4vw;--font-lg: 4.27vw;--font-xl: 4.53vw;--font-2xl: 5.33vw}html,body{height:100%;width:100%;overflow:hidden}body{background:var(--bg-primary);display:flex;justify-content:center;align-items:stretch}#app{width:100%;max-width:114.67vw;height:100%;background:var(--bg-primary);position:relative;overflow:hidden}@media (max-width: 100vw){:root{--spacing-lg: 3.73vw;--spacing-xl: 4.8vw}h2{font-size:4.8vw!important}.btn{padding:3.2vw!important;font-size:3.73vw!important}.card{padding:3.73vw!important}}@media (min-width: 100.27vw) and (max-width: 110.4vw){:root{--spacing-lg: 4.27vw;--spacing-xl: 5.33vw}}@media (min-width: 110.67vw){:root{--spacing-lg: 4.8vw;--spacing-xl: 6.4vw}h2{font-size:5.87vw!important}}@media (min-width: 192vw){#app{max-width:133.33vw;border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);margin:var(--spacing-xl);height:calc(100% - 12.8vw)}body{align-items:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}}@media (orientation: landscape) and (max-height: 133.33vw){.page{padding-bottom:calc(26.67vw + var(--safe-area-bottom))!important}}.page{position:absolute;top:0;left:0;right:0;bottom:0;overflow-y:auto;overflow-x:hidden;padding-top:calc(16vw + var(--safe-area-top));padding-bottom:calc(26.67vw + var(--safe-area-bottom));padding-left:var(--spacing-lg);padding-right:var(--spacing-lg);-webkit-overflow-scrolling:touch}.page::-webkit-scrollbar{display:none}.title-bar{position:fixed;top:0;left:50%;transform:translate(-50%);width:100%;max-width:114.67vw;height:calc(16vw + var(--safe-area-top));padding-top:var(--safe-area-top);padding-left:var(--spacing-lg);padding-right:var(--spacing-lg);display:flex;align-items:center;justify-content:space-between;background:rgba(242,242,247,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:1000;border-bottom:.5px solid var(--border-light)}@media (min-width: 192vw){.title-bar{max-width:133.33vw;border-radius:var(--radius-2xl) var(--radius-2xl) 0 0}}.title-bar h2{position:absolute;left:50%;transform:translate(-50%);font-size:var(--font-xl);font-weight:600;margin:0;color:var(--text-primary)}.back{cursor:pointer;padding:var(--spacing-sm) 0;color:var(--primary-color);font-size:var(--font-xl);font-weight:400;display:flex;align-items:center;min-width:11.73vw;min-height:11.73vw;z-index:10}.spacer{width:11.73vw}.card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.card:active{transform:scale(.98)}.card h3{margin-bottom:var(--spacing-xs);font-size:var(--font-lg);font-weight:600;color:var(--text-primary)}.card p{color:var(--text-secondary);font-size:var(--font-md);margin:var(--spacing-xs) 0;line-height:1.5}.btn{background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-lg);width:100%;margin-top:var(--spacing-sm);cursor:pointer;font-size:var(--font-lg);font-weight:600;transition:all .2s ease;min-height:11.73vw;display:flex;align-items:center;justify-content:center;touch-action:manipulation}.btn:active{opacity:.8;transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-small{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-md);min-height:9.6vw;width:auto}.btn-primary{background:var(--primary-color)}.btn-success{background:var(--success-color)}.btn-danger{background:var(--danger-color)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-gray{background:var(--text-tertiary)}.btn-red{background:var(--danger-color)}.form-item{margin-bottom:var(--spacing-md)}.form-item label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-md);color:var(--text-primary);font-weight:500}.form-item input,.form-item select{width:100%;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--border-light);font-size:var(--font-lg);outline:none;transition:all .2s ease;background:var(--bg-secondary);min-height:11.73vw;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-item input:focus,.form-item select:focus{border-color:var(--primary-color);box-shadow:0 0 0 .8vw #007aff1a}.form-item select:disabled,.form-item input:disabled{background:var(--bg-tertiary);color:var(--text-tertiary)}.form-item input[type=date],.form-item input[type=time]{position:relative}.form-item input[type=date]::-webkit-calendar-picker-indicator,.form-item input[type=time]::-webkit-calendar-picker-indicator{padding:var(--spacing-sm);cursor:pointer}.row{display:flex;gap:var(--spacing-sm);align-items:center}.my-tag{color:var(--primary-color);font-size:var(--font-xs);font-weight:500;background:rgba(0,122,255,.1);padding:var(--spacing-xs) 2.67vw;border-radius:3.2vw}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:114.67vw;height:calc(22.4vw + var(--safe-area-bottom));padding-bottom:var(--safe-area-bottom);background:rgba(255,255,255,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;justify-content:space-around;align-items:flex-start;padding-top:2.67vw;border-top:.5px solid var(--border-light);z-index:1000}@media (min-width: 192vw){.tabbar{max-width:133.33vw;border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}}.tabbar .item{display:flex;flex-direction:column;align-items:center;gap:1.07vw;font-size:2.67vw;color:var(--text-secondary);cursor:pointer;flex:1;min-width:16vw;min-height:16vw;justify-content:center;touch-action:manipulation}.tabbar .item.active{color:var(--primary-color)}.tabbar .icon{width:12.8vw;height:8.53vw;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:5.33vw;transition:all .2s ease}.tabbar .item.active .icon{background:rgba(0,122,255,.1);color:var(--primary-color)}.auth-container{padding:16vw var(--spacing-lg) 10.67vw}.auth-container h2{text-align:center;margin-bottom:8.53vw;font-size:7.47vw;font-weight:700}.auth-link{text-align:center;margin-top:var(--spacing-lg);color:var(--primary-color);cursor:pointer;font-size:var(--font-md);min-height:11.73vw;display:flex;align-items:center;justify-content:center}.loading{text-align:center;padding:16vw 5.33vw;color:var(--text-secondary);font-size:var(--font-base)}.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.8);color:#fff;padding:var(--spacing-md) var(--spacing-2xl);border-radius:var(--radius-md);z-index:9999;font-size:var(--font-base);font-weight:500;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}h2{font-size:5.33vw;font-weight:600;margin-bottom:var(--spacing-md);color:var(--text-primary)}.optional{color:var(--text-secondary);font-weight:400;font-size:var(--font-sm)}.highlight{color:var(--primary-color);font-weight:500}.empty-state{text-align:center;padding:21.33vw 5.33vw}.empty-icon{font-size:17.07vw;margin-bottom:4.27vw;display:block}.empty-state p{color:var(--text-primary);margin:0 0 2.13vw;font-size:var(--font-lg)}.empty-hint{color:var(--text-secondary)!important;font-size:var(--font-md)!important}.loading-state{text-align:center;padding:21.33vw 5.33vw}.loading-spinner{width:10.67vw;height:10.67vw;border:.8vw solid var(--bg-tertiary);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 4.27vw}@keyframes spin{to{transform:rotate(360deg)}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx){.card,.btn{box-shadow:0 .27vw .53vw #0000000f}}@media (-webkit-min-device-pixel-ratio: 3),(min-resolution: 3dppx){.card,.btn{box-shadow:0 .13vw .27vw #0000000d}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button,a,.tabbar .item,.back{min-width:11.73vw;min-height:11.73vw}*{touch-action:manipulation}@media (prefers-color-scheme: dark){:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-tertiary: #64748b;--border-color: #475569;--border-light: #334155;--glacier-blue: rgba(14, 165, 233, .2)}body{background:var(--bg-primary)}.card,.trip-card,.search-bar{box-shadow:var(--shadow-lg)}}.dark-mode{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-tertiary: #64748b;--border-color: #475569;--border-light: #334155}@keyframes fadeInUp{0%{opacity:0;transform:translateY(5.33vw)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .4s ease forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.animate-slide-in{animation:slideInRight .3s ease}.btn:active,.trip-card:active,.route-chip:active{transform:scale(.96) translateY(.27vw);filter:brightness(.95);transition:all .1s ease}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}
