@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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}}}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.filter{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,ease);transition-duration:var(--tw-duration,0s)}:root{--bg-primary:#0a0f1e;--bg-secondary:#0f1629;--bg-card:#131d35;--bg-card-hover:#1a2644;--bg-glass:#131d35cc;--border:#6378b333;--border-bright:#6378b366;--text-primary:#e8edf8;--text-secondary:#8b97b8;--text-muted:#4d5a7a;--accent-blue:#3b82f6;--accent-blue-glow:#3b82f64d;--accent-cyan:#06b6d4;--accent-green:#10b981;--accent-green-glow:#10b9814d;--accent-orange:#f59e0b;--accent-red:#ef4444;--accent-purple:#8b5cf6;--gradient-primary:linear-gradient(135deg, #1e3a8a 0%, #1e40af 50%, #2563eb 100%);--gradient-hero:linear-gradient(135deg, #0a0f1e 0%, #0f1629 50%, #131d35 100%);--shadow-glow:0 0 30px #3b82f626;--shadow-card:0 4px 24px #0006}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-primary);height:100%;color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.glass-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:16px;transition:all .3s}.glass-card:hover{border-color:var(--border-bright);box-shadow:var(--shadow-glow), var(--shadow-card);transform:translateY(-2px)}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:1.5rem;transition:all .3s;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--gradient-primary);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.stat-card:hover:before{opacity:1}.stat-card:hover{border-color:var(--border-bright);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 12px #2563eb4d}.btn-primary:hover{background:linear-gradient(135deg,#3b82f6,#2563eb);transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border);cursor:pointer;border-radius:10px;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-secondary:hover{border-color:var(--border-bright);background:var(--bg-card-hover)}.btn-danger{color:#fca5a5;cursor:pointer;background:#ef444426;border:1px solid #ef44444d;border-radius:10px;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-danger:hover{background:#ef444440;border-color:#ef444480}.input-field{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);border-radius:10px;outline:none;width:100%;padding:.625rem .875rem;font-family:inherit;font-size:.875rem;transition:all .2s}.input-field:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-glow)}.input-field::placeholder{color:var(--text-muted)}.input-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.375rem;font-size:.75rem;font-weight:600;display:block}.badge{letter-spacing:.02em;border-radius:999px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-moving{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.badge-waiting{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.badge-sleeping{color:#a5b4fc;background:#6366f126;border:1px solid #6366f14d}.badge-offline{color:#9ca3af;background:#6b728026;border:1px solid #6b72804d}@keyframes pulse-green{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 6px #10b98100}}.pulse-live{animation:2s infinite pulse-green}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);z-index:50;flex-direction:column;width:260px;min-height:100vh;transition:transform .3s;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-nav-item{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:.75rem;width:100%;margin:.125rem 0;padding:.75rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.sidebar-nav-item:hover{background:var(--bg-card);color:var(--text-primary)}.sidebar-nav-item.active{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f633}.data-table{border-collapse:collapse;width:100%}.data-table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);white-space:nowrap;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.data-table td{color:var(--text-primary);vertical-align:middle;border-bottom:1px solid #6378b31a;padding:.875rem 1rem;font-size:.875rem}.data-table tr:hover td{background:#3b82f60a}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;width:100%;max-width:480px;padding:1.5rem;animation:.3s slideUp;box-shadow:0 25px 50px #00000080}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-red{0%,to{opacity:1}50%{opacity:.5}}.notif-dot{background:var(--accent-red);border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse-red}.main-content{--sidebar-width:260px;margin-left:var(--sidebar-width);background:var(--bg-primary);flex:1;min-width:0;min-height:100vh;padding:1.5rem}.page-header{margin-bottom:1.5rem}.page-title{color:var(--text-primary);letter-spacing:-.025em;font-size:1.5rem;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:.25rem;font-size:.875rem}.gradient-text{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;background-clip:text}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--border);border-top-color:var(--accent-blue);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.map-container{border:1px solid var(--border);border-radius:16px;overflow:hidden}.timeline-item{border-bottom:1px solid #6378b31a;gap:.75rem;padding:.75rem 0;display:flex}.timeline-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px}.select-field{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);cursor:pointer;border-radius:10px;outline:none;padding:.625rem .875rem;font-family:inherit;font-size:.875rem;transition:border-color .2s}.select-field:focus{border-color:var(--accent-blue)}.select-field option{background:var(--bg-card)}.chip{color:#93c5fd;background:#3b82f61a;border:1px solid #3b82f633;border-radius:6px;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.tooltip{position:relative}.tooltip-text{background:var(--bg-card);color:var(--text-primary);white-space:nowrap;border:1px solid var(--border);pointer-events:none;opacity:0;z-index:100;border-radius:6px;padding:.375rem .625rem;font-size:.75rem;transition:opacity .2s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip:hover .tooltip-text{opacity:1}.dashboard-main-grid{grid-template-columns:1fr 340px;gap:1.5rem;display:grid}.dashboard-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.hide-mobile{display:block}.sidebar-user-avatar{border-top:1px solid var(--border);align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}@media (max-width:1024px) and (min-width:769px){.sidebar{z-index:200;transition:transform .3s;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0!important}.mobile-menu-toggle{display:flex!important}.mobile-backdrop{display:block!important}}@media (max-width:768px){.sidebar{visibility:hidden!important;pointer-events:none!important;opacity:0!important;display:none!important}.main-content{--sidebar-width:0px;padding:.875rem!important;padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;box-sizing:border-box!important;margin-left:0!important;overflow-x:hidden!important}.page-header{flex-direction:column!important;align-items:flex-start!important;gap:.5rem!important;padding-top:.25rem!important}.page-header>div:last-child,.page-header>button{width:100%}.bottom-nav{display:flex!important}.dashboard-main-grid{grid-template-columns:1fr!important}.dashboard-table-wrap{margin:0 -.875rem;padding:0 .875rem}.hide-mobile{display:none!important}.stat-card{padding:.875rem!important}.glass-card{border-radius:12px!important}.dashboard-map-height{height:280px!important}.stat-grid-mobile{grid-template-columns:repeat(2,1fr)!important;gap:.625rem!important}.stat-grid-mobile .stat-card:last-child:nth-child(odd){grid-column:1/-1}.bottom-nav-item.active{color:#60a5fa!important;background:0 0!important}}.bottom-nav{z-index:500;border-top:1px solid var(--border);width:100%;padding:0 0 env(safe-area-inset-bottom,0px);-webkit-backdrop-filter:blur(24px);background:#0a0f1ef7;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0006}.bottom-nav-items{justify-content:space-around;align-items:stretch;width:100%;display:flex}.bottom-nav-item{cursor:pointer;color:var(--text-muted);-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.2rem;min-height:56px;padding:.5rem .25rem;font-family:inherit;font-size:.6rem;font-weight:500;text-decoration:none;transition:color .15s,transform .15s;display:flex;position:relative}.bottom-nav-item:active{transform:scale(.92)}.bottom-nav-item.active{color:#60a5fa}.bottom-nav-item.active svg{filter:drop-shadow(0 0 6px #60a5fa80)}.bottom-nav-item.logout{color:#f87171}.bottom-nav-item.logout:active{color:#ef4444}.bottom-nav-badge{color:#fff;text-align:center;pointer-events:none;background:#ef4444;border-radius:999px;min-width:16px;padding:0 .3rem;font-size:.6rem;font-weight:700;line-height:1.6;position:absolute;top:6px;right:calc(50% - 22px)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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}
