:root{--panel:#0a1020a8;--panel-border:#ffffff1f;--text:#f4f6fb;--muted:#b7c0d4;--accent:#ffd23f}*{box-sizing:border-box}html,body,#root{height:100%;color:var(--text);-webkit-user-select:none;user-select:none;overscroll-behavior:none;background:#0b1328;margin:0;font:14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}canvas{touch-action:none;display:block}.loading{height:100%;color:var(--muted);place-items:center;font-size:18px;display:grid}.hud{pointer-events:none;padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));position:fixed;inset:0}.card{background:var(--panel);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;padding:8px 12px}.top-left{top:max(12px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));max-width:min(320px,60vw);position:absolute}.title{font-size:15px;font-weight:700}.tag{text-transform:uppercase;letter-spacing:.06em;color:#0b1328;background:var(--accent);vertical-align:2px;border-radius:6px;margin-left:4px;padding:1px 5px;font-size:10px;font-weight:600}.place{margin-top:2px;font-size:17px;font-weight:600}.sub{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.top-right{top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute}.perf{color:var(--muted);font-variant-numeric:tabular-nums;padding:4px 8px;font-size:11px}.btn{pointer-events:auto;color:var(--text);font:inherit;cursor:pointer;padding:5px 10px;font-size:12px}.btn:hover{border-color:#ffffff59}.bottom-right{right:max(12px, env(safe-area-inset-right));bottom:max(28px, env(safe-area-inset-bottom));position:absolute}.minimap{border-radius:50%;display:block;box-shadow:0 4px 18px #00000059}.help{left:max(12px, env(safe-area-inset-left));bottom:max(28px, env(safe-area-inset-bottom));color:var(--muted);font-size:12px;line-height:1.7;position:absolute}.help b{color:var(--text)}.help.small{padding:4px 8px}.prompt{background:var(--panel);border:1px solid var(--accent);border-radius:999px;padding:6px 14px;font-weight:600;position:absolute;bottom:22%;left:50%;transform:translate(-50%)}.attribution{left:50%;bottom:max(6px, env(safe-area-inset-bottom));color:#ffffffbf;text-shadow:0 1px 2px #000c;white-space:nowrap;text-overflow:ellipsis;max-width:calc(100vw - 24px);font-size:10px;position:absolute;overflow:hidden;transform:translate(-50%)}.joy-base{background:#ffffff1f;border:2px solid #ffffff59;border-radius:50%;width:110px;height:110px;margin:-55px 0 0 -55px;position:fixed}.joy-knob{background:#ffffff8c;border-radius:50%;width:50px;height:50px;position:absolute;top:30px;left:30px}.joy-hint{left:max(28px, env(safe-area-inset-left));bottom:max(48px, env(safe-area-inset-bottom));color:#ffffffb3;border:2px dashed #ffffff59;border-radius:50%;place-items:center;width:96px;height:96px;font-size:12px;display:grid;position:absolute}.touch-buttons{right:max(16px, env(safe-area-inset-right));bottom:max(40px, env(safe-area-inset-bottom));align-items:flex-end;gap:12px;display:flex;position:absolute}.tbtn{pointer-events:auto;touch-action:none;background:var(--panel);width:64px;height:64px;color:var(--text);border:2px solid #fff6;border-radius:50%;font:600 12px system-ui,sans-serif}.tbtn-big{width:78px;height:78px;font-size:14px}.tbtn:active{background:#ffd23f73}.chips{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.chip{color:var(--text);background:#ffffff1f;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.chip.ok{background:#3caa6ed9}.chip.warn{color:#1a1406;background:#e6a01ee6}.chip.bad{background:#d23c32e6}.btn-row{gap:6px;display:flex}.speedo{left:50%;bottom:max(70px, calc(env(safe-area-inset-bottom) + 60px));background:var(--panel);border:1px solid var(--panel-border);border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 6px;display:flex;position:absolute;transform:translate(-50%)}.speedo .limit{color:#111;background:#fff;border:5px solid #d42a20;border-radius:50%;place-items:center;width:40px;height:40px;font-size:15px;font-weight:800;display:grid}.speedo .kmh{font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.speedo .kmh small{color:var(--muted);margin-left:3px;font-size:11px}.speedo.over .kmh{color:#ff6b5e}.toast{top:max(84px, calc(env(safe-area-inset-top) + 76px));background:var(--panel);border:1px solid var(--panel-border);border-left:4px solid #7fb3ff;border-radius:10px;max-width:min(560px,100vw - 32px);padding:8px 14px;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.toast.warn{border-left-color:#f2b705}.toast.ok{border-left-color:#3cb371}.hint{left:50%;bottom:max(128px, calc(env(safe-area-inset-bottom) + 118px));text-align:center;color:#1a1406;background:#ffd23feb;border-radius:999px;max-width:min(520px,100vw - 32px);padding:6px 14px;font-size:13px;font-weight:600;position:absolute;transform:translate(-50%)}.touch-extra{right:max(16px, env(safe-area-inset-right));bottom:max(140px, calc(env(safe-area-inset-bottom) + 130px));flex-direction:column;gap:10px;display:flex;position:absolute}.tbtn.small{width:58px;height:58px;font-size:11px}.dialog{pointer-events:auto;left:50%;bottom:max(24px, env(safe-area-inset-bottom));background:#0a1020eb;border:1px solid #ffffff2e;border-radius:16px;width:min(560px,100vw - 24px);max-height:calc(100vh - 120px);padding:14px 16px;position:absolute;overflow:auto;transform:translate(-50%);box-shadow:0 10px 40px #00000073}.dialog-speaker{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.dialog-ml{margin-top:4px;font-family:Nirmala UI,Noto Sans Malayalam,system-ui,sans-serif;font-size:20px;font-weight:700}.dialog-en{color:#dbe2ef;margin-top:2px}.dialog-card{border-radius:10px;width:min(280px,70%);margin:10px 0 2px;display:block;box-shadow:0 4px 14px #0006}.dialog-options{flex-direction:column;gap:6px;margin-top:12px;display:flex}.dialog-btn{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:10px;align-items:center;gap:10px;padding:9px 12px;display:flex}.dialog-btn:hover{background:#ffffff29}.dialog-key{color:#1a1406;background:#ffd23fe6;border-radius:6px;flex:none;place-items:center;width:20px;height:20px;font-size:12px;font-weight:800;display:inline-grid}.modal-backdrop{pointer-events:auto;-webkit-user-select:text;user-select:text;background:#0509148c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.muted{color:var(--muted)}.small{font-size:12px}.field{flex-direction:column;gap:6px;margin-top:14px;display:flex}.field>span{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.field input[type=text],.field input:not([type]),.field select{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;padding:8px 10px}.field select option{color:#111}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button,.actions button{font:inherit;color:var(--text);cursor:pointer;background:#ffffff12;border:1px solid #ffffff2e;border-radius:8px;padding:7px 12px;font-size:13px}.seg button.on{color:#1a1406;background:#ffd23fe6;border-color:#0000;font-weight:700}.actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.actions .spacer{flex:1}.actions button.primary{color:#1a1406;background:#ffd23f;border-color:#0000;font-weight:700}.actions button:disabled{opacity:.5;cursor:not-allowed}button.link{color:#8fc1ff;cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}button.link.danger{color:#ff8a80}.check,.radio{align-items:center;gap:8px;margin-top:10px;display:flex}.radio{margin-top:4px}.status{border-radius:8px;margin-top:14px;padding:8px 10px;font-size:13px}.status.ok{background:#3caa6e33}.status.warn{background:#e6a01e33}.error{color:#ff8a80}.add-company{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.add-company input{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;flex:200px;padding:8px 10px}.add-company button:not(.link){font:inherit;color:#1a1406;cursor:pointer;background:#ffd23f;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:700}.add-company p{flex-basis:100%;margin:2px 0 0}.field .link.small{align-self:flex-start;font-size:12px}.minimap{pointer-events:auto;cursor:pointer}.navbar{top:max(12px, env(safe-area-inset-top));pointer-events:auto;background:var(--panel);border:1px solid var(--panel-border);border-left:4px solid #ff8a1f;border-radius:12px;align-items:center;gap:10px;max-width:min(360px,100vw - 240px);padding:6px 8px 6px 10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.navbar-name{white-space:nowrap;text-overflow:ellipsis;max-width:220px;font-size:13px;font-weight:700;overflow:hidden}.navbar-dist{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.navbar-x{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:20px}.toast{top:max(76px, calc(env(safe-area-inset-top) + 66px))}.mapview{pointer-events:auto;background:#0b1328;position:fixed;inset:0}.mapview-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.mapview-panel{top:max(12px, env(safe-area-inset-top));left:max(12px, env(safe-area-inset-left));-webkit-user-select:text;user-select:text;background:#0a1020e6;border:1px solid #ffffff29;border-radius:14px;flex-direction:column;gap:8px;width:min(300px,100vw - 24px);max-height:calc(100vh - 24px);padding:12px;display:flex;position:absolute}.mapview-head{flex-direction:column;gap:2px;display:flex}.mapview-search{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;padding:7px 10px}.mapview-list{flex-direction:column;gap:2px;max-height:34vh;display:flex;overflow:auto}.mapview-list button{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:5px 8px;font-size:13px}.mapview-list button:hover{background:#ffffff1a}.mapview-actions{flex-wrap:wrap;gap:6px;display:flex}.mapview-actions button{font:inherit;color:var(--text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;padding:6px 10px;font-size:13px}.mapview-actions button.primary{color:#1a1406;background:#ffd23f;border-color:#0000;font-weight:700}@media (width<=640px){.mapview-panel{top:auto;bottom:max(12px, env(safe-area-inset-bottom));max-height:46vh}.mapview-list{max-height:18vh}.navbar{max-width:calc(100vw - 150px)}}.chat-mini,.chat{left:max(12px, env(safe-area-inset-left));bottom:max(96px, calc(env(safe-area-inset-bottom) + 86px));pointer-events:auto;width:min(380px,100vw - 24px);position:absolute}.chat-mini{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.chat-mini .chat-line{overflow-wrap:anywhere;background:#0a10208c;border-radius:8px;max-width:100%;padding:3px 8px;font-size:13px}.chat-open{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--panel-border);cursor:pointer;border-radius:999px;margin-top:2px;padding:5px 12px;font-size:12px}.chat{-webkit-user-select:text;user-select:text;background:#0a1020e6;border:1px solid #ffffff29;border-radius:14px;flex-direction:column;gap:6px;padding:8px;display:flex}.chat-tabs{align-items:center;gap:4px;display:flex}.chat-tabs .spacer{flex:1}.chat-tabs button{font:inherit;color:var(--text);cursor:pointer;background:#ffffff12;border:1px solid #ffffff29;border-radius:8px;padding:4px 10px;font-size:12px}.chat-tabs button.on{color:#1a1406;background:#ffd23f;border-color:#0000;font-weight:700}.chat-tabs .chat-x{background:0 0;border:none;padding:0 6px;font-size:18px}.chat-note{color:#f2c86a;margin:0;font-size:12px}.chat-list{flex-direction:column;gap:3px;max-height:min(240px,34vh);font-size:13px;display:flex;overflow:auto}.chat-line{overflow-wrap:anywhere}.chat-line b{color:#9fd0ff;margin-right:4px}.chat-line.mine b{color:#ffd23f}.chat-line.system{color:var(--muted);font-size:12px;font-style:italic}.chan{text-transform:uppercase;background:#ffffff1f;border-radius:5px;margin:0 4px;padding:1px 5px;font-size:10px;font-weight:700}.chan.bad{background:#d23c32cc}.chat-input{gap:6px;display:flex}.chat-input input{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;flex:1;min-width:0;padding:7px 10px}.chat-input button,.person-actions button,.voice-row button,.report button,.rooms button{font:inherit;color:var(--text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:7px;padding:4px 9px;font-size:12px}.chat-input button{color:#1a1406;background:#ffd23f;border-color:#0000;padding:6px 12px;font-weight:700}.voice-row{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:8px;padding:4px 2px 8px;display:flex}.person{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:4px 2px;display:flex}.person-actions{gap:4px;display:flex}.report{flex-wrap:wrap;flex-basis:100%;gap:4px;display:flex}.rooms{border-top:1px solid #ffffff1a;flex-wrap:wrap;align-items:center;gap:4px;padding-top:6px;display:flex}button:disabled{opacity:.45;cursor:not-allowed}.tbtn.on{background:#3ddc8499}.help{left:auto;right:max(220px, calc(env(safe-area-inset-right) + 210px))}@media (width<=640px){.chat-mini,.chat{bottom:auto;top:max(150px, calc(env(safe-area-inset-top) + 140px))}}.small-seg button{padding:5px 10px;font-size:12px}.pf{background:#0f1830;border:1px solid #ffffff24;border-radius:18px;flex-direction:column;width:min(880px,100%);max-height:calc(100dvh - 32px);display:flex;overflow:hidden;box-shadow:0 30px 80px #00000080}.pf h2{margin:0 0 2px;font-size:20px}.pf .muted.small{margin:0}.pf-head{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px 14px;display:flex}.pf-x{width:34px;height:34px;color:var(--text);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:50%;flex:none;font-size:22px;line-height:1}.pf-x:hover{background:#ffffff24}.pf-body{flex:1;grid-template-columns:290px minmax(0,1fr);min-height:0;display:grid;overflow:auto}.pf-side{background:#ffffff06;border-right:1px solid #ffffff14;padding:20px}.pf-card{aspect-ratio:16/10;background:#ffffff0a;border-radius:12px;overflow:hidden;box-shadow:0 12px 30px #00000073}.pf-card img{object-fit:cover;width:100%;height:100%;display:block}.pf-card-empty{text-align:center;height:100%;color:var(--muted);border:2px dashed #ffffff29;border-radius:12px;place-items:center;padding:12px;font-size:13px;display:grid}.pf-card-note{text-align:center;color:var(--muted);margin:8px 0 14px;font-size:12px}.pf-gate{border-left:3px solid;border-radius:10px;flex-direction:column;gap:2px;margin-bottom:10px;padding:10px 12px;font-size:13px;display:flex}.pf-gate b{font-size:13px}.pf-gate span{color:var(--muted)}.pf-gate.ok{background:#3caa6e24;border-color:#3cc48a}.pf-gate.warn{background:#e6a01e24;border-color:#f0b030}.pf-gate.pass{background:#d9822b24;border-color:#d9822b}.pf-main{padding:4px 22px 18px}.pf-sec{border-bottom:1px solid #ffffff12;padding:16px 0}.pf-sec:last-child{border-bottom:none}.pf-sec h3{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:12px;font-weight:700}.pf-sec .field:first-of-type{margin-top:12px}.pf-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.pf-hint{color:var(--muted);margin:8px 0 0;font-size:12px}.pf-hint .link{font-size:12px}.pf-identity{align-items:flex-start;gap:16px;display:flex}.pf-avatar{color:#0b1328;cursor:pointer;background:linear-gradient(135deg,#ffd23f,#2bb38a);border-radius:50%;flex:none;place-items:center;width:76px;height:76px;font-size:26px;font-weight:800;display:grid;position:relative}.pf-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.pf-avatar input{opacity:0;width:1px;height:1px;position:absolute}.pf-avatar:focus-within{outline:2px solid var(--accent);outline-offset:3px}.pf-avatar-badge{color:#1a1406;background:#ffd23f;border:3px solid #0f1830;border-radius:50%;place-items:center;width:28px;height:28px;display:grid;position:absolute;bottom:-2px;right:-2px}.pf-avatar:hover .pf-avatar-badge{background:#ffe07a}.pf-name{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.pf input[type=text],.pf select{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:9px;outline:none;padding:9px 12px;font-size:15px}.pf input[type=text]:focus,.pf select:focus{border-color:var(--accent)}.pf-seg{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:10px;grid-auto-columns:1fr;grid-auto-flow:column;gap:0;padding:3px;display:grid}.pf-seg button{background:0 0;border:none;border-radius:7px;padding:8px 6px}.pf-seg button.on{background:#ffd23f}.pf-store{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.pf-file-row{flex-wrap:wrap;align-items:center;gap:14px;margin-top:12px;display:flex}.pf-file{cursor:pointer;background:#ffffff0d;border:1px dashed #ffffff59;border-radius:9px;padding:8px 14px;font-size:14px;font-weight:600;position:relative;overflow:hidden}.pf-file:hover{border-color:var(--accent)}.pf-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.pf-arrivals{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.pf-opt{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:#ffffff0a;border:1.5px solid #ffffff1f;border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.pf-opt b{font-size:13px}.pf-opt span{color:var(--muted);font-size:12px}.pf-opt:hover{border-color:#ffffff4d}.pf-opt.on{background:#ffd23f14;border-color:#ffd23f}.pf-switch{cursor:pointer;align-items:center;gap:10px;margin-top:14px;font-size:14px;display:inline-flex}.pf-switch input{opacity:0;width:1px;height:1px;position:absolute}.pf-track{background:#ffffff2e;border-radius:11px;width:38px;height:22px;transition:background .15s;position:relative}.pf-track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px}.pf-switch input:checked+.pf-track{background:#2bb38a}.pf-switch input:checked+.pf-track:after{transform:translate(16px)}.pf-switch input:focus-visible+.pf-track{outline:2px solid var(--accent);outline-offset:2px}.pf-foot{background:#ffffff05;border-top:1px solid #ffffff14;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 20px;display:flex}.pf-foot .spacer{flex:1}.pf-foot button:not(.link){font:inherit;color:var(--text);cursor:pointer;background:#ffffff12;border:1px solid #ffffff2e;border-radius:9px;padding:8px 14px;font-size:14px;font-weight:600}.pf-foot button:not(.link):hover{background:#ffffff21}.pf-foot button.primary{color:#1a1406;background:#ffd23f;border-color:#0000;padding:8px 20px}.pf-foot button.primary:hover{background:#ffdc66}.pf-foot .link{font-size:13px}@media (width<=760px){.modal-backdrop{padding:8px}.pf{max-height:calc(100dvh - 16px)}.pf-body{grid-template-columns:1fr}.pf-side{border-bottom:1px solid #ffffff14;border-right:none;grid-template-columns:150px 1fr;align-items:start;gap:0 14px;padding:14px 16px;display:grid}.pf-side .pf-card{grid-row:span 3}.pf-card-note{text-align:left;margin:0 0 6px}.pf-main{padding:0 16px 12px}.pf-arrivals{grid-template-columns:1fr}.pf-seg button{padding:8px 4px;font-size:12px}.pf-foot .link{text-align:center;flex-basis:100%;order:9}}.pf{position:relative}.pf-confirm{z-index:5;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#050914b3;place-items:center;padding:16px;animation:.15s ease-out pfFade;display:grid;position:absolute;inset:0}.pf-confirm-box{background:#141f3b;border:1px solid #ffffff24;border-radius:16px;width:min(380px,100%);padding:22px 22px 18px;animation:.18s ease-out pfPop;box-shadow:0 24px 60px #0000008c}.pf-confirm-icon{color:#ff8a80;background:#ff6e6426;border-radius:50%;place-items:center;width:44px;height:44px;margin-bottom:12px;display:grid}.pf-confirm-box h3{margin:0 0 8px;font-size:18px}.pf-confirm-box p{color:var(--muted);margin:6px 0;font-size:14px}.pf-confirm-box ul{color:var(--text);margin:4px 0 8px;padding-left:20px;font-size:14px}.pf-confirm-box li{margin:2px 0}.pf-confirm-warn{color:#ffb4ab!important}.pf-confirm-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.pf-confirm-actions button{font:inherit;color:var(--text);cursor:pointer;background:#ffffff12;border:1px solid #ffffff2e;border-radius:9px;padding:9px 16px;font-size:14px;font-weight:600}.pf-confirm-actions button:hover{background:#ffffff21}.pf-confirm-actions button.danger{color:#fff;background:#e5534b;border-color:#0000}.pf-confirm-actions button.danger:hover{background:#f0645c}.pf-confirm-actions button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes pfFade{0%{opacity:0}}@keyframes pfPop{0%{opacity:0;transform:scale(.96)translateY(6px)}}@media (prefers-reduced-motion:reduce){.pf-confirm,.pf-confirm-box{animation:none}}.btn.on{color:#1a1406;background:#ffd23fe6}.bell{align-items:center;display:inline-flex;position:relative}.bell-badge{color:#fff;text-align:center;background:#e5534b;border-radius:9px;min-width:17px;height:17px;padding:0 4px;font-size:10px;font-weight:800;line-height:17px;position:absolute;top:-6px;right:-6px}.note-banners{top:max(84px, calc(env(safe-area-inset-top) + 76px));right:max(12px, env(safe-area-inset-right));pointer-events:auto;z-index:30;flex-direction:column;gap:8px;width:min(350px,100vw - 24px);display:flex;position:absolute}.note{background:#10182ef0;border:1px solid #ffffff1f;border-radius:14px;padding:10px 12px 11px;box-shadow:0 10px 28px #00000059}.note.banner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:.25s ease-out noteIn}@keyframes noteIn{0%{opacity:0;transform:translate(24px)}}.note-head{color:var(--muted);align-items:center;gap:7px;margin-bottom:4px;font-size:11px;display:flex}.note-app{color:#fff;background:#5b6b84;border-radius:5px;place-items:center;width:18px;height:18px;font-size:10px;font-weight:800;display:grid}.note-app.app-rides{color:#ffd23f;background:#111;border:1px solid #ffd23f}.note-app.app-chat{background:#2f6fb0}.note-appname{color:var(--text);font-weight:700}.note-time{margin-left:auto}.note-x{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:17px;line-height:1}.note-x:hover{color:var(--text)}.note-title{font-size:14px;display:block}.note-body{color:#cfd6e4;margin:2px 0 0;font-size:13px;line-height:1.35}.note.ok{border-left:3px solid #3cb371}.note.warn{border-left:3px solid #f2b705}.note-actions{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.note-actions button{font:inherit;color:var(--text);cursor:pointer;background:#ffffff17;border:1px solid #ffffff29;border-radius:8px;padding:5px 11px;font-size:12px;font-weight:700}.note-actions button:hover{background:#ffffff29}.note-actions button.primary{color:#1a1406;background:#ffd23f;border-color:#0000}.note-center{top:max(84px, calc(env(safe-area-inset-top) + 76px));right:max(12px, env(safe-area-inset-right));pointer-events:auto;-webkit-user-select:text;user-select:text;z-index:31;background:#0c1326f7;border:1px solid #ffffff24;border-radius:16px;flex-direction:column;width:min(370px,100vw - 24px);max-height:calc(100vh - 120px);animation:.2s ease-out noteIn;display:flex;position:absolute;box-shadow:0 20px 50px #00000080}.note-center-head{border-bottom:1px solid #ffffff14;align-items:center;gap:10px;padding:12px 14px;display:flex}.note-center-head b{margin-right:auto;font-size:15px}.note-center-list{flex-direction:column;gap:8px;padding:10px;display:flex;overflow:auto}.note-empty{text-align:center;padding:18px 6px}.note-prefs{background:#ffffff05;border-top:1px solid #ffffff14;border-radius:0 0 16px 16px;flex-direction:column;gap:2px;padding:10px 10px 12px;display:flex}.note-prefs-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:0 6px 4px;font-size:11px;font-weight:700}.note-pref{cursor:pointer;border-radius:10px;align-items:center;gap:12px;padding:9px 8px;display:flex;position:relative}.note-pref:hover{background:#ffffff0d}.note-pref.disabled{cursor:not-allowed;opacity:.6}.note-pref-icon{width:34px;height:34px;color:var(--muted);background:#ffffff12;border-radius:10px;flex:none;place-items:center;transition:background .15s,color .15s;display:grid}.note-pref-icon.on{color:#ffd23f;background:#ffd23f29}.note-pref-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.note-pref-text b{color:var(--text);font-size:13px}.note-pref-text small{color:var(--muted);font-size:11.5px;line-height:1.35}.note-pref input{opacity:0;width:1px;height:1px;position:absolute}.note-switch{background:#ffffff2e;border-radius:12px;flex:none;width:40px;height:23px;transition:background .15s;position:relative}.note-switch:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000059}.note-pref input:checked+.note-switch{background:#2bb38a}.note-pref input:checked+.note-switch:after{transform:translate(17px)}.note-pref input:focus-visible+.note-switch{outline:2px solid var(--accent);outline-offset:2px}.rides{top:max(84px, calc(env(safe-area-inset-top) + 76px));right:max(12px, env(safe-area-inset-right));pointer-events:auto;-webkit-user-select:text;user-select:text;z-index:25;background:#0f1426;border:1px solid #ffffff24;border-radius:20px;flex-direction:column;width:min(360px,100vw - 24px);min-height:260px;max-height:calc(100vh - 100px);animation:.2s ease-out noteIn;display:flex;position:absolute;overflow:hidden;box-shadow:0 20px 50px #00000080}.rides-head{border-bottom:1px solid #ffffff14;align-items:center;gap:8px;padding:12px 14px;display:flex}.rides-head b{font-size:16px}.rides-head .muted{margin-right:auto}.rides-logo{color:#ffd23f;background:#111;border:1.5px solid #ffd23f;border-radius:8px;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.rides-x{color:var(--text);cursor:pointer;background:#ffffff12;border:1px solid #ffffff24;border-radius:50%;width:28px;height:28px;font-size:18px;line-height:1}.rides-body{padding:12px 14px 14px;overflow:auto}.rides-body h3{margin:0 0 10px;font-size:18px}.rides-search{width:100%;font:inherit;color:var(--text);background:#ffffff12;border:1px solid #ffffff2e;border-radius:10px;outline:none;padding:10px 12px;font-size:14px}.rides-search:focus{border-color:#ffd23f}.rides-list{flex-direction:column;margin-top:8px;display:flex}.rides-place{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff0f;justify-content:space-between;gap:10px;padding:9px 4px;display:flex}.rides-place:hover{background:#ffffff0a}.rides-place b{font-size:13px;font-weight:600}.rides-place span{color:var(--muted);white-space:nowrap;font-size:12px}.rides-place.map{background:#ff8a1f1a;border:1px solid #ff8a1f66;border-radius:8px;flex-direction:column;gap:1px;margin-bottom:4px;padding:8px 10px}.rides-link{color:#8fc1ff;font:inherit;cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:12px;text-decoration:underline}.rides-route{background:#ffffff0d;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;font-size:13px;display:flex;position:relative}.rides-route .dot{border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.rides-route .dot.from{background:#3cb371}.rides-route .dot.to{background:#ff8a1f;border-radius:2px}.rides-route .rides-link{position:absolute;top:0;right:12px}.rides-note{color:#ffd68a;margin:8px 0 0;font-size:12px}.rides-options{flex-direction:column;gap:6px;margin-top:10px;display:flex}.rides-option{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:#ffffff08;border:2px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.rides-option:hover{background:#ffffff0f}.rides-option.on{background:#ffd23f12;border-color:#ffd23f}.rides-option-main{flex-direction:column;flex:1;min-width:0;display:flex}.rides-option-main b{font-size:14px}.rides-option-main .seats{color:var(--muted);font-size:12px;font-weight:500}.rides-option-main span{color:var(--muted);font-size:12px}.rides-fare{text-align:right;font-size:15px;font-weight:800}.rides-fare small{color:var(--muted);font-size:11px;font-weight:500;display:block}.rides-pay{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:10px 2px;font-size:12px;display:flex}.rides-pay .badge{color:#a9ccff;background:#7fb3ff26;border-radius:6px;padding:1px 6px}.rides-book{width:100%;font:inherit;color:#1a1406;cursor:pointer;background:#ffd23f;border:none;border-radius:12px;padding:12px;font-size:15px;font-weight:800}.rides-book:hover{background:#ffdc66}.rides-searching,.rides-done{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:10px 0;display:flex}.rides-searching p,.rides-done p{margin:2px 0}.rides-spinner{border:4px solid #ffd23f33;border-top-color:#ffd23f;border-radius:50%;width:54px;height:54px;margin-bottom:10px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.rides-status{background:#3cb3711f;border-left:3px solid #3cb371;border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.rides-status.waiting{background:#ffd23f1a;border-left-color:#ffd23f}.rides-status b{font-size:15px}.rides-status span{color:#cfd6e4;font-size:12px}.rides-driver{align-items:center;gap:10px;margin-top:12px;display:flex}.rides-driver .avatar{color:#0b1328;background:linear-gradient(135deg,#ffd23f,#2bb38a);border-radius:50%;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.rides-driver>div:nth-child(2){flex-direction:column;flex:1;display:flex}.rides-driver span{color:var(--muted);font-size:12px}.rides-driver .plate{color:#111;background:#f4f4f4;border:2px solid #222;border-radius:5px;padding:3px 6px;font:700 12px ui-monospace,Consolas,monospace}.rides-vehicle{color:var(--muted);margin:8px 0 0;font-size:13px}.rides-actions{gap:8px;margin-top:12px;display:flex}.rides-secondary{font:inherit;color:var(--text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:10px;flex:1;padding:9px 12px;font-size:13px;font-weight:700}.rides-secondary:hover{background:#ffffff24}.rides-secondary.danger{color:#ff9a92}.rides-total{font-size:34px;font-weight:900;margin:4px 0 0!important}.rides-stars{gap:4px;margin:4px 0 10px;display:flex}.rides-stars button{color:#ffffff40;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:30px}.rides-stars button.on{color:#ffd23f}.rides-done .rides-secondary{flex:none;min-width:140px}@media (width<=640px){.rides,.note-center{top:auto;bottom:max(12px, env(safe-area-inset-bottom));max-height:70vh;animation:none;left:50%;right:auto;transform:translate(-50%)}.note-banners{top:max(8px, env(safe-area-inset-top));left:50%;right:auto;transform:translate(-50%)}}.paywall{text-align:center;flex-direction:column;align-items:stretch;gap:8px;display:flex}.paywall-burst{color:#1a1406;clip-path:polygon(0% 18%,8% 0%,30% 10%,50% 0%,70% 10%,92% 0%,100% 20%,94% 50%,100% 80%,92% 100%,70% 90%,50% 100%,30% 90%,8% 100%,0% 82%,6% 50%);text-shadow:1px 1px #fff3b0;background:#ffd23f;align-self:center;margin:4px 0 0;padding:14px 18px;font:900 22px/1.25 Nirmala UI,Noto Sans Malayalam,system-ui,sans-serif;animation:.45s cubic-bezier(.2,1.6,.4,1) burst;transform:rotate(-3deg)}@keyframes burst{0%{opacity:0;transform:rotate(-12deg)scale(.3)}to{opacity:1;transform:rotate(-3deg)scale(1)}}.paywall-sub{color:var(--muted);margin:0;font-size:12px;font-style:italic}.paywall-line{text-align:left;background:#ff4fa814;border-left:3px solid #ff4fa8;border-radius:0 10px 10px 0;margin:6px 0 2px;padding:10px 12px}.paywall-line span{font:700 15px/1.45 Nirmala UI,Noto Sans Malayalam,system-ui,sans-serif;display:block}.paywall-line em{color:#cfd6e4;margin-top:4px;font-size:12px;display:block}.paywall-fare{text-align:left;background:#ffffff0d;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.paywall-fare b{font-size:28px;font-weight:900}.paywall-mode{color:#a9ccff;margin:0;font-size:12px}.paywall-mode.live{color:#ffd68a}.paywall-no{flex:none}.arrival-picker{flex-direction:column;gap:8px;margin-top:12px;display:flex;position:relative}.arrival-search{font:inherit;color:var(--text);background:#ffffff0f;border:1px solid #ffffff2e;border-radius:10px;outline:none;padding:9px 12px;font-size:14px}.arrival-search:focus{border-color:#ffd23f}.arrival-results{background:#0a1020f2;border:1px solid #ffffff1f;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.arrival-results button{text-align:left;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff0f;padding:8px 12px;font-size:13px}.arrival-results button:hover{background:#ffd23f1a}.arrival-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.arrival-chosen{align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.arrival-dot{background:#ff8a1f;border-radius:50% 50% 50% 0;width:10px;height:10px;transform:rotate(-45deg)}.arrival-toggle{font:inherit;color:var(--text);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:9px;padding:7px 12px;font-size:13px;font-weight:700}.arrival-toggle:hover{background:#ffffff24}.arrival-map{border:1px solid #ffffff24;border-radius:12px;position:relative;overflow:hidden}.arrival-map canvas{cursor:crosshair;touch-action:none;width:100%;height:280px;display:block}.arrival-zoom{flex-direction:column;gap:4px;display:flex;position:absolute;top:8px;right:8px}.arrival-zoom button{color:#fff;cursor:pointer;background:#0a1020d9;border:1px solid #fff3;border-radius:8px;width:30px;height:30px;font-size:18px;line-height:1}.arrival-hint{color:#cfd6e4;background:#0a1020bf;border-radius:6px;margin:0;padding:2px 8px;font-size:11px;position:absolute;bottom:6px;left:8px}.voice-mode{border:1px solid #ffffff2e;border-radius:7px;gap:0;display:inline-flex;overflow:hidden}.voice-mode button{background:#ffffff0a!important;border:none!important;border-radius:0!important}.voice-mode button.on{font-weight:700;color:#1a1406!important;background:#ffd23fe6!important}.chan.ok{color:#b9f0d2;background:#3cb37140}.voice-row{flex-wrap:wrap}
