:root{--tg-theme-bg-color:#fff;--tg-theme-text-color:#000;--tg-theme-hint-color:#999;--tg-theme-link-color:#2481cc;--tg-theme-button-color:#2481cc;--tg-theme-button-text-color:#fff;--tg-theme-secondary-bg-color:#f1f1f1;--tg-theme-header-bg-color:#fff;--tg-theme-accent-text-color:#2481cc;--tg-theme-section-bg-color:#fff;--tg-theme-section-header-text-color:#6d6d72;--tg-theme-subtitle-text-color:#999;--tg-theme-destructive-text-color:#ff3b30;--yeva-radius-sm:8px;--yeva-radius-md:12px;--yeva-radius-lg:16px;--yeva-radius-xl:20px;--yeva-shadow-card:0 1px 3px #00000014, 0 1px 2px #0000000f;--yeva-shadow-elevated:0 4px 12px #0000001f, 0 2px 4px #00000014;--yeva-spacing-xs:4px;--yeva-spacing-sm:8px;--yeva-spacing-md:12px;--yeva-spacing-lg:16px;--yeva-spacing-xl:24px;--yeva-spacing-2xl:32px;--yeva-font-xs:11px;--yeva-font-sm:13px;--yeva-font-md:15px;--yeva-font-lg:17px;--yeva-font-xl:20px;--yeva-font-2xl:24px;--yeva-seat-available:#34c759;--yeva-seat-booked:#ff3b30;--yeva-seat-mine:#007aff;--yeva-seat-driver:#8e8e93;--yeva-seat-selected:#ff9500;--yeva-transition-fast:.15s ease;--yeva-transition-normal:.25s ease;--yeva-transition-slow:.35s ease;--yeva-safe-area-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--yeva-font-md);color:var(--tg-theme-text-color);background-color:var(--tg-theme-secondary-bg-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;line-height:1.5}#root{flex-direction:column;min-height:100dvh;display:flex}a{color:var(--tg-theme-link-color);text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,select,textarea{font:inherit;color:var(--tg-theme-text-color);background-color:var(--tg-theme-bg-color);border:1px solid var(--tg-theme-hint-color);border-radius:var(--yeva-radius-sm);width:100%;transition:border-color var(--yeva-transition-fast);outline:none;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--tg-theme-button-color)}input::placeholder{color:var(--tg-theme-hint-color)}::-webkit-scrollbar{width:0;height:0}.page-enter{opacity:0;transform:translate(20px)}.page-enter-active{opacity:1;transition:opacity var(--yeva-transition-normal), transform var(--yeva-transition-normal);transform:translate(0)}.page-exit{opacity:1;transform:translate(0)}.page-exit-active{opacity:0;transition:opacity var(--yeva-transition-normal), transform var(--yeva-transition-normal);transform:translate(-20px)}.page{padding:var(--yeva-spacing-lg);padding-bottom:calc(var(--yeva-spacing-xl) + var(--yeva-safe-area-bottom));flex:1}.page-title{font-size:var(--yeva-font-2xl);margin-bottom:var(--yeva-spacing-lg);color:var(--tg-theme-text-color);font-weight:700}.section-title{font-size:var(--yeva-font-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--tg-theme-section-header-text-color);margin-bottom:var(--yeva-spacing-sm);padding-left:var(--yeva-spacing-xs);font-weight:600}.card{background:var(--tg-theme-bg-color);border-radius:var(--yeva-radius-md);padding:var(--yeva-spacing-lg);box-shadow:var(--yeva-shadow-card)}.btn{justify-content:center;align-items:center;gap:var(--yeva-spacing-sm);border-radius:var(--yeva-radius-sm);font-size:var(--yeva-font-md);transition:opacity var(--yeva-transition-fast), transform var(--yeva-transition-fast);-webkit-user-select:none;user-select:none;padding:12px 20px;font-weight:600;display:inline-flex}.btn:active{opacity:.85;transform:scale(.97)}.btn-primary{background:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color);width:100%}.btn-secondary{background:var(--tg-theme-secondary-bg-color);color:var(--tg-theme-text-color)}.btn-danger{background:var(--tg-theme-destructive-text-color);color:#fff}.btn-outline{border:1.5px solid var(--tg-theme-button-color);color:var(--tg-theme-button-color);background:0 0}.btn:disabled{opacity:.5;pointer-events:none}.form-group{margin-bottom:var(--yeva-spacing-lg)}.form-label{font-size:var(--yeva-font-sm);color:var(--tg-theme-section-header-text-color);margin-bottom:var(--yeva-spacing-xs);font-weight:600;display:block}.form-error{font-size:var(--yeva-font-xs);color:var(--tg-theme-destructive-text-color);margin-top:var(--yeva-spacing-xs)}.divider{background:var(--tg-theme-secondary-bg-color);height:1px;margin:var(--yeva-spacing-md) 0}.text-hint{color:var(--tg-theme-hint-color);font-size:var(--yeva-font-sm)}.text-accent{color:var(--tg-theme-accent-text-color)}.text-destructive{color:var(--tg-theme-destructive-text-color)}.tabs{background:var(--tg-theme-bg-color);border-radius:var(--yeva-radius-sm);margin-bottom:var(--yeva-spacing-lg);gap:2px;padding:3px;display:flex}.tab{font-size:var(--yeva-font-sm);text-align:center;color:var(--tg-theme-hint-color);transition:all var(--yeva-transition-fast);border-radius:6px;flex:1;padding:8px 12px;font-weight:600}.tab.active{background:var(--tg-theme-button-color);color:var(--tg-theme-button-text-color)}.pull-indicator{text-align:center;padding:var(--yeva-spacing-md);color:var(--tg-theme-hint-color);font-size:var(--yeva-font-sm)}.toast{top:var(--yeva-spacing-lg);background:var(--tg-theme-text-color);color:var(--tg-theme-bg-color);border-radius:var(--yeva-radius-xl);font-size:var(--yeva-font-sm);z-index:1000;transition:transform var(--yeva-transition-normal);pointer-events:none;padding:10px 20px;font-weight:500;position:fixed;left:50%;transform:translate(-50%)translateY(-100px)}.toast.visible{transform:translate(-50%)translateY(0)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--yeva-transition-normal) ease forwards}.skeleton{background:linear-gradient(90deg, var(--tg-theme-secondary-bg-color) 25%, var(--tg-theme-bg-color) 37%, var(--tg-theme-secondary-bg-color) 63%);border-radius:var(--yeva-radius-sm);background-size:400% 100%;animation:1.4s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:100%}to{background-position:0}}
