*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0d0c16;font-family:Inter,system-ui,-apple-system,sans-serif}input,button,textarea{font-family:inherit}button{cursor:pointer;border:none;outline:none}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:#2a2840;border-radius:2px}.mobile-frame{max-width:430px;height:100%;background:#14131a;height:100dvh;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 0 80px #f59e0b26}@media (width>=431px){body{background:#08070e}.mobile-frame{border-left:1px solid #1a1830;border-right:1px solid #1a1830}}.auth-page{min-height:100%;background:linear-gradient(#130f25 0%,#14131a 40%);flex-direction:column;min-height:100dvh;padding:24px;display:flex;overflow-y:auto}.auth-hero{flex-direction:column;flex:none;align-items:center;padding:48px 0 32px;display:flex;position:relative}.auth-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#7e6edb33 0%,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-60px;left:50%;transform:translate(-50%)}.auth-car-icon{background:linear-gradient(135deg,#f59e0b,#5b43c2);border-radius:24px;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;font-size:36px;animation:.6s ease-out floatIn;display:flex;box-shadow:0 8px 32px #7e6edb59}@keyframes floatIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-hero h1{background:linear-gradient(135deg,#fff 30%,#a594ff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:36px;font-weight:800}.auth-hero p{color:#ffffffb3;margin-top:6px;font-size:15px}.auth-card{width:100%;max-width:400px;margin:0 auto;animation:.5s ease-out .1s both slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.auth-toggle{background:#1d1b2e;border:1px solid #2a2840;border-radius:14px;margin-bottom:24px;padding:4px;display:flex}.auth-toggle button{color:#ffffffa6;background:0 0;border-radius:12px;flex:1;padding:11px;font-size:14px;font-weight:600;transition:all .25s}.auth-toggle button.active{color:#fff;background:#f59e0b;box-shadow:0 4px 14px #7e6edb4d}.auth-form{flex-direction:column;gap:16px;display:flex}.input-group{flex-direction:column;gap:6px;display:flex}.input-group label{color:#ffffffbf;letter-spacing:.3px;font-size:12px;font-weight:600}.input-group input{color:#fff;background:#1d1b2e;border:1.5px solid #2a2840;border-radius:12px;padding:14px 16px;font-size:15px;transition:all .25s}.input-group input:focus{border-color:#f59e0b;outline:none;box-shadow:0 0 0 3px #f59e0b26}.input-group input::placeholder{color:#fff6}.auth-error{color:#f87171;background:#ef44441a;border:1px solid #ef444440;border-radius:12px;padding:12px 16px;font-size:13px}.auth-btn{color:#fff;background:linear-gradient(135deg,#f59e0b,#5b43c2);border-radius:14px;width:100%;margin-top:8px;padding:16px;font-size:16px;font-weight:700;transition:all .25s;box-shadow:0 4px 20px #f59e0b40}.auth-btn:disabled{opacity:.5}.auth-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #f59e0b66}.app-shell{height:100%;background:#14131a;flex-direction:column;height:100dvh;display:flex}.app-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d0c16cc;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.app-header .brand{background:linear-gradient(135deg,#fff 30%,#a594ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:22px;font-weight:800}.notif-bell{position:relative}.app-content{flex:1;position:relative;overflow:hidden}.tab-page{position:absolute;inset:0;overflow-y:auto}.tab-page.hidden{display:none}.bottom-nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:6px 0 env(safe-area-inset-bottom,8px);background:#13111ef2;border-top:1px solid #1a1830;display:flex}.nav-item{cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:3px;padding:8px 0;transition:all .2s;display:flex;position:relative}.nav-item svg{color:#ffffffa6;width:23px;height:23px;transition:all .25s}.nav-item span{color:#ffffffa6;font-size:10px;font-weight:600;transition:all .25s}.nav-item.active svg{color:#f59e0b;filter:drop-shadow(0 0 6px #f59e0b66)}.nav-item.active span{color:#f59e0b}.nav-item.active:before{content:"";background:#f59e0b;border-radius:0 0 3px 3px;width:24px;height:3px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.ride-map-page{background:#0a0a0a;flex-direction:column;height:100%;display:flex;position:relative}.ride-map-wrap{flex:1;position:relative;overflow:hidden}.ride-map-wrap .leaflet-container{width:100%;height:100%;background:#111!important}.map-overlay-top{z-index:1000;pointer-events:none;align-items:flex-start;gap:8px;padding:12px;display:flex;position:absolute;top:0;left:0;right:0}.overlay-left{pointer-events:auto;flex-direction:column;gap:8px;display:flex}.map-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;background:#19151ccc;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;box-shadow:0 4px 12px #0006}.map-btn:hover{border-color:#f59e0b}.map-btn svg{width:18px;height:18px}.overlay-search-panel{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#19151cf2;border:1px solid #ffffff1a;border-radius:12px;flex:1;padding:10px 12px;box-shadow:0 4px 20px #00000080}.search-inputs{flex-direction:column;gap:0;display:flex}.search-row{cursor:pointer;color:#fff;align-items:center;gap:10px;min-width:0;padding:8px 4px;font-size:13px;display:flex}.search-row.placeholder{color:#ffffff80}.search-row span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.search-row .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.search-row .dot.red{background:#fb923c;box-shadow:0 0 6px #ef444466}.search-divider{background:#ffffff0f;height:1px;margin:0 4px}.tap-popup-leaf .leaflet-popup-content-wrapper{background:#fff;border-radius:10px;padding:0;box-shadow:0 3px 14px #0006}.tap-popup-leaf .leaflet-popup-content{margin:0;padding:0}.tap-popup-leaf .leaflet-popup-tip{border-top-color:#fff}.tap-btns{white-space:nowrap;align-items:center;gap:0;padding:2px 6px;display:flex}.tap-btns button{cursor:pointer;color:#1a1a1a;background:0 0;border:none;padding:8px 10px;font-size:13px;font-weight:700;transition:all .15s}.tap-btns button:active,.tap-btns button.save{color:#f59e0b}.tap-btns .sep{background:#00000026;width:1px;height:16px}.saved-chips{z-index:999;pointer-events:auto;gap:6px;display:flex;position:absolute;bottom:8px;left:12px;right:12px;overflow-x:auto}.saved-chip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#c4b5fd;white-space:nowrap;background:#19151cd9;border:1px solid #7e6edb4d;border-radius:10px;align-items:center;gap:5px;padding:4px 6px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.saved-chip:hover{background:#f59e0b26;border-color:#f59e0b}.saved-chip svg{width:12px;height:12px}.saved-chip-main{color:#c4b5fd;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:5px;padding:6px 8px;font-size:12px;font-weight:600;display:flex}.saved-chip-main span{text-overflow:ellipsis;max-width:96px;overflow:hidden}.saved-chip-main:hover{background:#7e6edb1f}.saved-chip-action{color:#ffffffbf;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.saved-chip-action:hover{color:#c4b5fd;border-color:#7e6edb99}.saved-chip-action.danger:hover{color:#fca5a5;border-color:#ef444480}.search-overlay{z-index:2000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0af7;flex-direction:column;display:flex;position:absolute;inset:0}.search-overlay-header{border-bottom:1px solid #ffffff0f;align-items:center;gap:10px;padding:16px;display:flex}.search-overlay-header svg{color:#ffffffb3;flex-shrink:0;width:18px;height:18px}.search-overlay-header input{color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:15px}.search-overlay-header input::placeholder{color:#fff6}.close-search{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.search-overlay-results{flex:1;padding:8px 0;overflow-y:auto}.search-item{cursor:pointer;align-items:center;gap:14px;padding:14px 16px;transition:all .15s;display:flex}.search-item:hover{background:#7e6edb0f}.si-icon{background:#ef44441a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.si-icon svg{color:#fb923c}.si-icon.blue{background:#3b82f61a}.si-icon.blue svg{color:#3b82f6}.si-info{flex:1;min-width:0}.si-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.si-addr{color:#ffffff8c;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.search-empty{text-align:center;color:#ffffff80;padding:40px 20px;font-size:14px}.ride-bottom-sheet{z-index:1000;background:linear-gradient(#19151c 0%,#110e14 100%);border-top:1px solid #ffffff0d;border-radius:24px 24px 0 0;flex-direction:column;gap:10px;max-height:70px;padding:6px 16px 12px;transition:max-height .35s;display:flex;position:relative;overflow:hidden;box-shadow:0 -15px 50px #0009}.ride-bottom-sheet.expanded{max-height:360px;overflow-y:auto}.ride-bottom-sheet.collapsed,.ride-bottom-sheet.expanded.collapsed{max-height:44px}.sheet-handle{cursor:pointer;-webkit-tap-highlight-color:transparent;flex-shrink:0;justify-content:center;align-items:center;width:100%;min-height:44px;display:flex}.sheet-handle:after{content:"";background:#ffffff4d;border-radius:3px;width:40px;height:5px;display:block}.sheet-title-row{justify-content:space-between;align-items:center;padding:4px 0;display:flex}.sheet-title{color:#fff;font-size:15px;font-weight:700}.sheet-chips{gap:6px;display:flex}.sc{color:#fff;background:#ffffff0f;border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:600;display:flex}.sc svg{color:#f59e0b;width:12px;height:12px}.route-chips{gap:10px;display:flex}.route-chip{color:#ffffffb3;background:#1d1b2e;border:1px solid #2a2840;border-radius:12px;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:500;display:flex}.route-chip svg{color:#f59e0b;width:14px;height:14px}.ride-classes{gap:10px;padding:4px 0;display:flex;overflow-x:auto}.ride-class{cursor:pointer;text-align:center;background:#1d1b2e;border:2px solid #2a2840;border-radius:16px;flex:1;min-width:100px;padding:14px 16px;transition:all .25s}.ride-class.selected{background:#7e6edb14;border-color:#f59e0b;box-shadow:0 0 20px #7e6edb1a}.ride-class .rc-icon{margin-bottom:6px;font-size:24px}.ride-class .type{font-size:13px;font-weight:600}.ride-class .price{color:#f59e0b;margin-top:4px;font-size:16px;font-weight:800}.ride-class .eta{color:#ffffff8c;margin-top:2px;font-size:11px}.request-btn{color:#fff;background:#f59e0b;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:16px;font-weight:700;transition:all .25s;display:flex;box-shadow:0 4px 16px #f59e0b66}.request-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px #7e6edb80}.request-btn:disabled{opacity:.5;box-shadow:none;transform:none}.request-btn svg{width:20px;height:20px}.map-container{background:#13111e;flex:1;min-height:200px;position:relative;overflow:hidden}.map-container .leaflet-container{width:100%;height:100%}.leaflet-container{background:#111!important}.leaflet-control-attribution{display:none!important}.leaflet-control-zoom{border:none!important}.leaflet-control-zoom a{color:#ffffff80!important;background:#1d1b2e!important;border:1px solid #2a2840!important;border-radius:10px!important;width:34px!important;height:34px!important;font-size:16px!important;line-height:34px!important}.leaflet-control-zoom a+a{margin-top:4px!important}.trip-page{background:#14131a;flex-direction:column;height:100%;display:flex}.trip-header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0d0c16e6;align-items:center;gap:12px;padding:16px 20px;display:flex}.trip-header .back-btn{cursor:pointer;background:#1d1b2e;border:1px solid #2a2840;border-radius:14px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .2s;display:flex}.trip-header .back-btn:hover{border-color:#f59e0b}.trip-header .back-btn svg{color:#fff;width:18px;height:18px}.trip-header .dest-pill{background:#1d1b2e;border:1px solid #2a2840;border-radius:14px;flex:1;padding:10px 16px}.trip-header .dest-pill .label{color:#f59e0b;letter-spacing:1.5px;text-transform:uppercase;font-size:10px;font-weight:700}.trip-header .dest-pill .addr{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:14px;overflow:hidden}.trip-map{flex:1;position:relative}.trip-map .map-container{height:100%}.trip-float-btns{z-index:1000;pointer-events:auto;flex-direction:column;gap:10px;display:flex;position:absolute;bottom:16px;right:16px}.trip-float-btns .float-btn{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;transition:all .2s;display:flex;box-shadow:0 4px 20px #00000080}.trip-float-btns .float-btn:hover{transform:scale(1.05)}.trip-float-btns .chat-btn{background:#f59e0b}.trip-float-btns .chat-btn.shake{animation:.5s ease-in-out infinite shake}.trip-float-btns .sos-btn{background:#fb923c}.trip-float-btns .float-btn svg{color:#fff;width:22px;height:22px}@keyframes shake{0%{transform:translate(0)}25%{transform:translate(-4px)rotate(-4deg)}50%{transform:translate(4px)rotate(4deg)}75%{transform:translate(-4px)rotate(-4deg)}to{transform:translate(0)}}.trip-status-card{background:#1d1b2e;border-top:1px solid #2a2840;border-radius:24px 24px 0 0;padding:20px 24px;box-shadow:0 -4px 20px #0000004d}.trip-status-label{color:#f59e0b;text-transform:uppercase;letter-spacing:1.2px;font-size:11px;font-weight:700}.trip-status-text{color:#fff;margin-top:4px;font-size:20px;font-weight:800}.trip-status-bar{margin-bottom:4px}.eta-badge{color:#f59e0b;white-space:nowrap;background:#f59e0b26;border:1px solid #7e6edb4d;border-radius:12px;align-items:center;gap:5px;padding:8px 14px;font-size:13px;font-weight:700;display:flex}.eta-badge svg{color:#f59e0b}.trip-driver-info{border-top:1px solid #2a2840;align-items:center;gap:12px;margin-top:16px;padding-top:16px;display:flex}.trip-driver-avatar{background:linear-gradient(135deg,#f59e0b,#5b43c2);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:700;display:flex;position:relative}.trip-driver-avatar .online{background:#10b981;border:2.5px solid #1d1b2e;border-radius:50%;width:12px;height:12px;position:absolute;bottom:0;right:0}.trip-driver-details{flex:1}.trip-driver-details .name{color:#fff;font-size:15px;font-weight:700}.trip-driver-details .vehicle{color:#ffffffbf;margin-top:2px;font-size:13px}.trip-driver-details .plate{color:#fff9;letter-spacing:.5px;margin-top:2px;font-size:12px;font-weight:600}.trip-driver-eta{background:#7e6edb1f;border:1px solid #f59e0b40;border-radius:12px;flex-direction:column;align-items:center;padding:6px 12px;display:flex}.trip-driver-eta .eta-num{color:#f59e0b;font-size:22px;font-weight:800;line-height:1}.trip-driver-eta .eta-unit{color:#fff9;text-transform:uppercase;font-size:10px;font-weight:600}.trip-actions{gap:10px;margin-top:16px;display:flex}.trip-actions button{border-radius:14px;flex:1;padding:14px;font-size:14px;font-weight:700;transition:all .2s}.trip-cancel-btn{color:#fb923c;background:#ef44441a;border:1.5px solid #ef44444d}.trip-cancel-btn:hover{background:#ef444426}.history-page{background:#14131a;flex-direction:column;height:100%;padding:24px 24px 0;display:flex}.history-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.history-header h1{font-size:26px;font-weight:800}.history-tabs{gap:8px;margin-bottom:16px;display:flex}.history-tab{color:#ffffffa6;cursor:pointer;background:#1d1b2e;border:1.5px solid #2a2840;border-radius:12px;padding:10px 20px;font-size:13px;font-weight:600;transition:all .25s}.history-tab:hover{border-color:#3e3a5c}.history-tab.active{color:#fff;background:#f59e0b;border-color:#f59e0b;box-shadow:0 4px 14px #f59e0b40}.history-list{flex-direction:column;flex:1;gap:12px;padding-bottom:20px;display:flex;overflow-y:auto}.history-card{background:#1d1b2e;border:1px solid #ffffff0a;border-radius:18px;padding:18px;transition:all .2s}.history-card:hover{border-color:#f59e0b26}.history-card-top{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.history-badge{border-radius:10px;padding:5px 12px;font-size:11px;font-weight:700}.history-badge.completed{color:#f59e0b;background:#7e6edb1f}.history-badge.cancelled{color:#f87171;background:#ef44441f}.history-date{color:#ffffff8c;font-size:11px}.history-route{gap:14px;margin-bottom:14px;display:flex}.history-dots{flex-direction:column;align-items:center;gap:2px;padding-top:4px;display:flex}.history-dots .dot{border-radius:50%;width:10px;height:10px}.history-dots .dot.p{background:#f59e0b;box-shadow:0 0 6px #7e6edb4d}.history-dots .dot.d{background:#10b981;box-shadow:0 0 6px #10b98140}.history-dots .line{background:#2a2840;width:2px;height:28px}.history-addrs{flex-direction:column;flex:1;gap:22px;min-width:0;display:flex}.history-addrs span{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.history-fare{text-align:right;flex-shrink:0}.history-fare .amount{font-size:16px;font-weight:800}.history-fare .method{color:#ffffff8c;font-size:11px}.history-chips{flex-wrap:wrap;gap:8px;display:flex}.history-chip{color:#ffffff8c;background:#ffffff08;border-radius:10px;align-items:center;gap:5px;padding:5px 12px;font-size:11px;display:flex}.history-chip svg{width:13px;height:13px}.history-empty{color:#ffffff80;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;display:flex}.history-empty svg{opacity:.3;width:56px;height:56px}.chat-page{background:#14131a;flex-direction:column;height:100%;display:flex}.chat-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#13111ef2;border-bottom:1px solid #1a1830;align-items:center;gap:12px;padding:14px 20px;display:flex}.chat-header .back-btn{cursor:pointer;background:#1d1b2e;border:1px solid #2a2840;border-radius:14px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.chat-header .back-btn svg{color:#fff;width:18px;height:18px}.chat-avatar{background:linear-gradient(135deg,#f59e0b,#5b43c2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:16px;font-weight:700;display:flex;position:relative}.chat-avatar .online{background:#10b981;border:2px solid #13111e;border-radius:50%;width:11px;height:11px;position:absolute;bottom:0;right:0}.chat-driver-info{flex:1}.chat-driver-info .name{font-size:15px;font-weight:700}.chat-driver-info .vehicle{color:#6b7280;font-size:11px}.chat-call-btn{background:#10b981;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:flex;box-shadow:0 4px 12px #10b9814d}.chat-call-btn svg{color:#fff;width:18px;height:18px}.chat-messages{flex-direction:column;flex:1;gap:8px;padding:16px 20px;display:flex;overflow-y:auto}.chat-bubble{max-width:78%;padding:12px 16px;font-size:14px;line-height:1.5;animation:.2s ease-out msgIn}@keyframes msgIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.user{color:#fff;background:linear-gradient(135deg,#f59e0b,#6254b7);border-radius:20px 20px 4px;align-self:flex-end}.chat-bubble.driver{color:#d1d5db;background:#1d1b2e;border:1px solid #2a2840;border-radius:20px 20px 20px 4px;align-self:flex-start}.chat-bubble .time{opacity:.5;text-align:right;margin-top:4px;font-size:10px}.chat-typing{background:#1d1b2e;border:1px solid #2a2840;border-radius:20px;align-self:flex-start;gap:4px;padding:14px 18px;display:flex}.chat-typing span{background:#6b7280;border-radius:50%;width:6px;height:6px;animation:1.4s infinite blink}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,to{opacity:.3}50%{opacity:1}}.chat-quick-replies{gap:8px;padding:10px 20px;display:flex;overflow-x:auto}.chat-quick-replies button{color:#9ca3af;white-space:nowrap;background:#1d1b2e;border:1.5px solid #2a2840;border-radius:20px;flex-shrink:0;padding:9px 16px;font-size:13px;transition:all .25s}.chat-quick-replies button:hover{color:#c4b5fd;border-color:#f59e0b}.chat-input-bar{padding:12px 20px env(safe-area-inset-bottom,12px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#13111ef2;border-top:1px solid #1a1830;align-items:center;gap:10px;display:flex}.chat-input-bar input{color:#fff;background:#1d1b2e;border:1.5px solid #2a2840;border-radius:24px;outline:none;flex:1;padding:12px 18px;font-size:14px;transition:all .25s}.chat-input-bar input:focus{border-color:#f59e0b}.chat-input-bar input::placeholder{color:#4b5563}.chat-send-btn{background:#f59e0b;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .2s;display:flex;box-shadow:0 4px 12px #7e6edb4d}.chat-send-btn:hover{transform:scale(1.05)}.chat-send-btn:disabled{opacity:.4;box-shadow:none}.chat-send-btn svg{color:#fff;width:18px;height:18px}.profile-page{background:#14131a;height:100%;overflow-y:auto}.profile-header{background:linear-gradient(#f59e0b26 0%,#0000 100%);align-items:center;gap:18px;padding:32px 24px 24px;display:flex}.profile-avatar{background:linear-gradient(135deg,#9b8ad4,#5a4bbb);border:3px solid #f59e0b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:76px;height:76px;font-size:26px;font-weight:800;display:flex;box-shadow:0 4px 20px #7e6edb4d}.profile-info h2{font-size:22px;font-weight:800}.profile-info .phone{color:#9ca3af;margin-top:4px;font-size:13px}.profile-tier{background:linear-gradient(135deg,#ffb800,#ff6b00);border-radius:8px;margin-top:8px;padding:4px 10px;font-size:11px;font-weight:800;display:inline-block;box-shadow:0 2px 8px #ffb80040}.profile-stats{gap:12px;padding:8px 24px 24px;display:flex}.stat-card{text-align:center;background:#1d1b2e;border:1px solid #ffffff0a;border-radius:16px;flex:1;padding:16px 12px}.stat-card svg{color:#f59e0b;width:20px;height:20px}.stat-card .val{margin-top:8px;font-size:20px;font-weight:800}.stat-card .lbl{color:#6b7280;margin-top:2px;font-size:11px}.profile-section{margin-bottom:14px;padding:0 24px}.profile-section .section-title{color:#6b7280;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:10px;padding-left:2px;font-size:11px;font-weight:700}.profile-menu{background:#1d1b2e;border:1px solid #ffffff0a;border-radius:18px;overflow:hidden}.profile-menu-item{cursor:pointer;border-bottom:1px solid #ffffff0a;align-items:center;gap:14px;padding:16px 18px;transition:all .15s;display:flex}.profile-menu-item:last-child{border-bottom:none}.profile-menu-item:hover{background:#ffffff05}.profile-menu-item .mi-icon{background:#7e6edb1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.profile-menu-item .mi-icon svg{color:#f59e0b;width:18px;height:18px}.profile-menu-item .mi-label{flex:1;font-size:14px;font-weight:500}.profile-menu-item .mi-chevron svg{color:#4b5563;width:16px;height:16px}.signout-btn{color:#fb923c;background:0 0;border:1.5px solid #ef444466;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:calc(100% - 48px);margin:16px 24px 36px;padding:16px;font-size:14px;font-weight:700;transition:all .2s;display:flex}.signout-btn:hover{background:#ef44440f;border-color:#ef444499}.signout-btn svg{width:18px;height:18px}.wallet-page{background:#14131a;flex-direction:column;height:100%;display:flex;overflow-y:auto}.wallet-header{justify-content:space-between;align-items:center;padding:24px 24px 0;display:flex}.wallet-header h1{font-size:26px;font-weight:800}.wallet-balance-card{background:linear-gradient(135deg,#6a5acd 0%,#3b3080 50%,#281e6a 100%);border-radius:24px;margin:20px 24px;padding:28px;position:relative;overflow:hidden}.wallet-balance-card:before{content:"";background:#ffffff0f;border-radius:50%;width:140px;height:140px;position:absolute;top:-30px;right:-30px}.wallet-balance-card:after{content:"";background:#ffffff0a;border-radius:50%;width:100px;height:100px;position:absolute;bottom:-40px;left:-20px}.wallet-balance-label{color:#ffffffb3;font-size:13px;font-weight:500}.wallet-amount{z-index:1;margin-top:8px;font-size:40px;font-weight:800;position:relative}.wallet-usd{color:#ffffff80;margin-top:4px;font-size:13px}.wallet-actions{z-index:1;gap:10px;margin-top:22px;display:flex;position:relative}.wallet-action{cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:5px;padding:12px;transition:all .2s;display:flex}.wallet-action:hover{background:#ffffff2e}.wallet-action svg{width:20px;height:20px}.wallet-action span{font-size:11px;font-weight:600}.wallet-tabs{background:#1d1b2e;border:1px solid #2a2840;border-radius:14px;margin:0 24px;padding:4px;display:flex}.wallet-tab{text-align:center;color:#6b7280;cursor:pointer;border-radius:12px;flex:1;padding:11px;font-size:13px;font-weight:600;transition:all .25s}.wallet-tab.active{color:#fff;background:#f59e0b;box-shadow:0 2px 10px #7e6edb4d}.wallet-content{flex:1;padding:16px 24px}.wallet-section-title{color:#6b7280;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:700}.tx-item{background:#1d1b2e;border:1px solid #ffffff0a;border-radius:16px;align-items:center;gap:14px;margin-bottom:10px;padding:16px;display:flex}.tx-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.tx-icon.debit{background:#ef44441a}.tx-icon.credit{background:#10b9811a}.tx-icon.debit svg{color:#fb923c}.tx-icon.credit svg{color:#10b981}.tx-icon svg{width:20px;height:20px}.tx-info{flex:1;min-width:0}.tx-info .tx-label{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.tx-info .tx-sub{color:#6b7280;margin-top:2px;font-size:11px}.tx-info .tx-date{color:#4b5563;margin-top:2px;font-size:10px}.tx-amount{flex-shrink:0;font-size:15px;font-weight:800}.tx-amount.debit{color:#f87171}.tx-amount.credit{color:#34d399}.voucher-card{background:#1d1b2e;border:1px solid #2a2840;border-radius:18px;margin-bottom:12px;display:flex;overflow:hidden}.voucher-accent{flex-shrink:0;width:8px}.voucher-body{flex:1;justify-content:space-between;align-items:center;padding:16px;display:flex}.voucher-body .vb-left .discount{font-size:24px;font-weight:800}.voucher-body .vb-left .desc{margin-top:2px;font-size:12px;font-weight:500}.voucher-body .vb-left .expiry{color:#6b7280;margin-top:4px;font-size:11px}.voucher-code{letter-spacing:1px;border-radius:10px;padding:8px 14px;font-size:12px;font-weight:800}.rewards-page{background:#14131a;height:100%;padding:24px;overflow-y:auto}.rewards-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.rewards-header h1{font-size:26px;font-weight:800}.rewards-pts-badge{color:#f59e0b;background:#f59e0b1a;border:1.5px solid #f59e0b40;border-radius:20px;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:700;display:flex}.rewards-pts-badge svg{width:16px;height:16px}.level-card{background:linear-gradient(135deg,#2d2060,#1a1040);border:1px solid #f59e0b26;border-radius:22px;margin-bottom:20px;padding:22px}.level-top{align-items:center;gap:16px;display:flex}.level-badge{background:radial-gradient(circle,#f59e0b,#e08b00);border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-weight:800;display:flex;box-shadow:0 4px 16px #f59e0b4d}.level-badge .lvl{letter-spacing:1px;font-size:8px}.level-badge .num{font-size:22px;line-height:1}.level-info .tier{color:#f59e0b;font-size:17px;font-weight:800}.level-info .next{color:#fff9;margin-top:3px;font-size:12px}.level-progress{margin-top:16px}.level-bar{background:#ffffff0f;border-radius:4px;height:8px;overflow:hidden}.level-bar-fill{background:linear-gradient(90deg,#f59e0b,#fb923c);border-radius:4px;height:100%;transition:all .4s}.level-labels{justify-content:space-between;margin-top:6px;display:flex}.level-labels span{color:#ffffff8c;font-size:11px}.rewards-tabs{background:#1d1b2e;border:1px solid #2a2840;border-radius:14px;margin-bottom:16px;padding:4px;display:flex}.rewards-tab{text-align:center;color:#fff9;cursor:pointer;border-radius:12px;flex:1;padding:11px;font-size:13px;font-weight:600;transition:all .25s}.rewards-tab.active{color:#fff;background:#f59e0b;box-shadow:0 2px 10px #7e6edb4d}.rewards-empty{text-align:center;color:#ffffff80;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.rewards-empty svg{opacity:.3;color:#f59e0b;margin-bottom:16px}.rewards-empty h3{color:#fff;margin-bottom:8px;font-size:18px;font-weight:700}.rewards-empty p{color:#ffffff80;max-width:260px;font-size:13px;line-height:1.5}.challenge-card{background:#1d1b2e;border:1px solid #ffffff0a;border-radius:18px;margin-bottom:10px;padding:18px}.challenge-top{align-items:center;gap:14px;display:flex}.challenge-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.challenge-icon svg{width:20px;height:20px}.challenge-info{flex:1}.challenge-info .title{font-size:14px;font-weight:700}.challenge-info .desc{color:#6b7280;margin-top:3px;font-size:12px}.challenge-reward{color:#f59e0b;background:#f59e0b1a;border-radius:10px;flex-shrink:0;padding:5px 12px;font-size:12px;font-weight:700}.challenge-progress{margin-top:14px}.challenge-bar{background:#ffffff0f;border-radius:3px;height:6px;overflow:hidden}.challenge-bar-fill{border-radius:3px;height:100%;transition:all .3s}.challenge-labels{justify-content:space-between;margin-top:5px;display:flex}.challenge-labels span{color:#6b7280;font-size:10px}.reward-card{background:#1d1b2e;border:1px solid #ffffff0a;border-radius:18px;align-items:center;gap:14px;margin-bottom:10px;padding:18px;display:flex}.reward-icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.reward-icon svg{width:22px;height:22px}.reward-info{flex:1}.reward-info .title{font-size:14px;font-weight:700}.reward-info .desc{color:#6b7280;margin-top:2px;font-size:12px}.reward-cost{cursor:pointer;border-radius:12px;padding:7px 16px;font-size:12px;font-weight:700;transition:all .2s}.leaderboard-podium{justify-content:center;align-items:flex-end;gap:10px;margin-bottom:20px;padding-top:20px;display:flex}.podium-item{flex-direction:column;align-items:center;gap:6px;display:flex}.podium-item .rank{font-size:22px;font-weight:800}.podium-item .p-avatar{border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;font-size:16px;font-weight:700;display:flex}.podium-item .p-name{font-size:12px;font-weight:600}.podium-item .p-pts{color:#6b7280;font-size:11px}.podium-bar{border-radius:10px 10px 0 0;width:60px}.lb-list{flex-direction:column;gap:8px;padding-bottom:20px;display:flex}.lb-item{background:#1d1b2e;border:1px solid #ffffff0a;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex}.lb-item.me{background:#7e6edb0f;border-color:#7e6edb4d}.lb-rank{color:#4b5563;text-align:center;width:28px;font-size:14px;font-weight:800}.lb-item.me .lb-rank{color:#f59e0b}.lb-avatar{background:#2a2840;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:flex}.lb-name{flex:1;font-size:13px;font-weight:600}.lb-pts{color:#9ca3af;font-size:13px;font-weight:700}.loading-screen{height:100%;background:#14131a;flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100dvh;display:flex}.loading-screen .brand{background:linear-gradient(135deg,#fff 30%,#a594ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:28px;font-weight:800}.spinner{border:3px solid #1d1b2e;border-top-color:#f59e0b;border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{z-index:5000;background:#14131a;justify-content:center;align-items:flex-end;animation:.3s fadeIn;display:flex;position:absolute;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{background:#1d1b2e;border:1px solid #ffffff0d;border-radius:32px 32px 0 0;flex-direction:column;width:100%;height:auto;max-height:96%;padding:24px 20px 32px;animation:.4s cubic-bezier(.165,.84,.44,1) slideUp;display:flex;overflow-y:auto;box-shadow:0 -10px 40px #00000080}.modal-card h3{text-align:center;color:#fff;margin-bottom:24px;font-size:20px;font-weight:800}.rating-stars{justify-content:center;gap:12px;margin-bottom:24px;display:flex}.rating-stars svg{cursor:pointer;width:36px;height:36px;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.rating-stars svg:hover{filter:drop-shadow(0 0 8px #f59e0b66);transform:scale(1.2)rotate(8deg)}.rating-stars.mini{gap:4px}.rating-stars.mini svg{width:14px;height:14px}.rating-metrics{background:#ffffff08;border:1px solid #ffffff0d;border-radius:16px;flex-direction:column;gap:12px;margin:0 0 20px;padding:16px;display:flex}.rating-metric{justify-content:space-between;align-items:center;display:flex}.rating-metric-info{align-items:center;gap:10px;display:flex}.metric-icon{justify-content:center;align-items:center;width:20px;font-size:16px;display:flex}.rating-metric-label{color:#ffffffb3;font-size:13px;font-weight:500}.modal-textarea{color:#fff;resize:none;background:#13111e;border:1.5px solid #2a2840;border-radius:16px;outline:none;width:100%;min-height:90px;margin-bottom:20px;padding:14px 16px;font-size:14px;line-height:1.5;transition:all .25s}.modal-textarea:focus{background:#7e6edb0a;border-color:#f59e0b}.modal-actions{gap:12px;display:flex}.modal-actions button{border-radius:14px;flex:1;padding:15px;font-size:15px;font-weight:700;transition:all .2s}.modal-skip{color:#ffffff73;background:#13111e;border:1.5px solid #2a2840}.notifications-page{background:#14131a;flex-direction:column;height:100%;display:flex}.page-header{border-bottom:1px solid #1a1830;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.page-header h2{color:#fff;font-size:18px;font-weight:700}.notifications-list{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.notification-item{background:#1d1b2e;border:1px solid #2a2840;border-radius:16px;gap:12px;padding:16px;transition:all .25s;display:flex;position:relative}.notification-item.unread{background:#7e6edb0a;border-color:#f59e0b66}.notif-content{cursor:pointer;flex-direction:column;flex:1;gap:4px;display:flex}.notif-header{align-items:center;gap:8px;display:flex}.notif-title{color:#fff;font-size:15px;font-weight:700}.notif-body{color:#ffffffb3;font-size:14px;line-height:1.4}.notif-time{color:#ffffff73;margin-top:2px;font-size:11px}.unread-dot{background:#7e6edb;border-radius:50%;width:8px;height:8px;box-shadow:0 0 6px #7e6edb}.notif-actions{border-left:1px solid #ffffff0d;flex-direction:column;gap:8px;padding-left:12px;display:flex}.action-btn{color:#fff6;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:4px;transition:all .2s;display:flex}.action-btn:hover{color:#fff;background:#ffffff0d}.action-btn.delete:hover{color:#ef4444;background:#ef44441a}.empty-state{color:#ffffff4d;opacity:.8;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;height:100%;display:flex}.notification-badge{color:#fff;background:#ef4444;border:2px solid #0d0c16;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:800;display:flex;position:absolute;top:4px;right:4px}.icon-btn{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex}.modal-skip:hover{color:#fff;background:#ffffff05;border-color:#ffffff1a}.modal-submit{color:#fff;background:linear-gradient(135deg,#7e6edb,#5b43c2);box-shadow:0 4px 15px #7e6edb4d}.modal-submit:hover{transform:translateY(-1px);box-shadow:0 6px 20px #7e6edb66}.name-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.driver-rating-pill{color:#f59e0b;background:#f59e0b26;border:1px solid #f59e0b33;border-radius:8px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:800;display:flex}.driver-rating-pill .trips{color:#f59e0b99;margin-left:2px;font-size:10px;font-weight:500}.finish-early-section{border-top:1px solid #ffffff0d;margin-top:16px;padding-top:16px}.finish-early-btn{color:#a594ff;background:#7e6edb14;border:1px solid #7e6edb33;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:13px;font-weight:700;transition:all .25s;display:flex}.finish-early-btn:hover:not(:disabled){background:#7e6edb1f;border-color:#7e6edb;transform:translateY(-1px)}.finish-early-btn:disabled{opacity:.5;cursor:not-allowed}.early-finish-modal{z-index:6000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d0c16eb;justify-content:center;align-items:center;padding:24px;animation:.3s ease-out fadeIn;display:flex;position:absolute;inset:0}.early-finish-modal .modal-content{text-align:center;background:#1d1b2e;border:1.5px solid #2a2840;border-radius:28px;width:100%;padding:28px;animation:.4s cubic-bezier(.165,.84,.44,1) slideUp;box-shadow:0 30px 80px #0009}.early-finish-modal h3{color:#fff;margin-bottom:12px;font-size:20px;font-weight:800}.early-finish-modal p{color:#ffffff80;margin-bottom:24px;font-size:13px;line-height:1.6}.early-price{background:#10b9811a;border:1px solid #10b98133;border-radius:20px;flex-direction:column;gap:4px;margin-bottom:28px;padding:18px;display:flex}.early-price .label{color:#10b981;text-transform:uppercase;letter-spacing:1.2px;font-size:10px;font-weight:800}.early-price .value{color:#fff;font-size:28px;font-weight:900}.modal-btns{gap:12px;display:flex}.modal-btns button{border-radius:16px;flex:1;padding:16px;font-size:15px;font-weight:700;transition:all .25s}.modal-btns button.reject{color:#fff9;background:#ffffff0d;border:1px solid #ffffff1a}.modal-btns button.accept{color:#fff;background:#10b981;box-shadow:0 4px 18px #10b98166}.modal-btns button.accept:hover{transform:translateY(-1px);box-shadow:0 8px 24px #10b98180}.status-banner{border-radius:12px;align-items:center;gap:10px;margin:12px 20px;padding:12px 16px;font-size:13px;font-weight:600;animation:.3s ease-out slideDown;display:flex}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.info-banner{color:#7e6edb;background:#7e6edb1a;border:1px solid #7e6edb33}.warning-banner{color:#f59e0b;cursor:pointer;background:#f59e0b1a;border:1px solid #f59e0b33}.warning-banner:hover{background:#f59e0b26}.lp-content{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:360px;animation:.5s ease-out .1s both slideUp;display:flex}@keyframes lpPulse{0%{opacity:.5;transform:scale(.95)}to{opacity:0;transform:scale(1.2)}}.lp-main-icon{color:#f59e0b;filter:drop-shadow(0 0 12px #f59e0b66);z-index:1}.lp-title{background:linear-gradient(135deg,#fff 30%,#a594ff);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:12px;font-size:28px;font-weight:800}.lp-desc{color:#fff9;max-width:280px;margin-bottom:32px;font-size:15px;line-height:1.5}.lp-inst-header{color:#f59e0b;text-transform:uppercase;letter-spacing:1.2px;align-items:center;gap:8px;margin-bottom:16px;font-size:11px;font-weight:700;display:flex}.lp-step-num{color:#f59e0b;background:#f59e0b26;border:1.5px solid #f59e0b66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;font-size:11px;font-weight:800;display:flex}.lp-retry-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#5b43c2);border:none;border-radius:16px;justify-content:center;align-items:center;gap:12px;width:100%;padding:18px;font-size:16px;font-weight:700;transition:all .25s;display:flex;box-shadow:0 4px 20px #f59e0b40}.lp-retry-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #f59e0b66}.lp-retry-btn:active{opacity:.8;transform:translateY(0)}.lp-retry-btn.loading{opacity:.7;cursor:wait;box-shadow:none;transform:none}.lp-footer-note{color:#ffffff73;justify-content:center;align-items:center;gap:6px;margin-top:16px;font-size:12px;display:flex}.location-permission-overlay{z-index:5000;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0d0c16fa;justify-content:center;align-items:center;padding:24px;animation:.4s ease-out fadeIn;display:flex;position:absolute;inset:0}.lp-content{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:360px;display:flex}.lp-icon-wrap{justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:32px;display:flex;position:relative}.lp-icon-pulse{background:#f59e0b33;border:2px solid #f59e0b66;border-radius:50%;width:60px;height:60px;animation:2s cubic-bezier(.4,0,.6,1) infinite lpPulse;position:absolute}.lp-main-icon{color:#f59e0b;z-index:1}.lp-title{color:#fff;margin-bottom:12px;font-size:28px;font-weight:800}.lp-desc{color:#fff9;margin-bottom:32px;font-size:15px;line-height:1.5}.lp-instructions{text-align:left;background:#1d1b2e;border:1px solid #2a2840;border-radius:20px;width:100%;margin-bottom:32px;padding:20px}.lp-inst-header{color:#f59e0b;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:16px;font-size:11px;font-weight:700;display:flex}.lp-steps{flex-direction:column;gap:14px;display:flex}.lp-step{align-items:flex-start;gap:12px;display:flex}.lp-step-num{color:#f59e0b;background:#f59e0b26;border:1.5px solid #f59e0b66;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:flex}.lp-step-text{color:#ffffffd9;font-size:13.5px;line-height:1.4}.lp-retry-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#5b43c2);border:none;border-radius:16px;justify-content:center;align-items:center;gap:12px;width:100%;padding:18px;font-size:16px;font-weight:700;display:flex}.lp-footer-note{color:#ffffff73;align-items:center;gap:6px;margin-top:16px;font-size:12px;display:flex}.spin{animation:1s linear infinite spin}.lp-overlay{-webkit-backdrop-filter:blur(20px);z-index:10000;background:#0d0c16d9;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.lp-card{background:#1d1b2e;border:1px solid #ffffff14;border-radius:32px;width:100%;max-width:440px;padding:32px 28px;position:relative;overflow:hidden;box-shadow:0 40px 80px -20px #00000080}.lp-card.error{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.lp-deco-orb{filter:blur(60px);z-index:0;opacity:.15;pointer-events:none;border-radius:50%;width:150px;height:150px;position:absolute}.lp-orb-1{background:#f59e0b;top:-50px;right:-50px}.lp-orb-2{background:#5b43c2;bottom:-50px;left:-50px}.lp-header{text-align:center;z-index:1;margin-bottom:32px;position:relative}.lp-brand-icon{background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:20px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;display:flex;position:relative}.lp-pulse-ring{opacity:0;border:1.5px solid #f59e0b;border-radius:24px;animation:2s cubic-bezier(.24,0,.38,1) infinite lpPulse;position:absolute;inset:-6px}.lp-headline{color:#fff;letter-spacing:-.02em;margin-bottom:12px;font-size:24px;font-weight:800}.lp-subtitle{color:#fff9;font-size:14px;line-height:1.6}.lp-guide-section{z-index:1;background:#ffffff08;border:1px solid #ffffff0d;border-radius:24px;margin-bottom:32px;padding:20px;position:relative}.lp-guide-meta{border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.lp-guide-label{color:#f59e0b;letter-spacing:.1em;font-size:10px;font-weight:800}.lp-guide-badge{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:600;display:flex}.lp-step-list{flex-direction:column;gap:20px;display:flex}.lp-step-item{gap:16px;display:flex;position:relative}.lp-step-index{color:#f59e0b;z-index:1;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:flex}.lp-step-content{flex:1}.lp-step-main{color:#fff;margin-bottom:4px;font-size:15px;font-weight:600}.lp-step-sub{color:#ffffff80;font-size:12.5px;line-height:1.5}.lp-step-connector{background:#ffffff0d;width:1px;position:absolute;top:28px;bottom:-20px;left:13.5px}.lp-footer{z-index:1;flex-direction:column;gap:16px;display:flex;position:relative}.lp-btn-primary{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:18px;justify-content:center;align-items:center;gap:12px;width:100%;height:58px;font-size:16px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 12px 24px -6px #f59e0b66}.lp-btn-primary:active{transform:scale(.97)}.lp-btn-primary:disabled{opacity:.7;cursor:not-allowed}.lp-btn-loading .lp-spin{animation:1s linear infinite lpSpin}@keyframes lpSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lp-arrow{transition:transform .3s}.lp-btn-primary:hover .lp-arrow{transform:translate(4px)}.lp-support-note{color:#fff6;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.fade-in{animation:.4s ease-out lpFadeIn}.slide-up{animation:.5s cubic-bezier(.16,1,.3,1) lpSlideUp}@keyframes lpFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lpSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.install-prompt-overlay{z-index:9999;animation:.4s ease-out slideUp;position:fixed;bottom:80px;left:16px;right:16px}.install-prompt-card{background:#1d1b2e;border:1px solid #2a2840;border-radius:20px;padding:20px;position:relative;box-shadow:0 10px 40px #0009}.close-prompt{color:#fff6;cursor:pointer;background:0 0;border:none;padding:4px;position:absolute;top:12px;right:12px}.prompt-content{align-items:center;gap:16px;margin-bottom:20px;display:flex}.app-icon-preview{background:#f59e0b1a;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.prompt-text h3{color:#fff;margin-bottom:4px;font-size:16px;font-weight:700}.prompt-text p{color:#fff9;font-size:13px;line-height:1.4}.install-action-btn{color:#1d1b2e;cursor:pointer;background:#f59e0b;border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;padding:12px;font-size:14px;font-weight:700;display:flex}.ios-guide{text-align:center;background:#ffffff0d;border-radius:10px;padding:10px}.ios-guide p{color:#fff;margin:0;font-size:13px}
