/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Instrument Sans", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-300:oklch(80.9% .105 251.813);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--radius-md:.375rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.start{inset-inline-start:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.-ml-px{margin-left:-1px}.block{display:block}.flex{display:flex}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.w-5{width:calc(var(--spacing) * 5)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-items-center{justify-items:center}.gap-2{gap:calc(var(--spacing) * 2)}.rounded-md{border-radius:var(--radius-md)}.rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-300{border-color:var(--color-gray-300)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-white{background-color:var(--color-white)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-gray-300{--tw-ring-color:var(--color-gray-300)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:text-gray-400:hover{color:var(--color-gray-400)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}}.focus\:border-blue-300:focus{border-color:var(--color-blue-300)}.focus\:ring:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:bg-gray-100:active{background-color:var(--color-gray-100)}.active\:text-gray-500:active{color:var(--color-gray-500)}.active\:text-gray-700:active{color:var(--color-gray-700)}.active\:text-gray-800:active{color:var(--color-gray-800)}@media (width>=40rem){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:flex-1{flex:1}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-2{gap:calc(var(--spacing) * 2)}}.rtl\:flex-row-reverse:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}@media (prefers-color-scheme:dark){.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-gray-600{color:var(--color-gray-600)}@media (hover:hover){.dark\:hover\:bg-gray-900:hover{background-color:var(--color-gray-900)}.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:hover{color:var(--color-gray-300)}}.dark\:focus\:border-blue-700:focus{border-color:var(--color-blue-700)}.dark\:focus\:border-blue-800:focus{border-color:var(--color-blue-800)}.dark\:active\:bg-gray-700:active{background-color:var(--color-gray-700)}.dark\:active\:text-gray-300:active{color:var(--color-gray-300)}}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text-main:#f8fbff;--text-soft:#c5d6e6;--primary-color:#3282d0;--primary-color-rgb:50, 130, 208;--primary-light:#fff8f2;--border-light:rgba(var(--primary-color-rgb), .18);--bg-light:#f3f5f7}*{box-sizing:border-box}html,body{height:100vh;min-height:100vh}body.tracker-body{font-family:var(--font-sans);color:var(--text-main);background:#030712;margin:0}body.auth-body{background:0 0}#global-loader{z-index:999999;background:var(--bg-light);opacity:1;justify-content:center;align-items:center;transition:opacity .5s ease-out;display:flex;position:fixed;inset:0}#global-loader.fade-out{opacity:0;pointer-events:none}#global-loader .page-loader{box-sizing:border-box;background:var(--primary-light);border:1px solid var(--border-light);border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;display:inline-flex;position:relative;box-shadow:0 8px 16px #48607a2e,inset 0 1px #ffffffeb}#global-loader .page-loader:before{content:"";box-sizing:border-box;background:conic-gradient(from 0deg, var(--primary-color) 4deg, var(--primary-color) 32deg, rgba(var(--primary-color-rgb), 0) 32deg, rgba(var(--primary-color-rgb), 0) 182deg, var(--primary-color) 182deg, var(--primary-color) 210deg, rgba(var(--primary-color-rgb), 0) 210deg, rgba(var(--primary-color-rgb), 0) 360deg);z-index:1;border-radius:50%;animation:1s linear infinite rotation;position:absolute;inset:4px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2.5px),#000 calc(100% - 2.5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2.5px),#000 calc(100% - 2.5px))}#global-loader .page-loader:after{content:"";z-index:2;background:0 0;border-radius:50%;position:absolute;inset:7px}#global-loader .page-loader-logo{object-fit:cover;z-index:3;border-radius:50%;width:58px;height:58px;display:block;position:relative}body[data-loader=disabled] #global-loader{opacity:0;display:none!important}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tracker-shell{height:100vh;min-height:100vh;position:relative}.auth-shell{place-items:center;min-height:100vh;padding:1.25rem;display:grid}.auth-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(160deg,#080f1eeb,#050a14d1);border:1px solid #ffffff29;border-radius:26px;width:min(100%,560px);padding:1.4rem;box-shadow:0 24px 70px #02061780}.auth-card__eyebrow{color:var(--text-soft);text-transform:uppercase;letter-spacing:.18em;margin:0 0 .5rem;font-size:.72rem}.auth-card h1{margin:0;font-size:clamp(1.9rem,4vw,3rem);line-height:1.02}.auth-card__copy{color:var(--text-soft);max-width:54ch;margin:.8rem 0 1.3rem}.auth-errors{color:#fecdd3;background:#7f1d1d52;border:1px solid #fb718547;border-radius:16px;margin:0 0 1rem;padding:.9rem 1rem}.auth-form{gap:1rem;display:grid}.auth-fields{gap:.9rem;display:grid}.auth-field label{color:var(--text-soft);margin-bottom:.45rem;font-size:.92rem;display:block}.auth-field input{width:100%;color:var(--text-main);font:inherit;background:#ffffff0d;border:1px solid #ffffff24;border-radius:14px;padding:.95rem 1rem;transition:border-color .12s,box-shadow .12s,transform .12s}.auth-field input:focus{border-color:#7dd3fc94;outline:none;box-shadow:0 0 0 4px #38bdf829}.auth-hint{color:var(--text-soft);margin:.2rem 0 0;font-size:.82rem}.auth-submit{color:#f8fbff;font:inherit;cursor:pointer;background:linear-gradient(135deg,#14b8a6,#0ea5e9);border:0;border-radius:14px;padding:.95rem 1.1rem;font-weight:700;box-shadow:0 18px 36px #06b6d43d}.auth-submit:hover{transform:translateY(-1px)}.auth-submit:focus-visible{outline-offset:2px;outline:2px solid #7dd3fceb}.auth-meta{color:var(--text-soft);margin-top:1rem;font-size:.82rem}.tracker-kicker{color:var(--text-soft);text-transform:uppercase;letter-spacing:.16em;margin:0;font-size:.72rem}.tracker-overlay h1{margin:0;font-size:clamp(1.4rem,2.5vw,2.3rem);line-height:1.05}.tracker-overlay{z-index:900;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(160deg,#071226c7,#050d1c99);border:1px solid #fff3;border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex;position:absolute;top:1rem;left:1rem;right:1rem}.tracker-overlay.tracker-overlay-compact{background:0 0;border:none;border-radius:12px;width:auto;padding:.2rem;top:1rem;left:auto;right:1rem}.tracker-bus-pill{display:inline-block;position:relative}.tracker-bus-count{color:var(--text-main);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background:#060a0ee0;border:1px solid #ffffff0a;border-radius:999px;padding:.45rem .8rem;font-size:.95rem;font-weight:700;display:inline-block;box-shadow:0 6px 18px #02060cb3}.tracker-bus-hint{color:var(--text-main);opacity:0;pointer-events:none;z-index:1200;white-space:nowrap;background:#060a0ee0;border:1px solid #ffffff0a;border-radius:10px;max-width:calc(100vw - 40px);padding:.35rem .6rem;font-size:.88rem;font-weight:700;transition:opacity .22s,transform .22s;position:absolute;top:calc(100% + 10px);left:auto;right:0;transform:translateY(-6px);box-shadow:0 10px 26px #02060c99}.tracker-bus-hint:after{content:"";border-bottom:7px solid #060a0ee0;border-left:7px solid #0000;border-right:7px solid #0000;width:0;height:0;position:absolute;bottom:100%;left:auto;right:12px}.tracker-bus-hint.show{opacity:1;pointer-events:auto;transform:translateY(0)}.tracker-bus-hint.hide{opacity:0;transform:translateY(-6px)}.tracker-bus-list{z-index:1100;background:#06080cf5;border:1px solid #ffffff0a;border-radius:10px;min-width:220px;max-width:320px;max-height:320px;padding:.35rem;display:none;position:absolute;top:48px;right:0;overflow:auto;box-shadow:0 12px 30px #02060ccc}.tracker-bus-list.open{display:block}.tracker-bus-list .item{color:var(--text-main);cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;padding:.5rem .6rem;font-weight:600;display:flex}.tracker-bus-list .item:hover{background:#ffffff05}.tracker-bus-list .muted{color:var(--text-soft);font-weight:500}.tracker-bus-list .bus-item-icon{object-fit:contain;opacity:.95;width:20px;height:20px}.tracker-overlay-actions{flex-direction:column;align-items:flex-end;gap:.65rem;display:flex}.tracker-status{color:var(--text-soft);background:#ffffff17;border:1px solid #fff3;border-radius:999px;padding:.7rem .95rem;font-size:.9rem}.tracker-status[data-tone=success]{color:#ccfbf1;background:#2dd4bf1f}.tracker-status[data-tone=loading]{color:#dbeafe;background:#0ea5e91f}.tracker-status[data-tone=error]{color:#fecdd3;background:#fb718524}.tracker-status[data-tone=muted]{color:var(--text-soft);background:#ffffff0d}.tracker-location-panel{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.tracker-location-status{color:var(--text-soft);background:#ffffff12;border:1px solid #ffffff24;border-radius:999px;padding:.55rem .8rem;font-size:.82rem}.tracker-location-status[data-tone=success]{color:#dcfce7;background:#22c55e1f}.tracker-location-status[data-tone=loading]{color:#dbeafe;background:#0ea5e91f}.tracker-location-status[data-tone=error]{color:#fecdd3;background:#fb718524}.tracker-location-button{appearance:none;color:#e0f2fe;font:inherit;cursor:pointer;background:linear-gradient(160deg,#082f49eb,#0c4a6ed1);border:1px solid #7dd3fc57;border-radius:999px;padding:.6rem .95rem;font-weight:600;transition:transform .12s,border-color .12s,background .12s}.tracker-location-button:hover{border-color:#7dd3fc8c;transform:translateY(-1px)}.tracker-location-button:active{transform:translateY(0)}.tracker-location-button:focus-visible{outline-offset:2px;outline:2px solid #7dd3fceb}.tracker-location-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.tracker-location-control{border:0;box-shadow:0 10px 24px #02061747}.tracker-location-control-button{color:#1a73e8;cursor:pointer;background:#fff;border:1px solid #0f172a1f;border-radius:2px;justify-content:center;align-items:center;width:38px;height:38px;padding:0;line-height:0;display:flex;box-shadow:0 1px 3px #0f172a2e}.tracker-location-control-button svg{flex:none;width:20px;height:20px;display:block}.tracker-location-control-button:hover{background:#f8fbff}.tracker-location-control-button:active{background:#eef4ff}.tracker-location-control-button:focus-visible{outline-offset:2px;outline:2px solid #1a73e866}.tracker-location-control-button:disabled{cursor:not-allowed;opacity:.55}.tracker-map{width:100vw;height:100vh}.leaflet-container{background:#07111f}.tracker-alert-settings-btn{z-index:901;width:40px;height:40px;color:var(--text-main);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#060a0ee0;border:1px solid #ffffff0a;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1.2rem;transition:transform .12s,background .12s,border-color .12s;display:flex;position:absolute;top:1rem;right:4.5rem;box-shadow:0 6px 18px #02060cb3}.tracker-alert-controls{z-index:902;align-items:center;gap:.5rem;display:flex;position:absolute;top:1rem;right:1rem}.tracker-alert-toggle{width:44px;height:44px;color:var(--text-main);cursor:pointer;background:#060a0ee0;border:1px solid #ffffff0a;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:1.2rem;display:inline-flex;position:relative}.tracker-alert-toggle .alert-indicator{background:#ffffff2e;border:1px solid #00000040;border-radius:50%;width:10px;height:10px;transition:background .16s,transform .16s;position:absolute;top:6px;right:6px}.tracker-alert-toggle.on .alert-indicator{background:#f59e0b;transform:scale(1.05)}.tracker-alert-settings-btn.ringing{transform:scale(1.06);box-shadow:0 8px 28px #f59e0b2e}.tracker-alert-settings-btn.active{background:linear-gradient(#f59e0b1a,#0000004d);border-color:#f59e0bcc}.tracker-alert-settings-btn:hover{background:#060a0ef2;border-color:#ffffff1f;transform:scale(1.08)}.tracker-alert-settings-btn:active{transform:scale(.96)}.tracker-alert-settings-btn:focus-visible{outline-offset:2px;outline:2px solid #ffffff4d}.tracker-alert-modal{z-index:2000;justify-content:center;align-items:center;padding:1rem;display:none;position:fixed;inset:0}.tracker-alert-modal[aria-hidden=false]{display:flex}.tracker-alert-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1999;background:#00000080;display:none;position:fixed;inset:0}.tracker-alert-modal[aria-hidden=false]~.tracker-alert-modal-backdrop{display:block}.tracker-alert-modal-content{background:linear-gradient(160deg,#071226f2,#050d1ce6);border:1px solid #ffffff26;border-radius:16px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;animation:.3s ease-out slideUp;display:flex;overflow:hidden;box-shadow:0 20px 60px #000c}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tracker-alert-modal-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.tracker-alert-modal-header h2{color:var(--text-main);margin:0;font-size:1.3rem;font-weight:700}.tracker-alert-modal-close{color:var(--text-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:.25rem;font-size:1.5rem;transition:color .12s;display:flex}.tracker-alert-modal-close:hover{color:var(--text-main)}.tracker-alert-modal-body{flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem;display:flex;overflow-y:auto}.tracker-alert-modal-footer{border-top:1px solid #ffffff1a;gap:.75rem;padding:1rem 1.5rem;display:flex}.alert-setting-section{flex-direction:column;gap:.75rem;display:flex}.alert-setting-section label{color:var(--text-main);font-size:.95rem;font-weight:600}.alert-setting-section small{color:var(--text-soft);font-size:.8rem;font-weight:400}.radius-input-group{gap:.5rem;display:flex}.radius-input-group input{color:var(--text-main);background:#ffffff14;border:1px solid #ffffff1a;border-radius:8px;flex:1;padding:.6rem .75rem;font-size:.95rem}.radius-input-group input:focus{background:#ffffff1f;border-color:#ffffff40;outline:none}.radius-input-group input::placeholder{color:var(--text-soft)}.btn-apply{color:#fff;cursor:pointer;background:#3282d0cc;border:1px solid #3282d080;border-radius:8px;padding:.6rem 1rem;font-size:.9rem;font-weight:600;transition:background .12s,border-color .12s}.btn-apply:hover{background:#3282d0;border-color:#3282d0cc}.btn-apply:active{transform:translateY(1px)}.radius-display{color:#3282d0e6;font-weight:500;display:block}.tracker-bus-selection{background:#0003;border-radius:8px;flex-direction:column;gap:.5rem;max-height:300px;padding:.5rem;display:flex;overflow-y:auto}.tracker-bus-selection .loading-text{text-align:center;color:var(--text-soft);padding:1rem;font-size:.9rem}.bus-selection-item{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;transition:background .12s,border-color .12s;display:flex}.bus-selection-item:hover{background:#ffffff14;border-color:#ffffff26}.bus-selection-item input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--primary-color)}.bus-selection-item-icon{object-fit:contain;opacity:.9;width:24px;height:24px}.bus-selection-item-name{color:var(--text-main);flex:1;font-weight:500}.bus-selection-item-status{background:#ffffff1a;border-radius:4px;padding:.2rem .5rem;font-size:.8rem}.bus-selection-item-status.online{color:#a7f3d0;background:#10b98133}.bus-selection-item-status.offline{color:#fca5a5;background:#ef444433}.alert-status{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:.75rem}.alert-status small{color:var(--text-soft);font-size:.85rem;display:block}.alert-status.active{background:#22c55e1f;border-color:#22c55e4d}.alert-status.active small{color:#dcfce7}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3282d0e6,#3282d0bf);border:1px solid #3282d080;border-radius:8px;flex:1;padding:.75rem 1rem;font-size:.95rem;font-weight:600;transition:background .12s,transform .12s}.btn-primary:hover{background:linear-gradient(135deg,#3282d0,#3282d0d9)}.btn-primary:focus-visible{outline-offset:2px;outline:2px solid #3282d099}.bus-arrival-notification{color:#fff;z-index:3000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#22c55ef2,#10b981d9);border:1px solid #22c55e66;border-radius:12px;align-items:center;gap:1rem;padding:1rem 1.5rem;font-weight:600;animation:.3s ease-out slideInUp;display:flex;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)translateY(120px);box-shadow:0 12px 36px #0006}@keyframes slideInUp{0%{opacity:0;transform:translate(-50%)translateY(120px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.bus-arrival-notification.show{transform:translate(-50%)translateY(0)}.bus-arrival-notification .notification-icon{flex-shrink:0;font-size:1.5rem}.bus-arrival-notification .notification-text{flex:1}.bus-arrival-notification .notification-close{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:1.2rem;transition:opacity .12s;display:flex}.bus-arrival-notification .notification-close:hover{opacity:1}@media (width<=720px){.tracker-overlay{flex-direction:column;align-items:flex-start;top:.75rem;left:.75rem;right:.75rem}.tracker-overlay-actions,.tracker-location-panel{justify-content:flex-start;align-items:flex-start;width:100%}.tracker-location-button{width:100%}}.background{z-index:-1;background-color:#030712;background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;width:100%;height:100%;position:fixed;top:0;left:0}.background:before{content:"";z-index:1;background:linear-gradient(90deg,#2d3446 0%,#2d344600 100%);position:absolute;inset:0}.container{justify-content:flex-start;align-items:center;height:100vh;padding:0 4rem 0 calc(4rem + 2in);display:flex}.form-card{-webkit-backdrop-filter:none;backdrop-filter:none;width:100%;max-width:420px;box-shadow:none;background:0 0;border:none;border-radius:0;padding:3rem 0;transform:translateY(-1.5rem)}.form-header{margin-bottom:2rem}.page-logo{align-items:center;margin-bottom:1.25rem;display:flex}.page-logo img{object-fit:contain;filter:drop-shadow(0 10px 24px #0000002e);width:10rem;height:auto;display:block}.start-text{text-transform:uppercase;letter-spacing:1px;color:#fff9;margin-bottom:.5rem;font-size:.75rem}.form-header h1{color:#fff;margin-bottom:1rem;font-size:2.2rem;font-weight:600}.login-link{color:#ffffffb3;font-size:.9rem}.login-link a{color:#08f;font-weight:500;text-decoration:none;transition:color .3s}.login-link a:hover{color:#06c}form{flex-direction:column;gap:1.2rem;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group.full-width{grid-column:1/-1}.form-group label{color:#ffffffb3;font-size:.85rem;font-weight:500}.input-wrapper{align-items:center;display:flex;position:relative}.input-wrapper input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;width:100%;padding:.75rem 2.5rem .75rem 1rem;font-size:.95rem;transition:all .3s}.input-wrapper input::placeholder{color:#ffffff80}.input-wrapper input:focus{background:#ffffff14;border-color:#0088ff80;outline:none;box-shadow:0 0 12px #08f3}.copy-icon,.toggle-password{cursor:pointer;-webkit-user-select:none;user-select:none;opacity:.6;transition:opacity .3s;position:absolute;right:.75rem}.copy-icon:hover,.toggle-password:hover{opacity:1}.password-wrapper{position:relative}.form-actions{gap:1rem;margin-top:1rem;display:flex}.btn{cursor:pointer;border:none;border-radius:24px;flex:1;padding:.8rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .3s}.btn-secondary{color:#fffc;background:#ffffff1a;border:1px solid #fff3}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d}.btn-primary{color:#fff;background:linear-gradient(135deg,#08f 0%,#06c 100%);border:none}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0088ff4d}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.footer{text-align:center;margin-top:1rem}.footer p{color:#ffffffbf;font-size:.85rem}.footer a{color:#fff;font-weight:600;text-decoration:none}.footer a:hover{color:#08f}.bus-arrival-alarm{z-index:99999;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bus-arrival-alarm.show{pointer-events:auto}.bus-arrival-alarm .alarm-backdrop{opacity:0;background:#000000bf;transition:opacity .3s;position:absolute;inset:0}.bus-arrival-alarm.show .alarm-backdrop{opacity:1}.bus-arrival-alarm .alarm-modal{text-align:center;opacity:0;background:linear-gradient(135deg,#1f2937 0%,#111827 100%);border:2px solid #3b82f6;border-radius:1rem;width:90%;max-width:500px;padding:3rem 2rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .3s;position:relative;transform:scale(.85)translateY(20px);box-shadow:0 20px 60px #000c,0 0 40px #3b82f64d}.bus-arrival-alarm.show .alarm-modal{opacity:1;transform:scale(1)translateY(0)}.bus-arrival-alarm .alarm-icon{margin-bottom:1rem;font-size:5rem;animation:.6s ease-in-out infinite bounce}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.bus-arrival-alarm .alarm-title{color:#60a5fa;margin-bottom:.5rem;font-size:2rem;font-weight:700}.bus-arrival-alarm .alarm-message{color:#e5e7eb;margin-bottom:2rem;font-size:1.125rem;line-height:1.5}.bus-arrival-alarm .alarm-dismiss-btn{appearance:none;color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);border:none;border-radius:.5rem;width:100%;max-width:300px;margin:0 auto;padding:1rem 2rem;font-size:1.125rem;font-weight:600;transition:transform .12s,box-shadow .12s,background .12s;box-shadow:0 10px 25px #ef44444d}.bus-arrival-alarm .alarm-dismiss-btn:hover{background:linear-gradient(135deg,#f87171 0%,#ef4444 100%);transform:translateY(-2px);box-shadow:0 15px 35px #ef444466}.bus-arrival-alarm .alarm-dismiss-btn:active{transform:translateY(0)}.bus-arrival-alarm .alarm-dismiss-btn:focus-visible{outline-offset:2px;outline:2px solid #ef4444cc}@media (width<=768px){.container{justify-content:center;padding:0 1rem}.form-card{max-width:100%;padding:2rem;transform:translateY(-.75rem)}.form-row{grid-template-columns:1fr}.form-header h1{font-size:1.8rem}.page-logo{margin-bottom:1rem}.page-logo img{width:8.5rem}.form-actions{flex-direction:column}.footer p{font-size:.8rem}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
