@charset "UTF-8";.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out,-o-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.marker-cluster-small{background-color:#d6ecf7b3}.marker-cluster-small div{background-color:#9bcbe8f2}.marker-cluster-medium{background-color:#fbeac2b3}.marker-cluster-medium div{background-color:#f2ce7ef2}.marker-cluster-large{background-color:#f8d3dcb3}.marker-cluster-large div{background-color:#eba9b8f2}.marker-cluster div{color:#334155;font-weight:700}.marker-cluster div span{color:#334155}.track-live-marker{position:relative}.track-live-veh{position:relative;display:block}.track-live-pulse{position:absolute;left:18px;top:18px;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#2563eb73;pointer-events:none;animation:trackLivePulse 1.6s ease-out infinite}@keyframes trackLivePulse{0%{transform:scale(.5);opacity:.8}70%{opacity:.15}to{transform:scale(3.2);opacity:0}}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.375em;border-bottom-right-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-bottom:none;border-top:1px solid #aeaeae;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{background-color:transparent;border:1px solid #aeaeae;border-radius:.3rem;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:auto 1px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}h2.react-datepicker__current-month{padding:0;margin:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.5em;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:5em;margin:2px}.react-datepicker__month{margin:.5em;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:5em;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.375em;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.375em}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + 1.0625em);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:2.125em;line-height:2.125em;text-align:center;margin:.208em}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{background-color:#1d5d90;color:#fff}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.625em;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__children-container{width:17.25em;margin:.5em;padding-right:.25em;padding-left:.25em;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}.react-datepicker-popper-offset{margin-top:-.7em}.rr-grid tbody tr{cursor:default}.rr-grid tbody tr.rr-row--selected>td,.rr-grid tbody tr.rr-row--selected:hover>td{background:var(--accent-soft);color:var(--text-primary)}.rr-grid tbody tr.rr-row--selected>td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.rr-th{display:flex;align-items:flex-end;gap:2px;min-width:0}.rr-th-label{flex:1 1 auto;min-width:0}.rr-sort{display:inline-flex;align-items:center;gap:3px;padding:0;border:none;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:inherit;cursor:pointer}.rr-resize{position:absolute;top:0;right:0;bottom:0;width:6px;cursor:col-resize;-webkit-user-select:none;user-select:none}.rr-resize:hover,.rr-resize:active{background:var(--accent);opacity:.5}.rl-cat-activity{--rl-solid: #3b82f6;--rl-ink: #93b4ff;--rl-tint: rgba(59, 130, 246, .2)}.rl-cat-tracking{--rl-solid: #14b8a6;--rl-ink: #5eead4;--rl-tint: rgba(20, 184, 166, .2)}.rl-cat-fuel{--rl-solid: #f97316;--rl-ink: #fdba74;--rl-tint: rgba(249, 115, 22, .2)}.rl-cat-maint{--rl-solid: #a855f7;--rl-ink: #d8b4fe;--rl-tint: rgba(168, 85, 247, .22)}.rl-cat-star{--rl-solid: #f59e0b;--rl-ink: #fcd34d;--rl-tint: rgba(245, 158, 11, .2)}.rl-cat-accent{--rl-solid: var(--accent);--rl-ink: var(--accent);--rl-tint: var(--accent-soft)}[data-theme=light] .rl-cat-activity{--rl-solid: #2563eb;--rl-ink: #1d4ed8;--rl-tint: rgba(37, 99, 235, .1)}[data-theme=light] .rl-cat-tracking{--rl-solid: #0d9488;--rl-ink: #0f766e;--rl-tint: rgba(13, 148, 136, .11)}[data-theme=light] .rl-cat-fuel{--rl-solid: #ea580c;--rl-ink: #c2410c;--rl-tint: rgba(234, 88, 12, .1)}[data-theme=light] .rl-cat-maint{--rl-solid: #9333ea;--rl-ink: #7e22ce;--rl-tint: rgba(147, 51, 234, .1)}[data-theme=light] .rl-cat-star{--rl-solid: #f59e0b;--rl-ink: #b45309;--rl-tint: rgba(245, 158, 11, .14)}[data-theme=light] .rl-cat-accent{--rl-ink: #087f8b}.rl-page,.rw-page{display:flex;flex-direction:column;gap:14px}.rw-page{gap:10px}.rl-page mark{background:#f59e0b4d;color:inherit;border-radius:3px;padding:0 1px}.rl-filters.fs-filters{margin:0}.rl-search-field{flex:1 1 420px;min-width:0}.rl-search-wrap{position:relative}.rl-search{height:36px;padding:0 6px 0 12px;color:var(--text-muted)}.rl-search:focus-within{color:var(--accent)}.rl-search input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--text-primary);font:inherit;font-size:.85rem}.rl-search input::placeholder{color:var(--text-faint)}.rl-count{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.rl-kbd{font:inherit;font-size:.7rem;padding:0 6px;margin-right:6px;border-radius:5px;border:1px solid var(--border-strong);color:var(--text-muted)}.rl-clear{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 9px;border:0;border-radius:7px;background:var(--bg-elevated);color:var(--text-secondary);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer}.rl-body{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px;align-items:start}.rl-rail{position:sticky;top:12px;display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:12px;background:var(--bg-surface);border:1px solid var(--border)}.rl-rail-cap{padding:12px 10px 4px;font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.rl-rail-btn{display:flex;align-items:center;gap:9px;padding:7px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font:inherit;font-size:.86rem;text-align:left;cursor:pointer}.rl-rail-btn svg{color:var(--rl-solid);flex-shrink:0}.rl-rail-btn:hover{background:var(--bg-elevated);color:var(--text-primary)}.rl-rail-btn[aria-pressed=true]{background:var(--rl-tint);color:var(--rl-ink);font-weight:600}.rl-rail-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-rail-n{font-size:.74rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.rl-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--rl-solid)}.rl-list{min-width:0;border-radius:12px;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border);box-shadow:0 1px 2px #0f172a0d}.rl-list>.rl-empty{margin:14px}.rl-group-head{display:flex;align-items:center;gap:8px;padding:9px 14px 7px;background:var(--grid-head-bg);border-bottom:1px solid var(--border);border-top:1px solid var(--border)}.rl-group:first-child .rl-group-head{border-top:0}.rl-group-head h3{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-ink)}.rl-group-n{font-size:.72rem;color:var(--text-muted)}.rl-row{position:relative;display:grid;align-items:center;gap:12px;height:42px;padding:0 8px 0 14px;grid-template-columns:26px minmax(150px,230px) minmax(0,1fr) auto 28px 24px;border-bottom:1px solid var(--border)}.rl-group>.rl-row:last-child{border-bottom:0}.rl-row:hover{background:var(--accent-soft)}.rl-row .rl-row-ico{width:26px;height:26px;border-radius:0;background:none;color:var(--rl-solid)}.rl-row-name{margin:0;font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-row-desc{margin:0;min-width:0;font-size:.82rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-row-scope{font-size:.74rem;color:var(--text-faint);white-space:nowrap}.rl-row-recent{grid-template-columns:26px minmax(150px,230px) minmax(0,1fr) auto}.rl-tile{width:42px;height:42px;border-radius:12px;flex-shrink:0;display:grid;place-items:center;background:var(--rl-tint);color:var(--rl-solid)}.rl-tile-sm{width:32px;height:32px;border-radius:9px}.rl-star{position:relative;z-index:2;width:28px;height:28px;flex-shrink:0;border:0;border-radius:7px;background:transparent;color:var(--text-faint);display:grid;place-items:center;cursor:pointer}.rl-star:hover{background:var(--bg-elevated);color:#f59e0b}.rl-star[aria-pressed=true]{color:#f59e0b}.rl-star[aria-pressed=true] svg{fill:#f59e0b}.rl-tag{font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--rl-tint);color:var(--rl-ink);white-space:nowrap}.rl-open{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;background:transparent;color:var(--text-faint);cursor:pointer}.rl-open:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1}.rl-open:focus-visible{outline:none}.rl-open:focus-visible:after{outline:2px solid var(--accent);outline-offset:-2px}.rl-row:hover .rl-open{color:var(--accent)}.rl-rerun{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border:1px solid var(--border-strong);border-radius:7px;background:var(--bg-surface);color:var(--accent);font:inherit;font-size:.76rem;font-weight:600;cursor:pointer}.rl-rerun:hover{background:var(--accent-soft)}@media (max-width: 900px){.rl-body{grid-template-columns:minmax(0,1fr)}.rl-rail{position:static;flex-direction:row;flex-wrap:wrap}.rl-rail-cap{display:none}.rl-row{grid-template-columns:26px minmax(0,1fr) 28px 24px}.rl-row-desc,.rl-row-scope{display:none}.rl-row-recent{grid-template-columns:26px minmax(0,1fr) auto}}.rl-suggest{position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;max-height:360px;overflow-y:auto;border-radius:12px;background:var(--bg-surface);border:1px solid var(--border-strong);box-shadow:0 16px 36px #0f172a29}.rl-sug{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;cursor:pointer;color:var(--text-primary);font-size:.88rem}.rl-sug.active{background:var(--accent-soft)}.rl-sug-ico{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;flex-shrink:0;background:var(--rl-tint);color:var(--rl-solid)}.rl-sug-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.rl-sug-more{padding:6px 10px 2px;font-size:.76rem;color:var(--text-muted)}.rl-empty{text-align:center;padding:44px 16px;border:1.5px dashed var(--border-strong);border-radius:16px;color:var(--text-muted)}.rl-empty h3{margin:10px 0 4px;color:var(--text-primary)}.rl-empty p{margin:0 0 14px}.rl-empty-ico{width:52px;height:52px;margin:0 auto;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.rl-btn-ghost{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:9px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.rl-btn-ghost:hover{background:var(--bg-elevated)}.rw-head{flex-wrap:wrap}.rw-back{flex-shrink:0}.rw-head-desc{flex:1 1 200px;min-width:0;margin:0;color:var(--text-muted);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rw-switch{position:relative;display:inline-flex}.rw-star[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.rw-starred{fill:#f59e0b;color:#f59e0b}.rf-bar.fs-filters{margin:0;gap:12px 14px}.rf-field{min-width:0}.rf-field--veh{flex:0 1 220px;min-width:170px}.rf-ctl{height:36px;display:flex;align-items:center;gap:7px;padding:0 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-muted);transition:border-color .15s,box-shadow .15s}.rf-ctl:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rf-ctl input{flex:1;min-width:0;border:0;outline:none;background:transparent;color:var(--text-primary);font:inherit;font-size:.82rem}.rf-veh{position:relative;min-width:150px}.rf-x{border:0;background:transparent;color:var(--text-faint);display:grid;place-items:center;cursor:pointer;padding:2px}.rf-daterange .ft-daterange-trigger{height:36px;box-sizing:border-box}.rf-daterange.rf-bad .ft-daterange-trigger,.rf-field.rf-bad .rf-ctl,.rf-field.rf-bad .rd-fg{border-color:#ea580c}.rd-fg.rf-extra{height:36px;box-sizing:border-box}.rf-extra input{width:80px}.rf-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rf-problem-row{margin-top:8px}.rf-problem{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:999px;white-space:nowrap;font-size:.74rem;font-weight:600;color:#c2410c;background:#ea580c1f}.rf-bar .btn.rf-run{height:36px;padding:0 16px;gap:7px;font-weight:700;background:var(--accent);border-color:var(--accent);color:var(--accent-mark-text)}.rf-bar .btn.rf-run:hover:not(:disabled){filter:brightness(1.06)}.rr-wrap{display:flex;flex-direction:column;border-radius:14px;overflow:hidden;border:1px solid var(--border);background:var(--bg-surface)}.rr-tabs{padding:0 12px}.rr-tabs .rpt-tab{padding-top:6px;padding-bottom:6px}.rr-tab-text{display:flex;flex-direction:column;gap:1px;line-height:1.2}.rr-tab-meta{display:inline-flex;align-items:center;gap:5px;color:var(--text-faint);font-weight:500;font-size:.68rem;white-space:nowrap}.rr-tab-dot{font-weight:700}.rr-tab-name{display:inline-flex;align-items:baseline;gap:7px}.rr-tab-range{color:var(--text-faint);font-weight:500;font-size:.74rem}.rr-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:52px 16px;color:var(--text-muted);text-align:center}.rr-empty h3{margin:6px 0 0;color:var(--text-primary);font-size:1rem}.rr-empty p{margin:0;font-size:.86rem}.rr-body{display:flex;flex-direction:column;min-height:0}.rr-summary{display:flex;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border-strong);overflow-x:auto}.rr-kpi{display:flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:88px;padding:5px 14px;border-radius:8px;background:var(--bg-elevated);border:1px solid var(--border);border-top:3px solid}.rr-kpi-label{font-size:.62rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.rr-kpi-value{font-size:.95rem;font-weight:700;margin-top:2px}.rr-toolbar{padding:8px 14px}.rr-count{color:var(--text-muted);font-size:.8rem;font-weight:500}.rr-search{margin-left:auto;width:220px}.rr-table{min-height:220px}.rr-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-family:IBM Plex Sans Condensed,Arial Narrow,Inter,system-ui,sans-serif;font-weight:300;font-size:12.5px;line-height:1.35;color:var(--text-primary);font-variant-numeric:tabular-nums}.rr-grid thead th{position:relative;padding:7px 8px;text-align:left;vertical-align:middle;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;font-weight:600;font-size:.64rem;line-height:1.25;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--grid-head-bg);border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rr-grid thead th[aria-sort=ascending],.rr-grid thead th[aria-sort=descending]{color:var(--accent)}.rr-grid td{height:28px;padding:4px 8px;vertical-align:middle;border-bottom:1px solid var(--border);background:var(--bg-surface);white-space:normal;overflow-wrap:anywhere}.rr-grid tbody tr:hover>td{background:var(--accent-soft)}.rr-grid td:first-child{font-weight:500}.rr-grid .rr-k-num,.rr-grid .rr-k-duration,.rr-grid .rr-num{text-align:right;white-space:nowrap}.rr-grid .rr-k-datetime,.rr-grid .rr-k-date,.rr-grid .rr-nw{white-space:nowrap;overflow-wrap:normal}.rr-grid td.rr-k-num,.rr-grid td.rr-k-duration,.rr-grid td.rr-k-datetime,.rr-grid td.rr-k-date,.rr-grid td.rr-k-name,.rr-grid td.rr-k-text,.rr-grid td.rr-num,.rr-grid td.rr-nw{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rr-grid .rr-k-action{text-align:center;padding-top:1px;padding-bottom:1px}.rr-grid .rr-over{color:var(--danger, #dc2626);font-weight:600}.rr-grid .rr-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-secondary)}.rr-grid .rpt-empty-cell{text-align:center;padding:28px 8px;color:var(--text-muted)}.rr-loading{display:flex;justify-content:center;padding:56px;color:var(--text-muted);font-size:.9rem}.rr-error{display:inline-block;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:16px 24px;color:#dc2626;font-size:.88rem;font-weight:500;white-space:normal}.rr-prepare-error{color:#dc2626;font-size:.8rem;font-weight:500}@media (max-width: 640px){.rl-count{display:none}.rf-field,.rf-field--veh{flex:1 1 100%}.rf-daterange .ft-daterange-trigger{max-width:100%;overflow-x:auto}.rf-actions{width:100%;margin-left:0}.rf-bar .btn.rf-run{flex:1;justify-content:center}.rr-search{width:100%;margin-left:0}}.rr-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:6px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;vertical-align:middle}.rr-expand-btn:hover{background:var(--bg-elevated);color:var(--accent)}.rr-parent-open>td{background:var(--accent-soft);font-weight:600}.rr-child-row>td{background:var(--bg-elevated);font-size:.92em}.rr-child-index{padding-left:34px!important;color:var(--text-muted)}.rr-child-msg>td{background:var(--bg-elevated);color:var(--text-muted);padding-left:34px!important}.rr-replay-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--accent);cursor:pointer}.rr-replay-btn:hover{background:var(--accent-soft)}.rpt-vdrop-check{display:flex;align-items:center;gap:8px}.rpt-vdrop-box{display:inline-grid;place-items:center;flex:none;width:14px;height:14px;border:1.5px solid var(--border-strong);border-radius:3px;background:var(--bg-surface);color:#fff}.rpt-vdrop-check.active .rpt-vdrop-box{background:var(--accent);border-color:var(--accent)}.ais{--ais-company: #8b5cf6;--ais-platform: #3b82f6;--ais-builtin: #94a3b8;--ais-red: #ef4444;--ais-green: #16a34a;--ais-amber: #d97706;--ais-blue: #2563eb;--ais-teal: #0d9488;--ais-cyan: #0891b2;--ais-violet: #7c3aed;--ais-slate: #475569;--ais-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 4px 14px rgba(15, 23, 42, .06);display:flex;flex-direction:column;gap:16px;padding-bottom:96px}.ais-chip{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:.68rem;font-weight:700;padding:3px 9px;border-radius:999px}.ais-chip i{width:7px;height:7px;border-radius:50%;display:inline-block}.ais-src-company{color:var(--ais-company);background:color-mix(in srgb,var(--ais-company) 14%,transparent)}.ais-src-company i{background:var(--ais-company)}.ais-src-platform{color:var(--ais-platform);background:color-mix(in srgb,var(--ais-platform) 14%,transparent)}.ais-src-platform i{background:var(--ais-platform)}.ais-src-builtin{color:var(--text-muted);background:color-mix(in srgb,var(--ais-builtin) 16%,transparent)}.ais-src-builtin i{background:var(--ais-builtin)}.ais-chip-unsaved{color:#92400e;background:#fef3c7}.ais-scope{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:14px;padding:14px 16px;box-shadow:var(--ais-shadow)}.ais-scope-l{display:flex;gap:14px;align-items:center;flex-wrap:wrap;min-width:0}.ais-scope-label{display:block;font-size:.68rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.ais-scope-name{font-weight:700;font-size:.95rem;color:var(--text-primary)}.ais-scope-note{margin:0;font-size:.8rem;color:var(--text-muted);max-width:440px}.ais-legend{display:flex;gap:8px;flex-wrap:wrap}.ais-select{border:1px solid var(--border-strong);border-radius:10px;padding:8px 12px;min-width:220px;max-width:100%;background:var(--bg-input);color:var(--text-input);font-weight:600;font:inherit}.ais-note{display:flex;gap:8px;align-items:center;padding:10px 14px;border-radius:12px;font-size:.82rem;color:var(--text-secondary);background:color-mix(in srgb,var(--ais-builtin) 12%,transparent);border:1px solid var(--border)}.ais-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.ais-card{--tone: var(--ais-slate);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:16px;box-shadow:var(--ais-shadow);overflow:hidden;display:flex;flex-direction:column;min-width:0}.ais-card.amber{--tone: var(--ais-amber)}.ais-card.blue{--tone: var(--ais-blue)}.ais-card.teal{--tone: var(--ais-teal)}.ais-card.cyan{--tone: var(--ais-cyan)}.ais-card.violet{--tone: var(--ais-violet)}.ais-card.rose{--tone: #e11d48}.ais-full{grid-column:1 / -1}.ais-card-h{display:flex;gap:12px;align-items:flex-start;padding:16px 18px 14px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--tone) 12%,transparent),transparent)}.ais-card-ico{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:none;background:var(--tone);color:#fff}.ais-card-h h2{margin:0;font-size:.98rem;color:var(--text-primary);display:flex;gap:6px;align-items:center;flex-wrap:wrap}.ais-card-h p{margin:3px 0 0;font-size:.78rem;color:var(--text-muted);line-height:1.45}.ais-rows{padding:4px 18px 8px}.ais-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;padding:13px 0;border-bottom:1px dashed var(--border-strong)}.ais-row:last-child{border-bottom:0}.ais-lbl{font-weight:650;font-size:.88rem;color:var(--text-primary);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ais-help{font-size:.76rem;color:var(--text-muted);line-height:1.45;margin-top:3px}.ais-meta{font-size:.7rem;color:var(--text-faint);margin-top:6px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ais-reset{border:0;background:none;padding:0;cursor:pointer;font:inherit;font-weight:700;color:var(--ais-company)}.ais-reset:hover{text-decoration:underline}.ais-err{font-size:.72rem;color:var(--ais-red);font-weight:600;margin-top:4px}.ais-ctl{display:flex;flex-direction:column;gap:6px}.ais-num{display:flex;align-items:center;border:1.5px solid var(--border-strong);border-radius:10px;overflow:hidden;background:var(--bg-input)}.ais-num:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ais-num input{border:0;outline:0;width:100%;min-width:0;padding:8px 10px;font:inherit;font-weight:700;font-size:.95rem;background:transparent;color:var(--text-input);text-align:right}.ais-num span{padding:0 10px;font-size:.7rem;color:var(--text-muted);align-self:stretch;display:flex;align-items:center;white-space:nowrap;border-left:1px solid var(--border);background:color-mix(in srgb,var(--ais-builtin) 8%,transparent)}.ais-row.changed .ais-num{border-color:var(--ais-company)}.ais-row.invalid .ais-num{border-color:var(--ais-red)}.ais-ctl input[type=range]{width:100%;accent-color:var(--tone)}.ais-ctl input:disabled{opacity:.7;cursor:not-allowed}.ais-preview{margin:0 18px 16px;padding:12px 14px;border-radius:12px;font-size:.8rem;color:var(--text-secondary);background:color-mix(in srgb,var(--tone) 7%,transparent);border:1px solid var(--border);display:flex;gap:10px;align-items:center}.ais-preview b{color:var(--text-primary)}.ais-preview.stack{flex-direction:column;align-items:stretch}.ais-bar{position:relative;height:10px;border-radius:999px;background:linear-gradient(90deg,#16a34a,#eab308 50%,#dc2626);margin:6px 0 4px}.ais-bar i{position:absolute;top:-4px;width:3px;height:18px;background:var(--text-primary);border-radius:2px;transform:translate(-1px)}.ais-bar-scale{display:flex;justify-content:space-between;font-size:.68rem;color:var(--text-faint)}.ais-timeline{display:flex;height:26px;border-radius:8px;overflow:hidden;font-size:.68rem;font-weight:700;color:#fff;flex:1;min-width:0}.ais-timeline div{display:flex;align-items:center;justify-content:center;white-space:nowrap;overflow:hidden;padding:0 6px}.ais-body{padding:14px 18px 6px}.ais-inline{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:14px 18px 18px}.ais-caption{font-size:.66rem;font-weight:800;letter-spacing:.08em;color:var(--text-faint);text-transform:uppercase;margin-bottom:6px}.ais-recips{display:flex;flex-wrap:wrap;gap:6px;border:1.5px solid var(--border-strong);border-radius:10px;padding:6px;background:var(--bg-input)}.ais-recips:focus-within{border-color:var(--accent)}.ais-recip{display:inline-flex;gap:6px;align-items:center;border-radius:999px;padding:3px 4px 3px 10px;font-size:.76rem;font-weight:600;color:var(--ais-violet);background:color-mix(in srgb,var(--ais-violet) 14%,transparent);max-width:100%;overflow-wrap:anywhere}.ais-recip button{border:0;background:none;color:inherit;cursor:pointer;padding:0 4px;font-size:.85rem;line-height:1}.ais-recips input{border:0;outline:0;flex:1;min-width:160px;background:transparent;color:var(--text-input);padding:4px;font:inherit}.ais-toggle{position:relative;width:40px;height:22px;border-radius:999px;background:var(--ais-green);border:0;cursor:pointer;flex:none;padding:0}.ais-toggle:after{content:"";position:absolute;top:2px;left:20px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .15s}.ais-toggle[aria-checked=false]{background:var(--ais-builtin)}.ais-toggle[aria-checked=false]:after{left:2px}.ais-btn{border:0;border-radius:10px;padding:9px 16px;font:inherit;font-weight:700;cursor:pointer}.ais-btn:disabled{opacity:.5;cursor:not-allowed}.ais-btn.primary{background:var(--ais-violet);color:#fff}.ais-btn.ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border-strong)}.ais-spacer{flex:1}.ais-ok{font-size:.8rem;color:var(--ais-green);font-weight:600}.ais-fail{font-size:.8rem;color:var(--ais-red);font-weight:600}.ais-muted{font-size:.8rem;color:var(--text-muted)}details.ais-card>summary{list-style:none;cursor:pointer;border-bottom:0}details.ais-card>summary::-webkit-details-marker{display:none}details.ais-card[open]>summary{border-bottom:1px solid var(--border)}.ais-chev{margin-left:auto;color:var(--text-muted);transition:transform .15s;flex:none}details.ais-card[open] .ais-chev{transform:rotate(180deg)}.ais-weights{padding:14px 18px 18px;display:grid;gap:10px}.ais-w{display:grid;grid-template-columns:170px minmax(0,1fr) 46px;gap:10px;align-items:center;font-size:.8rem;color:var(--text-secondary)}.ais-w b{color:var(--text-primary);text-align:right}.ais-track{height:8px;border-radius:999px;overflow:hidden;border:1px solid var(--border);background:color-mix(in srgb,var(--ais-builtin) 10%,transparent)}.ais-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#7c3aed,#ec4899)}.ais-savebar{position:sticky;bottom:12px;z-index:20;display:flex;justify-content:center;pointer-events:none}.ais-savebar-in{pointer-events:auto;display:flex;align-items:center;gap:14px;flex-wrap:wrap;width:100%;max-width:760px;background:#0f172a;color:#fff;border-radius:14px;padding:10px 12px 10px 18px;box-shadow:0 10px 30px #00000040}.ais-savebar-t{flex:1;min-width:180px;font-size:.86rem}.ais-savebar-t small{display:block;opacity:.75;font-size:.72rem}.ais-savebar .ais-btn.ghost{color:#fff;border-color:#ffffff4d}.ais-savebar .ais-fail{flex-basis:100%;color:#fca5a5}.ais-toast{position:fixed;top:72px;right:20px;z-index:50;max-width:calc(100vw - 40px);background:var(--ais-green);color:#fff;padding:10px 16px;border-radius:12px;font-weight:600;font-size:.84rem;box-shadow:var(--ais-shadow)}@media (max-width: 900px){.ais-grid,.ais-row{grid-template-columns:minmax(0,1fr)}.ais-w{grid-template-columns:110px minmax(0,1fr) 40px}.ais-select{min-width:0;width:100%}}:root{--bg: #f6f7fb;--surface: #ffffff;--surface-2: #f9fafc;--surface-3: #f1f3f9;--border: #eceff5;--border-soft: #f1f3f9;--border-strong: #d8dde8;--text: #0f172a;--text-muted: #6b7894;--text-subtle: #98a3b8;--accent: #4f6df0;--accent-soft: rgba(79, 109, 240, .08);--accent-strong: #3b56cc;--accent-fg: #1d2b5c;--accent-light: #dbeafe;--success: #10b981;--success-soft: rgba(16, 185, 129, .1);--success-light: #d1fae5;--success-fg: #065f46;--warning: #f59e0b;--warning-soft: rgba(245, 158, 11, .1);--warning-light: #fef3c7;--warning-fg: #92400e;--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .1);--danger-light: #fee2e2;--danger-fg: #991b1b;--shadow-1: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .02);--shadow-2: 0 4px 12px rgba(15, 23, 42, .06), 0 2px 4px rgba(15, 23, 42, .03);--shadow-3: 0 12px 32px rgba(15, 23, 42, .1);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 18px}[data-theme=dark]{--bg: #0a0e1a;--surface: #131826;--surface-2: #0f1422;--surface-3: #1a2236;--border: rgba(255,255,255,.08);--border-soft: rgba(255,255,255,.05);--border-strong: rgba(255,255,255,.14);--text: #e8edf7;--text-muted: #8593b0;--text-subtle: #5d6b8a;--accent: #6b82f5;--accent-soft: rgba(107,130,245,.16);--accent-strong: #8ba0ff;--accent-fg: #c7d0ff;--accent-light: rgba(107,130,245,.24);--success: #10b981;--success-soft: rgba(16,185,129,.16);--success-light: rgba(16,185,129,.24);--success-fg: #6ee7b7;--warning: #f59e0b;--warning-soft: rgba(245,158,11,.16);--warning-light: rgba(245,158,11,.24);--warning-fg: #fcd34d;--danger: #ef4444;--danger-soft: rgba(239,68,68,.16);--danger-light: rgba(239,68,68,.24);--danger-fg: #fca5a5;--shadow-1: 0 1px 2px rgba(0,0,0,.3), 0 1px 3px rgba(0,0,0,.2);--shadow-2: 0 4px 12px rgba(0,0,0,.4), 0 2px 4px rgba(0,0,0,.2);--shadow-3: 0 12px 32px rgba(0,0,0,.55)}.muted{color:var(--text-muted);font-size:.78rem}.btn{font-size:.84rem;font-weight:600;padding:8px 14px;border-radius:var(--r-md);border:1px solid transparent;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .05s;display:inline-flex;align-items:center;gap:6px;line-height:1.1;white-space:nowrap}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:var(--shadow-1)}.btn.primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.btn.secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn.secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--text-muted)}.btn.ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.btn.danger{background:var(--danger-soft);color:var(--danger-fg);border-color:#ef444433}.btn.danger:hover:not(:disabled){background:#ef444429}.rh-ui input,.rh-ui select,.rh-ui textarea{color:var(--text)}.rh-ui input::placeholder,.rh-ui textarea::placeholder{color:var(--text-subtle)}.state{border:1px dashed var(--border-strong);border-radius:var(--r-lg);padding:32px;text-align:center;color:var(--text-muted);font-size:.9rem;background:var(--surface)}.errmsg{background:var(--danger-soft);color:var(--danger-fg);border:1px solid rgba(239,68,68,.2);padding:9px 14px;border-radius:var(--r-md);font-size:.85rem;margin:8px 0 14px}.rd-page-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 24px;padding:22px 26px;background:linear-gradient(135deg,#4f6df00f,#8b5cf60a),var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-2);flex-wrap:wrap;gap:14px;position:relative;overflow:hidden}.rd-page-head:before{content:"";position:absolute;top:-40px;right:-40px;width:160px;height:160px;background:radial-gradient(circle,rgba(79,109,240,.16) 0%,transparent 70%);pointer-events:none}.rd-page-head h1{font-size:1.55rem;font-weight:700;letter-spacing:-.025em;margin:0;color:var(--text)}.rd-page-head .rd-page-sub{display:block;font-size:.82rem;color:var(--text-muted);font-weight:400;margin-top:4px}.rd-page-head .rd-actions{display:flex;gap:8px;flex-wrap:wrap;position:relative;z-index:1;align-items:center}.rd-page-head .rd-actions input,.rd-page-head .rd-actions select{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--r-md);padding:7px 11px;font-size:.85rem;outline:none;transition:border-color .15s,box-shadow .15s}.rd-page-head .rd-actions input:focus,.rd-page-head .rd-actions select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rd-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:16px 18px;box-shadow:var(--shadow-1)}.rd-ss-input::placeholder{color:#94a3b8;opacity:1}.rd-grid-wrap{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-lg);overflow:auto;max-height:calc(100vh - 320px);box-shadow:0 1px #0f172a05,0 4px 14px #0f172a0a}.rd-grid-wrap.rd-grid-wrap--grow{max-height:none}.rd-grid{width:100%;border-collapse:separate;border-spacing:0;font-size:.84rem;color:var(--text)}.rd-grid thead{background:var(--surface-2);position:sticky;top:0;z-index:1}.rd-grid th{padding:11px 14px;font-weight:600;font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);background:var(--surface-2)}.rd-grid tbody tr{border-bottom:1px solid var(--border-soft);transition:background .12s}.rd-grid tbody tr:nth-child(odd){background:var(--surface)}.rd-grid tbody tr:nth-child(2n){background:var(--surface-2)}.rd-grid tbody tr:hover{background:var(--surface-3)}.rd-ibtn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;flex-shrink:0;border-radius:5px;cursor:pointer;transition:background .12s ease,opacity .12s ease;font-family:inherit;line-height:1}.rd-ibtn:disabled{opacity:.5;cursor:not-allowed}.rd-ibtn:hover:not(:disabled){filter:brightness(.9)}.rd-ibtn.edit{color:#3b82f6;border:1px solid rgba(59,130,246,.22);background:#3b82f614}.rd-ibtn.view{color:#7c3aed;border:1px solid rgba(124,58,237,.22);background:#7c3aed14}.rd-ibtn.delete,.rd-ibtn.archive{color:#ef4444;border:1px solid rgba(239,68,68,.22);background:#ef444414}.rd-ibtn.assign{color:#10b981;border:1px solid rgba(16,185,129,.22);background:#10b98114}.rd-ibtn.history,.rd-ibtn.toggle{color:#6b7280;border:1px solid rgba(107,114,128,.22);background:#6b728014}.rd-ibtn.qr{color:#0891b2;border:1px solid rgba(8,145,178,.22);background:#0891b214}.rd-ibtn.device{color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.rd-ibtn.rd-ibtn--solid{width:28px;height:28px;border-radius:6px;background:#fff;border:1px solid color-mix(in srgb,currentColor 40%,transparent);box-shadow:0 1px 2px #0f172a1f}.rd-ibtn.rd-ibtn--solid:hover:not(:disabled){filter:none;background:color-mix(in srgb,currentColor 12%,#fff);border-color:currentColor}.rd-pager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:12px 4px;font-size:.8rem;color:var(--text-muted)}.rd-pager__group{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.rd-pager__info{margin-right:8px;white-space:nowrap}.rd-pager__btn{min-width:28px;height:28px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--r-sm, 6px);background:transparent;color:var(--text);font:inherit;font-size:.8rem;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.rd-pager__btn:hover:not(:disabled):not(.is-active){background:var(--surface-3)}.rd-pager__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.rd-pager__btn:disabled{color:var(--text-subtle);cursor:not-allowed}.rd-pager__btn.is-active{background:var(--accent);color:#fff;font-weight:600;cursor:default}.rd-pager__btn--size.is-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);font-weight:600}.rd-pager__gap{min-width:20px;text-align:center;color:var(--text-subtle)}.rd-pager--footer{margin-top:10px;padding:8px 14px;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-lg);box-shadow:0 1px #0f172a05,0 4px 14px #0f172a0a}.rd-pager__jump{display:inline-flex;align-items:center;gap:4px;margin-right:8px}.rd-pager__jump input{width:56px;height:28px;padding:0 6px;text-align:center;border:1px solid var(--border-strong);border-radius:var(--r-sm, 6px);background:var(--surface);color:var(--text);font:inherit;font-size:.8rem}.rd-page-header-flush,.rd-page-wide{margin:0}.rd-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--r-lg);padding:14px 16px;box-shadow:0 1px #0f172a05,0 4px 14px #0f172a0a}.rd-fg{position:relative;border:1px solid var(--border-strong);border-radius:var(--r-md);padding:4px 12px;display:flex;gap:8px;align-items:center;min-height:36px;background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease}.rd-fg.accent-success{border-color:#10b98166}.rd-fg-label{position:absolute;top:-7px;left:10px;background:var(--surface);padding:0 5px;font-size:.62rem;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase}.rd-fg.accent-success .rd-fg-label{color:var(--success-fg)}.rd-fg input,.rd-fg select{border:none;outline:none;background:transparent;font-size:.85rem;font-family:inherit;color:var(--text)}.rd-swal-above-modal{z-index:60000}.rd-swal-booking-confirmed{font-family:inherit!important;border-radius:20px!important;padding:0 0 32px!important;overflow:hidden!important;box-shadow:0 32px 72px #0000002e,0 0 0 1px #16a34a24!important;max-width:440px!important;background:var(--surface, #fff)!important;border-top:5px solid #16a34a!important}.rd-swal-booking-confirmed__icon.swal2-icon.swal2-success{margin:28px auto 8px!important;width:68px!important;height:68px!important;border-color:#16a34a!important}.rd-swal-booking-confirmed__icon.swal2-icon.swal2-success .swal2-success-ring{border-color:#16a34a47!important}.rd-swal-booking-confirmed__icon.swal2-icon.swal2-success [class^=swal2-success-line]{background-color:#16a34a!important}.rd-swal-booking-confirmed__title{font-size:1.25rem!important;font-weight:700!important;color:#14532d!important;margin:4px 0 0!important;padding:0 24px!important}.rd-swal-booking-confirmed__actions{margin:20px 0 0!important}.rd-swal-booking-confirmed__btn{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:10px 28px!important;border-radius:10px!important;font-size:.9rem!important;font-weight:700!important;border:none!important;cursor:pointer!important;background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important;box-shadow:0 4px 14px #16a34a66!important;letter-spacing:.02em!important;transition:opacity .15s,box-shadow .15s!important}.rd-swal-booking-confirmed__btn:hover{opacity:.92!important;box-shadow:0 6px 20px #16a34a80!important}.rd-count-badge{display:inline-flex;align-items:center;gap:4px;font-size:.85rem;line-height:1.5;white-space:nowrap}.rd-count-badge__bracket,.rd-count-badge__label,.rd-count-badge__sep{color:var(--text-muted, #64748b);font-weight:500}.rd-count-badge__bracket:first-child{margin-right:-2px}.rd-count-badge__bracket:last-child{margin-left:-2px}.rd-count-badge__num{color:var(--text, #0f172a);font-weight:700;font-variant-numeric:tabular-nums}.rd-count-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:20px;background:var(--bg, var(--surface-2));border:1px solid var(--border);white-space:nowrap;font-size:.75rem;font-weight:600;color:var(--text)}.rd-count-pill__num{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}.rd-age-filter{flex-shrink:0}.rd-age-filter__boxes{display:flex;flex-wrap:wrap;gap:8px}.rd-age-box{display:inline-flex;align-items:center;gap:10px;height:32px;min-width:112px;padding:0 12px;box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);font:inherit;color:var(--text);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.rd-age-box__label{font-size:.82rem;color:var(--text-muted);white-space:nowrap}.rd-age-box__count{margin-left:auto;font-size:.9rem;font-weight:700;font-variant-numeric:tabular-nums}.rd-age-box:hover{border-color:var(--accent)}.rd-age-box.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-soft)}.rd-age-box.is-active .rd-age-box__label,.rd-age-box.is-active .rd-age-box__count{color:var(--accent-strong, var(--accent))}.rd-age-box:focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root{--ft-font: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;font-family:var(--ft-font);line-height:1.5;font-weight:400;color-scheme:dark;--bg-page-from: #0b1020;--bg-page-to: #121a2f;--bg-page-accent: rgba(17,199,215,.15);--ft-surface-sunken: rgba(8,12,24,.88);--bg-header: rgba(8,12,24,.72);--bg-surface: rgba(17,25,44,.8);--bg-glass: rgba(17,25,44,.42);--bg-elevated: rgba(11,17,32,.54);--grid-head-bg: #172034;--modal-foot-bg: #121a2c;--bg-modal: #111a2c;--bg-modal-input: var(--bg-input);--bg-input: rgba(10,16,29,.85);--bg-nav-hover: rgba(31,43,74,.72);--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.15);--border-nav-hover:rgba(78,120,255,.3);--text-primary: #e9eef7;--text-secondary: #b6c5e4;--text-muted: #9eb0cf;--text-faint: #4a5a78;--text-input: #edf3ff;--accent: #11c7d7;--accent-soft: rgba(17,199,215,.15);--accent-border: rgba(17,199,215,.4);--accent-gradient: linear-gradient(135deg,#11c7d7,#4e78ff);--accent-mark-text:#04111d;color:var(--text-primary);background:radial-gradient(circle at top,var(--bg-page-accent),transparent 35%),linear-gradient(180deg,var(--bg-page-from) 0%,var(--bg-page-to) 100%)}[data-theme=light]{color-scheme:light;--bg-page-from: #f0f4ff;--bg-page-to: #e8edf8;--bg-page-accent: rgba(78,120,255,.08);--ft-surface-sunken: rgba(255,255,255,.96);--bg-header: rgba(248,250,255,.96);--bg-surface: rgba(255,255,255,.92);--bg-glass: rgba(255,255,255,.45);--bg-elevated: rgba(235,240,255,.7);--grid-head-bg: #eff1f5;--modal-foot-bg: #f7f8fb;--bg-modal: #ffffff;--bg-modal-input: #ffffff;--bg-input: rgba(245,248,255,.9);--bg-nav-hover: rgba(78,120,255,.06);--border: rgba(0,0,0,.08);--border-strong: rgba(0,0,0,.15);--border-nav-hover:rgba(78,120,255,.25);--text-primary: #1a2340;--text-secondary: #3a4e76;--text-muted: #5a6a8e;--text-faint: #8090b0;--text-input: #1a2340;--accent: #0ba8b8;--accent-soft: rgba(11,168,184,.1);--accent-border: rgba(11,168,184,.35);--accent-gradient: linear-gradient(135deg,#0ba8b8,#4e78ff);--accent-mark-text:#ffffff}[data-theme=ocean]{color-scheme:dark;--bg-page-from: #051420;--bg-page-to: #091e33;--bg-page-accent: rgba(0,200,150,.1);--ft-surface-sunken: rgba(3,12,22,.94);--bg-header: rgba(3,12,22,.82);--bg-surface: rgba(7,22,38,.85);--bg-glass: rgba(7,22,38,.45);--bg-elevated: rgba(4,14,26,.6);--grid-head-bg: #0c1d30;--modal-foot-bg: #0a1828;--bg-modal: #071626;--bg-modal-input: var(--bg-input);--bg-input: rgba(4,14,26,.85);--bg-nav-hover: rgba(0,100,80,.25);--border: rgba(0,200,150,.1);--border-strong: rgba(0,200,150,.18);--border-nav-hover:rgba(0,200,150,.3);--text-primary: #c8e8ee;--text-secondary: #88bfcc;--text-muted: #6aa8b8;--text-faint: #3a6070;--text-input: #c8e8ee;--accent: #00c896;--accent-soft: rgba(0,200,150,.14);--accent-border: rgba(0,200,150,.4);--accent-gradient: linear-gradient(135deg,#00c896,#0080c0);--accent-mark-text:#031510}[data-theme=brand]{color-scheme:dark;--bg-page-from: #0b1020;--bg-page-to: #121a2f;--ft-surface-sunken: rgba(8,12,24,.88);--bg-header: rgba(8,12,24,.72);--bg-surface: rgba(17,25,44,.8);--bg-glass: rgba(17,25,44,.42);--bg-elevated: rgba(11,17,32,.54);--grid-head-bg: #172034;--modal-foot-bg: #121a2c;--bg-modal: #111a2c;--bg-modal-input: var(--bg-input);--bg-input: rgba(10,16,29,.85);--bg-nav-hover: rgba(31,43,74,.72);--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.15);--border-nav-hover:rgba(78,120,255,.3);--text-primary: #e9eef7;--text-secondary: #b6c5e4;--text-muted: #9eb0cf;--text-faint: #4a5a78;--text-input: #edf3ff}.rd-page-header-flush{margin:-28px -32px 0}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:transparent}a{color:inherit;text-decoration:none}#root{min-height:100vh}.shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{display:flex;flex-direction:column;padding:24px;border-right:1px solid var(--border);background:var(--ft-surface-sunken);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--accent-gradient);color:var(--accent-mark-text);font-size:.85rem;font-weight:700}.nav{display:grid;gap:6px}.nav-section{margin:14px 4px 6px;padding:0 10px;font-size:.65rem;font-weight:700;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.nav-link{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;border:1px solid transparent;color:var(--text-secondary);font-size:.88rem;transition:background .15s,border-color .15s}.nav-link:hover{background:var(--bg-nav-hover);border-color:var(--border-nav-hover)}.nav-link--active{background:var(--accent-soft);border-color:var(--accent-border);color:var(--text-primary)}.nav-icon{flex-shrink:0}.shell-main{display:flex;flex-direction:column;overflow:hidden}.content{padding:28px;flex:1}.hero-copy{max-width:56rem;color:var(--text-muted)}.hero-copy h2{margin:0}.panel,.module-card{padding:20px;border-radius:18px;border:1px solid var(--border);background:var(--bg-surface)}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}.module-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent);margin-bottom:10px;font-size:.74rem;letter-spacing:.08em}.table-like{display:grid;gap:10px}.table-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;border-radius:14px;background:var(--bg-elevated);border:1px solid var(--border);align-items:center}.feedback{margin:8px 0;padding:10px 14px;border-radius:10px;font-size:.88rem}.feedback--error{background:#a0282847;color:#f4a0a0;border:1px solid rgba(160,40,40,.4)}.loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-muted)}.loading-spinner{width:36px;height:36px;border:3px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .9s linear infinite}@media (prefers-reduced-motion: reduce){.spin{animation-duration:2.4s}}@media (max-width: 900px){.shell,.module-grid,.table-row{grid-template-columns:1fr}}.icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:background .15s}.icon-btn:hover{background:#4e78ff40;border-color:#4e78ff66}.icon-btn-dark{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:1px solid #ddd;background:transparent;color:#333;cursor:pointer}.uw-content:has(.map-page){display:flex;flex-direction:column;padding:0}.map-page{flex:1;min-height:0;display:flex;flex-direction:column}.map-legend-bar{flex-shrink:0;display:flex;align-items:stretch;gap:12px;padding:0 14px;background:var(--ft-surface-sunken);border-bottom:1px solid var(--border);overflow-x:auto}.map-legend-bar__tabs{display:flex;align-items:stretch;gap:2px}.legend-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:none;border-bottom:2px solid transparent;background:transparent;cursor:pointer;font:inherit;white-space:nowrap;transition:border-color .15s,background .15s}.legend-tab:hover{background:var(--bg-surface)}.legend-tab__icon{color:var(--status-color);flex-shrink:0}.legend-tab__num{font-size:1rem;font-weight:800;line-height:1;color:var(--status-color);font-variant-numeric:tabular-nums}.legend-tab__label{font-size:.78rem;font-weight:600;color:var(--text-muted)}.legend-tab--active{border-bottom-color:var(--status-color)}.legend-tab--active .legend-tab__label{color:var(--text-primary)}.map-legend-bar__updated{margin-left:auto;align-self:center;font-size:.72rem;color:var(--text-muted);white-space:nowrap}.map-overlay{position:absolute;z-index:1200;background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 6px 22px #00000038,0 2px 6px #0000001f}.map-overlay--tl{top:12px;left:12px;padding:8px 10px;display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;max-width:calc(100% - 340px)}.map-field{display:flex;flex-direction:column;gap:4px}.map-field__label{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.map-field__radios{display:flex;align-items:center;gap:10px}.map-field__radios .radio-label{gap:3px;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);line-height:1}.map-field__radios input[type=radio]{width:11px;height:11px;margin:0;accent-color:var(--accent)}.map-overlay--tr{top:12px;right:12px;padding:6px;display:flex;gap:6px;align-items:center}.map-overlay .map-select,.map-overlay .map-search-input{background:var(--bg-input);color:var(--text-input);border-color:var(--border-strong)}.map-overlay .map-select{min-width:130px}.map-overlay .map-search-input{width:230px;height:32px;box-sizing:border-box}.map-overlay .icon-btn{background:var(--bg-input);color:var(--text-secondary);border-color:var(--border-strong)}.map-overlay .icon-btn:hover{background:var(--accent-soft);border-color:var(--accent-border)}.map-select{padding:6px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.82rem;min-width:140px}.search-row{display:flex;align-items:center;gap:8px}.ft-vehpick{position:relative;width:210px}.ft-vehpick__box{display:flex;align-items:stretch;height:32px;box-sizing:border-box;overflow:hidden;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg-surface)}.ft-vehpick__box:focus-within{border-color:var(--accent)}.ft-vehpick__input{flex:1;min-width:0;border:none;outline:none;padding:8px 9px;font:inherit;font-size:13px;line-height:1.25;color:var(--text-primary);background:transparent}.ft-vehpick__btn{display:flex;align-items:center;flex-shrink:0;padding:0 6px;border:none;background:transparent;color:var(--text-muted);cursor:pointer}.ft-vehpick__btn--chevron{padding:0 9px;border-left:1px solid var(--border-strong)}.ft-vehpick__drop{position:absolute;top:calc(100% + 3px);left:0;z-index:9999;min-width:100%;width:240px;max-height:220px;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:6px;box-shadow:0 4px 16px #00000059}.ft-vehpick__row{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:13px;color:var(--text-primary);cursor:pointer}.ft-vehpick__row:hover{background:var(--bg-elevated)}.ft-vehpick__row.is-selected{color:var(--accent);font-weight:600}.ft-vehpick__all{justify-content:space-between;border-bottom:1px solid var(--border)}.ft-vehpick__hint{font-size:.72rem;font-weight:400;color:var(--text-muted)}.ft-vehpick__check{width:13px;height:13px;flex-shrink:0;border-radius:3px;border:1px solid var(--border-strong);font-size:10px;line-height:12px;text-align:center;color:var(--accent-mark-text)}.ft-vehpick__row.is-selected .ft-vehpick__check{border-color:var(--accent);background:var(--accent)}.radio-label{display:flex;align-items:center;gap:4px;font-size:.82rem;color:var(--text-secondary);cursor:pointer}.map-search-input{padding:6px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.82rem;width:230px}.map-wrap{position:relative;flex:1;min-height:0}.map-type-toggle{position:absolute;bottom:12px;left:12px;z-index:1000;display:flex;border-radius:6px;overflow:hidden;box-shadow:0 2px 8px #0000004d;border:1px solid var(--border-strong)}.map-type-btn{padding:5px 14px;border:none;background:var(--bg-surface);color:var(--text-secondary);font-size:.8rem;font-weight:600;cursor:pointer}.map-type-btn.active{background:var(--accent);color:var(--accent-mark-text)}.map-provider-toggle{display:flex;border-radius:6px;overflow:hidden;box-shadow:0 2px 8px #0000004d;border:1px solid var(--border-strong)}.map-filter-panel{position:absolute;top:60px;right:12px;z-index:1300;width:260px;background:#fff;border-radius:14px;padding:16px;box-shadow:0 4px 24px #0003;color:#1a1a2e}.map-filter-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.map-filter-panel__header h4{margin:0;font-size:.95rem;font-weight:700}.filter-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f0f0f0;font-size:.84rem;color:#333}.filter-row--col{flex-direction:column;align-items:flex-start;gap:6px}.filter-row:last-child{border-bottom:none}.toggle-switch{width:38px;height:20px;border-radius:10px;border:none;background:#ccc;cursor:pointer;position:relative;transition:background .2s;padding:0;flex-shrink:0}.toggle-switch--on{background:var(--accent)}.toggle-thumb{display:block;width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:left .2s;box-shadow:0 1px 3px #0003}.toggle-switch--on .toggle-thumb{left:20px}.filter-select{width:100%;padding:6px 8px;border-radius:6px;border:1px solid #ddd;background:#fff;color:#333;font-size:.82rem}.fs-page{color:var(--text-primary)}.fs-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:10px 14px}.fs-toolbar__spacer{margin-left:auto;display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.fs-select{height:38px;padding:0 30px 0 12px;min-width:150px;border:1px solid var(--border-strong);border-radius:8px;background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.85rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 10px center}.fs-select:disabled{opacity:.5;cursor:not-allowed}.fs-btn{height:38px;padding:0 14px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);font:inherit;font-size:.84rem;font-weight:600;display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.fs-btn:hover{border-color:var(--accent-border);color:var(--text-primary)}.fs-btn--primary{background:var(--accent-soft);border-color:var(--accent-border);color:var(--accent)}.fs-icon-btn{height:38px;width:38px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s,color .15s}.fs-icon-btn:hover{border-color:var(--accent-border);color:var(--text-primary)}.fs-search-wrap{position:relative;display:inline-flex;align-items:center}.fs-search-wrap>svg{position:absolute;left:11px;color:var(--text-muted);pointer-events:none}.fs-search{height:38px;padding:0 12px 0 34px;border-radius:8px;min-width:240px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.85rem}.fs-refresh-label{font-size:.82rem;color:var(--text-secondary);display:inline-flex;align-items:center;gap:8px}.fs-switch{position:relative;display:inline-block;vertical-align:middle;width:28px;height:16px;border-radius:999px;border:none;cursor:pointer;background:var(--border-strong);transition:background .15s;flex-shrink:0;padding:0}.fs-switch--on{background:var(--accent)}.fs-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fs-switch:disabled{cursor:default}.fs-switch__thumb{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:left .15s;box-shadow:0 1px 3px #00000040}.fs-switch--on .fs-switch__thumb{left:14px}:root{--accent-fg: color-mix(in srgb, var(--accent) 52%, #06111f);--accent-strong: color-mix(in srgb, var(--accent) 82%, #000000)}.btn.primary{color:var(--accent-mark-text);box-shadow:none}.btn.primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--accent-mark-text)}.btn.secondary:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-border);color:var(--text-primary)}.ft-modal__foot .btn,.fs-modal__foot .btn,.t-dialog .tm-dialog-foot .btn{min-height:34px;padding:7px 16px}.ft-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:9px 20px;color:#fff;background:linear-gradient(135deg,var(--accent-fg) 0%,var(--accent) 100%)}.ft-modal__title{display:flex;align-items:center;gap:9px;margin:0;font-size:.95rem;font-weight:700;color:#fff}.ft-modal__title svg{color:#fff}.ft-modal__sub{margin-top:2px;font-size:.75rem;color:#ffffffd1}.ft-modal__close{display:inline-grid;place-items:center;width:30px;height:30px;border:none;border-radius:6px;background:transparent;color:#fff;cursor:pointer}.ft-modal__close:hover{background:#ffffff29}.ft-modal__close:focus-visible{outline:2px solid #ffffff;outline-offset:1px}.ft-modal__foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-shrink:0;padding:12px 20px;background:var(--modal-foot-bg);border-top:1px solid var(--border)}:is(div,form):has(>.ft-modal__head),.fs-modal,.t-dialog{background:var(--bg-modal)!important}:is(:is(div,form):has(>.ft-modal__head),.fs-modal,.t-dialog) :is(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit]),textarea,select):is(:not(:disabled,[readonly]),.ft-picker-input:not(:disabled)){background:var(--bg-modal-input)!important}.t-dialog .t-dialog__head{padding:9px 20px;color:#fff;background:linear-gradient(135deg,var(--accent-fg) 0%,var(--accent) 100%)}.t-dialog .t-dialog__title{color:#fff;font-size:.95rem}.t-dialog .t-dialog__info{color:var(--accent)}.t-dialog .tm-dialog-foot{margin:8px -18px -18px;padding:12px 20px;background:var(--modal-foot-bg);border-top:1px solid var(--border)}.fs-filters{align-items:flex-end;margin:16px 0 14px}.fs-filters .rd-fg select{border:none;outline:none;background:transparent;font:inherit;font-size:.85rem;color:var(--text-primary);min-width:140px}.fs-filters .rd-fg select:disabled{color:var(--text-muted);cursor:not-allowed}.fs-filters__switch{display:flex;align-items:center;gap:8px;min-height:36px;font-size:.82rem;color:var(--text-secondary)}.fs-filters__config{margin-left:auto;min-height:36px}.fs-status-badges{display:inline-flex;flex-wrap:wrap;gap:6px}.fs-status-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:20px;border:1px solid var(--border-strong);background:var(--surface-2, var(--bg-surface));font:inherit;font-size:.75rem;font-weight:600;color:var(--text);cursor:pointer}.fs-status-badge strong{font-weight:700;color:var(--text-primary)}.fs-status-badge__dot{width:8px;height:8px;border-radius:50%;background:var(--fs-dot);box-shadow:0 0 0 1px #0f172a1f}.fs-status-badge:hover{border-color:var(--accent-border)}.fs-status-badge.is-active{border-color:var(--fs-dot);background:var(--fs-dot);color:#fff}.fs-status-badge.is-active strong{color:#fff}.fs-status-badge.is-active .fs-status-badge__dot{background:#fff;box-shadow:none}.fs-status-badge:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn.secondary.fs-filters__config{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.btn.secondary.fs-filters__config:hover:not(:disabled){background:var(--accent);color:var(--accent-mark-text);border-color:var(--accent)}.fs-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4200;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172a8c}.fs-modal{width:min(560px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 8px 40px #0f172a4d;overflow:hidden}.fs-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 20px;color:#fff;background:linear-gradient(135deg,var(--accent-fg) 0%,var(--accent) 100%)}.fs-modal__title{display:flex;align-items:center;gap:8px;margin:0;font-size:.95rem;font-weight:700;color:#fff}.fs-modal__title svg{color:#fff}.fs-modal__sub{margin-top:3px;font-size:.75rem;color:#ffffffd1}.fs-modal__close{display:inline-flex;padding:4px;border:none;border-radius:6px;background:transparent;color:#fff;cursor:pointer}.fs-modal__close:hover{background:#ffffff29;color:#fff}.fs-modal__body{overflow:auto}.fs-modal{max-height:calc(100dvh - 32px)}.fs-modal__head,.fs-modal__foot{flex-shrink:0}.fs-modal__body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}.fs-modal__body .fs-config__grid-head{position:sticky;top:0;z-index:1;background:var(--bg-surface)}.fs-modal__foot{display:flex;align-items:center;gap:10px;padding:12px 20px;background:var(--modal-foot-bg);border-top:1px solid var(--border)}.fs-table-wrap{border:1px solid var(--border);border-radius:10px;overflow:auto;background:var(--bg-surface)}.fs-table{width:100%;border-collapse:collapse;font-size:calc(.73rem + 1px);font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}.fs-table th{position:sticky;top:0;z-index:2}.fs-table th,.cg.al-grid .cg-table th,.cg.gf-grid .cg-table th,.cg.gv-grid .cg-table th,.cg.tm-grid .cg-table th,.cg.th-grid .cg-table th,.rd-grid.ft-grid th{padding:7px 14px;font-weight:600;font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;background:var(--grid-head-bg);border-bottom:1px solid var(--border)}.cg.gf-grid .cg-table thead{position:static}.cg.al-grid .cg-table th,.cg.gf-grid .cg-table th,.cg.tm-grid .cg-table th,.cg.th-grid .cg-table th{height:auto;vertical-align:middle;line-height:normal;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}.fs-table th.rd-sort-active,.cg.al-grid .cg-table th.rd-sort-active,.cg.gf-grid .cg-table th.rd-sort-active,.cg.gv-grid .cg-table th[aria-sort=ascending],.cg.gv-grid .cg-table th[aria-sort=descending],.cg.tm-grid .cg-table th[aria-sort=ascending],.cg.tm-grid .cg-table th[aria-sort=descending],.cg.th-grid .cg-table th[aria-sort=ascending],.cg.th-grid .cg-table th[aria-sort=descending],.rd-grid.ft-grid th.rd-sort-active{color:var(--accent)}.rd-grid.ft-grid{font-size:calc(.73rem + 1px);font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}.rd-grid.ft-grid td{padding:4px 12px;border-bottom:1px solid var(--border)}.rd-grid.ft-grid tbody tr:nth-child(odd),.rd-grid.ft-grid tbody tr:nth-child(2n){background:transparent}.rd-grid.ft-grid tbody tr:hover{background:var(--accent-soft)}.rd-grid.ft-grid tbody tr.perm-row:hover,.rd-grid.ft-grid tbody tr.perm-detail:hover{background:#fafbfe}.rd-grid.ft-grid tr.perm-detail>td{padding:0;background:#fafbfe}.perm-expand{display:grid;place-items:center;width:22px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:#4b5563;cursor:pointer}.perm-expand:hover{background:#eef1f6}.perm-expand:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.perm-tag{font-size:.66rem;font-weight:500;color:#4b5563;background:#f3f6fb;border:1px solid #e5e9f2;border-radius:999px;padding:1px 8px;line-height:1.4}.perm-tag--full{color:#9a4a0c;background:#fdf3e7;border-color:#f3cfa4}.perm-bar{display:flex;height:5px;border-radius:999px;background:#eef1f6;overflow:hidden}.perm-bar>span{height:100%}.perm-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 4px 0 10px;border:1px solid #e5e9f2;border-radius:7px;background:#fff;font-size:.75rem;color:var(--text);white-space:nowrap}.perm-chip--view{padding:0 10px;color:#374151}.perm-act{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:4px;background:#e8efff;color:#1843ad;font-size:.62rem;font-weight:600}.perm-act--wide{display:flex;height:20px;padding:0 7px;border-radius:5px;font-size:.66rem;font-weight:500}.perm-more{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:7px;background:#f3f6fb;color:#4b5563;font-size:.75rem}.perm-section{font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#4b5563}.perm-list{display:flex;flex-direction:column;background:#fff;border:1px solid #e5e9f2;border-radius:10px;overflow:hidden}.perm-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border-bottom:1px solid #f1f4f9;font-size:.78rem;color:var(--text)}.perm-list-row:last-child{border-bottom:none}.perm-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:0 2px 10px;font-size:.78rem;color:#4b5563}.perm-legend>span{display:inline-flex;align-items:center;gap:6px}.perm-key{width:10px;height:5px;border-radius:2px}.rd-grid.ft-grid .rd-ibtn{width:22px;height:22px}.rd-grid.ft-grid .rd-ibtn svg{width:12px;height:12px}.rd-grid.ft-grid td>div:has(>.rd-ibtn){gap:3px!important}.rd-grid.ft-grid--flow thead{position:static}.cg-sort__idle{display:none}.cg.gv-grid .cg-sort{gap:4px}.cg.gv-grid .cg-sort svg{width:11px;height:11px}.cg.gv-grid .cg-sort__idle{display:inline-block;opacity:.35;flex-shrink:0}.cg.gv-grid .cg-sort__icon{color:inherit}.cg.gf-grid .cg-table,.cg.tm-grid .cg-table{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;font-weight:400;font-size:calc(.73rem + 1px)}.cg.tm-grid .cg-table td{padding:4px 12px}.cg.tm-grid .cg-table tbody tr:nth-child(2n) td{background:transparent}.cg.tm-grid .cg-table tbody tr:hover td{background:var(--accent-soft)}.cg.gf-grid .cg-scroll{max-height:none}.gf-actions{display:flex;gap:4px;justify-content:center}.gf-actions .rd-ibtn{width:24px;height:24px}.fs-th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.fs-table td{padding:4px 12px;color:var(--text-primary);border-bottom:1px solid var(--border);white-space:nowrap}.fs-table tbody tr:hover{background:var(--accent-soft)}.fs-table tbody tr:hover>td.fs-td--locked{background:linear-gradient(var(--accent-soft),var(--accent-soft)),var(--bg-surface)}.fs-th--locked,.fs-td--locked{position:sticky;z-index:1;background:var(--ft-surface-sunken)}.fs-th--locked{z-index:3}.fs-td--locked{background:var(--bg-surface)}.fs-num{font-variant-numeric:tabular-nums;font-weight:600}.fs-cell-inline{display:inline-flex;align-items:center;gap:6px}.fs-link{color:var(--accent);text-decoration:none;cursor:pointer}.fs-link:hover{text-decoration:underline}.fs-loc{max-width:280px;overflow:hidden;text-overflow:ellipsis}.fs-grp{max-width:180px;overflow:hidden;text-overflow:ellipsis}.fs-empty{text-align:center;color:var(--text-muted);padding:32px}.fs-loading{color:var(--text-muted);padding:24px}.fs-error{background:#ef44441f;color:#f87171;padding:12px;border-radius:8px;border:1px solid rgba(239,68,68,.3)}.fs-pill{display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;border-radius:999px;border:none;font-size:.72rem;font-weight:600;white-space:nowrap}.fs-config__grid-head,.fs-config__row{display:grid;grid-template-columns:28px 1fr 76px 76px 76px;align-items:center}.fs-config__grid-head{padding:8px 16px;font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.fs-config__row{padding:9px 16px;border-bottom:1px solid var(--border);transition:background .1s}.fs-config__row:last-child{border-bottom:none}.fs-config__row--over{background:var(--accent-soft)}.fs-config__handle{cursor:grab;color:var(--text-muted);font-size:16px;-webkit-user-select:none;user-select:none}.fs-config__label{font-size:.85rem;color:var(--text-primary);font-weight:500}.fs-config__label--off{color:var(--text-muted)}.fs-config__cell{display:flex;justify-content:center}.rd-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn{font-size:.84rem;font-weight:600;padding:8px 14px;border-radius:8px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;gap:6px;line-height:1.1;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .05s}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.btn.secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-strong)}.btn.secondary:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--text-muted)}.btn.ghost{background:transparent;color:var(--text-muted);border-color:transparent}.btn.ghost:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.btn.ghost--active{background:var(--accent-soft);color:var(--accent)}.btn.icon-only{padding:7px}.btn.small{padding:5px 10px;font-size:.78rem;gap:4px}.rd-toolbar{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;box-shadow:0 1px 2px #0000000d}.rd-fg{position:relative;border:1px solid var(--border-strong);border-radius:8px;padding:4px 12px;display:flex;gap:8px;align-items:center;min-height:36px;background:var(--bg-surface);transition:border-color .15s ease,box-shadow .15s ease}.rd-fg:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rd-fg.accent-success:not(:focus-within){border-color:var(--border-strong)}.rd-fg.accent-success:focus-within{border-color:var(--accent)}.rd-fg.accent-success .rd-fg-label{color:var(--text-muted)}.rd-fg-label{position:absolute;top:-7px;left:10px;background:var(--bg-surface);padding:0 5px;font-size:.62rem;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase}.rd-fg input{border:none;outline:none;background:transparent;font-size:.85rem;font-family:inherit;color:var(--text-primary)}.rd-pager{color:var(--text-muted)}.rd-pager__btn{color:var(--text-secondary)}.rd-pager__btn:hover:not(:disabled):not(.is-active){background:var(--bg-nav-hover)}.rd-pager__btn:disabled{color:var(--text-faint)}.rd-pager__btn.is-active{background:var(--accent);color:var(--accent-mark-text)}.rd-pager__btn--size.is-active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border)}.rd-pager__gap{color:var(--text-faint)}.rd-pager--footer{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 1px 2px #0000000d}.rd-fg-plain-label{display:block;margin-bottom:4px;font-size:.62rem;font-weight:700;letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase}.rd-grid-wrap{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;overflow:auto;max-height:calc(100vh - 320px);box-shadow:0 1px 2px #0000000d}.rd-grid{width:100%;border-collapse:separate;border-spacing:0;font-size:.84rem;color:var(--text-primary)}.rd-grid thead{background:var(--grid-head-bg);position:sticky;top:0;z-index:1}.rd-grid th{padding:11px 14px;font-weight:600;font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border);background:var(--grid-head-bg)}.rd-grid tbody tr{border-bottom:1px solid var(--border);transition:background .12s;cursor:pointer}.rd-grid tbody tr:nth-child(odd){background:var(--bg-surface)}.rd-grid tbody tr:nth-child(2n){background:var(--bg-elevated)}.rd-grid tbody tr:hover{background:var(--accent-soft)}.rd-grid tbody tr.rd-row-inactive{background:var(--danger-light, #ffe2e2)}.rd-grid td{padding:10px 14px;vertical-align:middle}.page-header{margin-bottom:20px}.page-header h2{margin:0}.page-header p{margin:4px 0 0;color:var(--text-muted);font-size:.88rem}.fleet-table{width:100%;border-collapse:collapse}.fleet-table th{text-align:left;padding:10px 12px;font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}.fleet-table td{padding:10px 12px;font-size:.84rem;border-bottom:1px solid var(--border)}.fleet-table tr:hover td{background:#4e78ff0f}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:.73rem;font-weight:600}.status-badge--Moving{background:#22c55e26;color:#22c55e}.status-badge--Idle{background:#f0b42926;color:#f0b429}.status-badge--Stopped{background:#ef444426;color:#ef4444}.status-badge--NoService{background:#3abaf426;color:#3abaf4}.alert-item{display:grid;grid-template-columns:6px 1fr auto;gap:14px;align-items:start;padding:14px;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated)}.alert-bar{border-radius:3px;width:6px;align-self:stretch}.alert-bar--critical{background:#ef4444}.alert-bar--warning{background:#f0b429}.alert-bar--info{background:#4e78ff}.alert-meta{font-size:.78rem;color:var(--text-muted);margin-top:4px}.alert-actions{display:flex;gap:6px;align-items:flex-start}.replay-layout{display:grid;grid-template-columns:300px 1fr;gap:16px;height:calc(100vh - 152px)}.replay-controls{display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:16px;border:1px solid var(--border);background:var(--bg-surface);overflow-y:auto}.replay-map{border-radius:16px;overflow:hidden;border:1px solid var(--border)}.playback-bar{display:flex;align-items:center;gap:8px;margin-top:4px}.playback-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border-strong);background:#4e78ff33;color:var(--text-primary);cursor:pointer;transition:background .15s}.playback-btn:hover{background:#4e78ff66}.playback-btn--active{background:#4e78ff}.playback-btn:disabled{opacity:.45;cursor:not-allowed}.speed-select{padding:4px 8px;border-radius:6px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.8rem}.timeline input[type=range]{width:100%;accent-color:var(--accent)}.replay-info{font-size:.8rem;color:var(--text-muted)}.replay-info span{display:block;margin-bottom:3px}.poi-layout{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}.poi-form{display:grid;gap:12px}.poi-form label{display:grid;gap:4px;font-size:.85rem;color:var(--text-secondary)}.poi-form input,.poi-form select{padding:9px 12px;border-radius:10px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.88rem}.poi-type-badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:.72rem;background:#4e78ff26;color:#7a9fff}.fuel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.fuel-stat{padding:18px;border-radius:16px;border:1px solid var(--border);background:var(--bg-surface)}.fuel-stat__value{font-size:1.55rem;font-weight:700;margin-bottom:4px}.fuel-stat__label{font-size:.78rem;color:var(--text-muted)}.fuel-bar-wrap{display:flex;align-items:center;gap:10px;margin:6px 0}.fuel-bar-bg{flex:1;height:6px;border-radius:3px;background:var(--border)}.fuel-bar-fill{height:6px;border-radius:3px;background:var(--accent);transition:width .4s}.reports-layout{display:flex;flex-direction:column;gap:14px}.reports-filters{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;padding:16px;border-radius:14px;border:1px solid var(--border);background:var(--bg-surface)}.reports-filters label{display:grid;gap:4px;font-size:.76rem;color:var(--text-muted)}.reports-filters input,.reports-filters select{padding:7px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.84rem}.date-quick{display:flex;gap:5px}.date-quick-btn{padding:5px 11px;border-radius:6px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);font-size:.78rem;cursor:pointer;transition:background .15s}.date-quick-btn:hover,.date-quick-btn--active{background:#4e78ff40;border-color:#4e78ff66;color:var(--text-primary)}.btn-search{padding:7px 18px;border-radius:8px;border:none;background:#22c55e;color:#fff;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.btn-clear{padding:7px 14px;border-radius:8px;border:none;background:#ef4444;color:#fff;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.btn-excel{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;border:none;background:#22c55e;color:#fff;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.report-tabs{display:flex;gap:4px;flex-wrap:wrap}.report-tab{display:flex;align-items:center;gap:8px;padding:6px 14px;border-radius:8px 8px 0 0;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);font-size:.82rem;cursor:pointer}.report-tab--active{background:#4e78ff33;border-color:#4e78ff66;color:var(--text-primary)}.report-tab-close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:4px;border:none;background:transparent;color:inherit;cursor:pointer;font-size:.8rem;padding:0;line-height:1}.report-tab-close:hover{background:#ffffff1f}.map-search-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.filter-row--disabled{opacity:.5}.filter-not-configured{font-size:.72rem;color:#ef4444;margin-left:4px}.map-dropdown-wrap{position:relative}.map-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:2000;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 4px 16px #00000059;min-width:200px;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.map-dropdown__item{display:block;width:100%;padding:9px 14px;text-align:left;border:none;background:transparent;font-size:.83rem;color:var(--text-primary);cursor:pointer;transition:background .12s}.map-dropdown__item:hover{background:var(--accent-soft)}.bookmark-panel{position:absolute;top:60px;right:12px;z-index:1300;width:320px;max-height:calc(100% - 72px);background:#fff;border-radius:14px;box-shadow:0 4px 32px #00000038;color:#111827;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}.bookmark-panel__header{display:flex;justify-content:space-between;align-items:center;padding:13px 14px 11px;border-bottom:1px solid #f1f5f9;flex-shrink:0}.bookmark-panel__header h4{margin:0;font-size:.95rem;font-weight:700;color:#111827}.bookmark-form{padding:12px 14px 10px;border-bottom:1px solid #f1f5f9;flex-shrink:0}.bookmark-field-label{display:block;font-size:.7rem;font-weight:600;color:#6b7280;margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em}.bookmark-required{color:#ef4444}.bookmark-name-input{width:100%;padding:7px 10px;border-radius:8px;border:1px solid #e5e7eb;background:#f9fafb;font:inherit;font-size:.83rem;color:#111827;box-sizing:border-box;margin-bottom:8px}.bookmark-name-input::placeholder{color:#9ca3af}.bookmark-name-input:focus{outline:none;border-color:#4e78ff;background:#fff;box-shadow:0 0 0 3px #4e78ff1a}.bookmark-form__actions{display:flex;gap:6px}.btn-bm-submit{display:flex;align-items:center;gap:5px;flex:1;justify-content:center;padding:7px 14px;border-radius:8px;border:none;background:#22c55e;color:#fff;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-bm-submit:hover{background:#16a34a}.btn-bm-clear{padding:7px 12px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font:inherit;font-size:.82rem;cursor:pointer;transition:all .15s}.btn-bm-clear:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.bookmark-search-row{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid #f1f5f9;flex-shrink:0;background:#f9fafb}.bookmark-search-icon{color:#9ca3af;flex-shrink:0}.bookmark-search{flex:1;border:none;outline:none;font:inherit;font-size:.83rem;color:#111827;background:transparent}.bookmark-search::placeholder{color:#9ca3af}.bookmark-table{flex:1;overflow-y:auto;min-height:0}.bookmark-table__head{padding:6px 14px;background:#f9fafb;font-size:.68rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid #f1f5f9;position:sticky;top:0}.bookmark-empty{padding:28px 14px;text-align:center;color:#9ca3af;font-size:.82rem;line-height:1.6}.bookmark-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid #f8fafc;cursor:pointer;transition:background .12s;gap:10px}.bookmark-row:hover{background:#f0f4ff}.bookmark-row__icon{width:32px;height:32px;border-radius:8px;background:#eff6ff;border:1px solid #dbeafe;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}.bookmark-row__info{flex:1;min-width:0}.bookmark-row__name{font-size:.84rem;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bookmark-row__coords{font-size:.69rem;color:#9ca3af;margin-top:2px}.bookmark-row__zoom{display:inline-block;margin-left:5px;background:#eff6ff;color:#3b82f6;border-radius:4px;padding:0 4px;font-size:.66rem;font-weight:700}.bookmark-row__delete{border:none;background:transparent;color:#d1d5db;cursor:pointer;font-size:13px;padding:4px 6px;border-radius:5px;line-height:1;flex-shrink:0;transition:all .12s}.bookmark-row__delete:hover{color:#ef4444;background:#fee2e2}.bookmark-footer{display:flex;align-items:center;gap:8px;padding:8px 14px;border-top:1px solid #f1f5f9;flex-shrink:0;background:#f9fafb}.bookmark-pagesizes{display:flex;gap:3px}.pagesz-btn{padding:3px 8px;border-radius:5px;border:1px solid #e5e7eb;background:#fff;font-size:.72rem;color:#6b7280;cursor:pointer;transition:all .12s}.pagesz-btn:hover{border-color:#d1d5db;color:#374151}.pagesz-btn--active{background:#4e78ff;color:#fff;border-color:#4e78ff}.bookmark-pageinfo{font-size:.72rem;color:#9ca3af;flex:1;text-align:center;white-space:nowrap}.bookmark-pagenav{display:flex;gap:3px}.pagenum-btn{width:24px;height:24px;border-radius:50%;border:1px solid #e5e7eb;background:#fff;color:#6b7280;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .12s}.pagenum-btn:hover{border-color:#d1d5db;color:#374151}.pagenum-btn--active{background:#4e78ff;color:#fff;border-color:#4e78ff}.report-body{border:1px solid rgba(78,120,255,.3);border-radius:0 12px 12px;background:var(--bg-surface);overflow:hidden;display:flex;flex-direction:column;min-height:400px}.report-body__toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border)}.report-search{padding:6px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.82rem;width:200px}.report-table-wrap{flex:1;overflow:auto}.report-table{width:100%;border-collapse:collapse;font-size:.82rem}.report-table th{text-align:left;padding:9px 12px;font-size:.71rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-surface);white-space:nowrap}.report-table td{padding:9px 12px;border-bottom:1px solid var(--border)}.report-table tr:hover td{background:#4e78ff0d}.expand-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0 4px;font-size:.88rem}.report-empty{padding:40px;text-align:center;color:var(--text-muted)}.view-downloads{font-size:.82rem;color:#4e78ff;cursor:pointer;text-decoration:underline}.ft-datetime-popper{z-index:99999!important}.ft-datetime-popper .react-datepicker{border:1px solid var(--border-strong);font-family:inherit;background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ft-datetime-popper .react-datepicker__header{background:var(--bg-elevated);border-bottom:1px solid var(--border-strong)}.ft-datetime-popper .react-datepicker__current-month,.ft-datetime-popper .react-datepicker__day-name,.ft-datetime-popper .react-datepicker__day,.ft-datetime-popper .react-datepicker__time-list-item{color:var(--text-primary)}.ft-datetime-popper .react-datepicker__day--outside-month{color:var(--text-faint)}.ft-datetime-popper .react-datepicker__day:hover{background:var(--bg-elevated)}.ft-datetime-popper .react-datepicker__day--selected,.ft-datetime-popper .react-datepicker__day--keyboard-selected,.ft-datetime-popper .react-datepicker__time-list-item--selected{background-color:var(--accent)!important;color:var(--accent-mark-text)!important}.ft-datetime-popper .react-datepicker__day--disabled{color:var(--text-faint);opacity:.4}.ft-datetime-popper .react-datepicker__navigation-icon:before{border-color:var(--text-muted)}.ft-datetime-popper .react-datepicker__time-container{border-left:1px solid var(--border-strong)}.ft-datetime-popper .react-datepicker__time-box{background:var(--bg-surface)}.ft-daterange-trigger{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border:1px solid var(--border-strong);border-radius:8px;background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.85rem;cursor:pointer;font-variant-numeric:tabular-nums}.ft-daterange-trigger:hover,.ft-daterange-trigger[aria-expanded=true]{border-color:var(--accent-border)}.ft-daterange-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ft-daterange-trigger svg{color:var(--text-muted);flex-shrink:0}.ft-daterange-trigger__preset{padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:700}.ft-daterange-pop{position:fixed;z-index:99999;display:flex;max-width:calc(100vw - 16px);overflow:auto;background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 8px 28px #00000029}.ft-daterange-presets{display:flex;flex-direction:column;gap:2px;width:140px;flex-shrink:0;padding:8px;border-right:1px solid var(--border)}.ft-daterange-preset{text-align:left;padding:7px 10px;border:none;border-radius:6px;background:transparent;color:var(--text-primary);font:inherit;font-size:.82rem;cursor:pointer}.ft-daterange-preset:hover{background:var(--bg-elevated)}.ft-daterange-preset.is-active{background:var(--accent);color:var(--accent-mark-text);font-weight:700}.ft-daterange-preset:focus-visible,.ft-daterange-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ft-daterange-cal{display:flex;flex-direction:column}.ft-daterange-cal .react-datepicker{border:none;font-family:inherit;background:transparent}.ft-daterange-cal .react-datepicker__month-container{padding:6px 10px}.ft-daterange-cal .react-datepicker__header{background:transparent;border-bottom:none}.ft-daterange-cal .react-datepicker__current-month,.ft-daterange-cal .react-datepicker__day-name,.ft-daterange-cal .react-datepicker__day{color:var(--text-primary)}.ft-daterange-cal .react-datepicker__day--outside-month{color:var(--text-faint)}.ft-daterange-cal .react-datepicker__day:hover{background:var(--bg-elevated)}.ft-daterange-cal .react-datepicker__day--in-range,.ft-daterange-cal .react-datepicker__day--in-selecting-range{background-color:var(--accent-soft)!important;color:var(--text-primary)!important}.ft-daterange-cal .react-datepicker__day--range-start,.ft-daterange-cal .react-datepicker__day--range-end,.ft-daterange-cal .react-datepicker__day--selected,.ft-daterange-cal .react-datepicker__day--selecting-range-start{background-color:var(--accent)!important;color:var(--accent-mark-text)!important}.ft-daterange-cal .react-datepicker__day--keyboard-selected{background-color:transparent}.ft-daterange-cal .react-datepicker__navigation-icon:before{border-color:var(--text-muted)}.ft-daterange-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--border)}.ft-daterange-time{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-muted);font-weight:600}.ft-daterange-time input{height:30px;padding:0 8px;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg-input);color:var(--text-input);font:inherit;font-size:.82rem}.ft-daterange-summary{flex:1;min-width:170px;font-size:.78rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.ft-daterange-summary.is-error{color:#ef4444}.ft-daterange-btn{height:30px;padding:0 14px;border-radius:6px;border:1px solid var(--border-strong);background:transparent;color:var(--text-secondary);font:inherit;font-size:.82rem;cursor:pointer}.ft-daterange-btn--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-mark-text);font-weight:700}.ft-daterange-btn:disabled{opacity:.45;cursor:not-allowed}.cg{display:flex;flex-direction:column;gap:10px;min-width:0}.cg-toolbar{display:flex;align-items:center;gap:8px}.cg-toolbar__info{flex:1;font-size:.78rem;color:var(--text-muted)}.cg-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-strong);border-radius:8px;background:var(--bg-surface);cursor:pointer}.cg-icon-btn:disabled{opacity:.45;cursor:not-allowed}.cg-search{display:flex;align-items:center;gap:6px;width:260px;max-width:100%;height:34px;padding:0 8px;background:var(--bg-input);border:1px solid var(--border-strong);border-radius:8px;color:var(--text-muted)}.cg-search:focus-within{border-color:var(--accent)}.cg-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text-input);font:inherit;font-size:.85rem}.cg-search__clear{display:inline-flex;padding:2px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:4px}.cg-scroll{overflow:auto;max-height:max(320px,calc(100vh - 430px));background:var(--bg-surface);border:1px solid var(--border);border-radius:10px}.cg-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.82rem;color:var(--text-primary)}.cg-table thead{position:sticky;top:0;z-index:2}.cg-table th{padding:8px 10px;text-align:left;white-space:nowrap;font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--grid-head-bg);border-bottom:1px solid var(--border)}.cg-th{display:flex;align-items:center;gap:6px}.cg-th__label{flex:1}.cg-sort{display:inline-flex;align-items:center;gap:4px;padding:0;border:none;background:none;cursor:pointer;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;white-space:nowrap}.cg-sort:hover,.cg-sort:focus-visible{color:var(--text-primary)}.cg-sort__icon{color:var(--accent);flex-shrink:0}.cg-funnel{display:inline-flex;align-items:center;justify-content:center;padding:3px;border:none;border-radius:4px;background:transparent;color:var(--text-faint);cursor:pointer;flex-shrink:0}.cg-funnel:hover,.cg-funnel:focus-visible{color:var(--text-secondary);background:var(--bg-elevated)}.cg-funnel.is-active{color:var(--accent)}.cg-table td{padding:8px 10px;border-bottom:1px solid var(--border);white-space:nowrap;vertical-align:middle}.cg-table tbody tr:nth-child(2n) td{background:var(--bg-elevated)}.cg-table tbody tr:hover td{background:var(--accent-soft)}.cg-row--clickable{cursor:pointer}.cg-empty{text-align:center;padding:36px 16px!important;color:var(--text-muted);white-space:normal!important}.cg-muted{color:var(--text-muted)}.cg-filter-pop{position:fixed;z-index:99999;width:240px;display:flex;flex-direction:column;background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 8px 28px #00000029}.cg-filter-list{list-style:none;margin:0;padding:6px;max-height:280px;overflow:auto}.cg-filter-item{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:4px;cursor:pointer;font-size:.8rem;color:var(--text-primary);text-transform:none;letter-spacing:normal;font-weight:400;white-space:nowrap}.cg-filter-item:hover{background:var(--bg-elevated)}.cg-filter-item--all{font-weight:600;border-bottom:1px solid var(--border);border-radius:0;margin-bottom:2px}.cg-filter-foot{display:flex;justify-content:flex-end;gap:6px;padding:8px;border-top:1px solid var(--border)}.cg-filter-search{display:flex;align-items:center;gap:6px;margin:8px 8px 0;padding:0 8px;height:30px;border:1px solid var(--border-strong);border-radius:6px;color:var(--text-muted);cursor:text}.cg-filter-search:focus-within{border-color:var(--accent)}.cg-filter-search input{flex:1;min-width:0;height:100%;border:0;outline:none;background:transparent;font:inherit;font-size:.8rem;color:var(--text-primary)}.cg-filter-empty{padding:8px 6px;font-size:.8rem;color:var(--text-muted)}.cg-btn{height:28px;padding:0 12px;border-radius:6px;border:1px solid var(--border-strong);background:transparent;color:var(--text-secondary);font:inherit;font-size:.8rem;cursor:pointer}.cg-btn--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-mark-text);font-weight:700}.cg-btn:disabled{opacity:.45;cursor:not-allowed}.cg-btn:focus-visible,.cg-funnel:focus-visible,.cg-icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cg--compact{gap:8px}.cg--compact .cg-toolbar__info{font-size:.76rem}.cg--compact .cg-icon-btn,.cg--compact .cg-search{height:30px}.cg--compact .cg-icon-btn{width:30px}.cg--compact .cg-scroll{max-height:max(320px,calc(100vh - 300px))}.cg--compact .cg-table{font-size:calc(.73rem + 1px);font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}.cg--compact .cg-table th{padding:7px 12px;background:var(--grid-head-bg);color:var(--text-secondary);font-weight:700;font-size:.66rem;letter-spacing:.04em;border-bottom:1px solid var(--border)}.cg--compact .cg-table td{padding:4px 12px;color:var(--text-primary)}.cg--compact .cg-table tbody tr:nth-child(2n) td{background:transparent}.cg--compact .cg-table tbody tr:hover td{background:var(--accent-soft)}.cg--report{gap:8px}.cg--report .cg-toolbar__info{font-size:.76rem}.cg--report .cg-icon-btn,.cg--report .cg-search{height:30px}.cg--report .cg-icon-btn{width:30px}.cg--report .cg-scroll{max-height:max(320px,calc(100vh - 290px))}.cg--report .cg-table{table-layout:fixed;font-family:IBM Plex Sans Condensed,Arial Narrow,Inter,system-ui,sans-serif;font-weight:300;font-size:12.5px;line-height:1.35;font-variant-numeric:tabular-nums}.cg--report .cg-table th{height:34px;padding:4px 8px;vertical-align:bottom;background:var(--grid-head-bg);font-weight:500;font-size:11.5px;line-height:1.15;letter-spacing:0;text-transform:none;color:var(--text-secondary);border-bottom:1px solid var(--accent);white-space:normal}.cg--report .cg-table th .cg-sort{white-space:normal}.cg--report .cg-table th[aria-sort=ascending],.cg--report .cg-table th[aria-sort=descending]{color:var(--accent)}.cg--report .cg-table td{height:28px;padding:4px 8px;vertical-align:middle;color:var(--text-primary);white-space:normal}.cg--report .cg-table tbody tr:nth-child(2n) td{background:transparent}.cg--report .cg-table tbody tr:hover td{background:var(--accent-soft)}.cg--report .cg-table td:first-child{font-weight:500}.cg--report .cg-cell{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg--report .cg-k-wide .cg-cell{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cg--report .cg-k-num,.cg--report .cg-k-duration{text-align:right}.cg--report .cg-k-action{text-align:center}.cg--report .cg-k-num .cg-th,.cg--report .cg-k-duration .cg-th{justify-content:flex-end}@media (max-width: 1024px){.fuel-grid{grid-template-columns:repeat(2,1fr)}.poi-layout,.replay-layout{grid-template-columns:1fr}}@media (max-width: 780px){.fuel-grid{grid-template-columns:1fr}}.vehicle-label-tooltip.leaflet-tooltip{background:#0f172ad9;color:#fff;border:none;box-shadow:none;font-size:9px;font-weight:600;font-family:var(--ft-font);padding:2px 6px;border-radius:3px}.rpt-shell{display:flex;flex-direction:column;height:calc(100vh - 52px);overflow:hidden;background:var(--bg-elevated)}.rpt-filterbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;padding:10px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-strong);box-shadow:0 1px 3px #0000000f}.rpt-field{display:flex;flex-direction:column;gap:4px}.rpt-label{font-size:.65rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.rpt-label .req{color:#e35d5d;margin-left:2px}.rpt-input,.rpt-select{height:30px;padding:0 10px;background:var(--bg-input);color:var(--text-input);border:1px solid var(--border-strong);border-radius:7px;font-size:.8rem;font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.rpt-input::placeholder{color:var(--text-faint)}.rpt-input:hover,.rpt-select:hover{border-color:var(--accent-border)}.rpt-input:focus,.rpt-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.rpt-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.rpt-btn-search{height:30px;padding:0 16px;border-radius:7px;border:none;background:var(--accent-gradient);color:var(--accent-mark-text);font-weight:700;font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:6px;box-shadow:0 2px 10px var(--accent-soft);transition:transform .12s ease,box-shadow .12s ease}.rpt-btn-search:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px var(--accent-soft)}.rpt-btn-search:active:not(:disabled){transform:translateY(0)}.rpt-btn-search:disabled{background:var(--border-strong);color:var(--text-faint);cursor:not-allowed;box-shadow:none}.rpt-vdrop{position:absolute;top:calc(100% + 4px);left:0;z-index:9000;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:10px;max-height:240px;overflow-y:auto;width:230px;box-shadow:0 10px 28px #00000029}.rpt-vdrop-item{padding:7px 12px;cursor:pointer;font-size:.82rem;color:var(--text-primary);transition:background .1s}.rpt-vdrop-item:hover{background:var(--accent-soft)}.rpt-vdrop-item:not(.all){display:flex;align-items:center;gap:8px}.rpt-vdot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.rpt-vdrop-item.active{color:var(--accent);background:var(--accent-soft);font-weight:600}.rpt-vdrop-item.all{color:var(--text-muted);font-style:italic;border-bottom:1px solid var(--border)}.rpt-tabs{display:flex;gap:4px;padding:0 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-strong);overflow-x:auto;flex-shrink:0}.rpt-tab{display:flex;align-items:center;gap:7px;padding:8px 6px;cursor:pointer;flex-shrink:0;font-size:.8rem;font-weight:600;color:var(--text-muted);border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.rpt-tab:hover{color:var(--text-primary)}.rpt-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.rpt-tab-close{color:var(--text-faint);display:flex;opacity:.7;transition:opacity .15s,color .15s}.rpt-tab-close:hover{opacity:1;color:var(--text-primary)}.rpt-toolbar{display:flex;align-items:center;gap:10px;padding:7px 20px;background:var(--bg-elevated);border-bottom:1px solid var(--border-strong);flex-shrink:0}.rpt-btn-export{display:flex;align-items:center;gap:6px;padding:5px 12px;border-radius:7px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;font-size:.78rem;font-weight:600;transition:border-color .15s,background .15s}.rpt-btn-export:hover:not(:disabled){border-color:var(--accent-border);background:var(--accent-soft)}.rpt-btn-export:disabled{color:var(--text-faint);cursor:not-allowed}.rpt-table-wrap{flex:1;overflow:auto;background:var(--bg-surface)}.rpt-table{width:100%;border-collapse:collapse;font-size:.82rem}.rpt-table thead tr{background:var(--bg-elevated);position:sticky;top:0;z-index:1}.rpt-table th{padding:11px 14px;text-align:left;font-weight:700;font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-strong);white-space:nowrap;background:var(--bg-elevated)}.rpt-table td{padding:9px 14px;color:var(--text-primary);vertical-align:middle;white-space:nowrap;border-bottom:1px solid var(--border)}.rpt-table tbody tr:nth-child(2n){background:var(--bg-elevated)}.rpt-table tbody tr:hover{background:var(--accent-soft)!important}.rpt-empty-cell{padding:64px 16px;text-align:center;color:var(--text-faint);font-size:.88rem}.vehicle-label-tooltip.leaflet-tooltip:before{display:none}.leaflet-control-attribution{font-size:9px;line-height:1.4;padding:0 4px;background:#ffffff8c;color:#6b7280}.leaflet-control-attribution a{color:#6b7280;text-decoration:none}.leaflet-control-attribution:hover{background:#ffffffe6}[data-theme=dark] .leaflet-control-attribution,.dark .leaflet-control-attribution{background:#1118278c;color:#9ca3af}[data-theme=dark] .leaflet-control-attribution a,.dark .leaflet-control-attribution a{color:#9ca3af}.leaflet-layer.ft-tiles-dark{filter:invert(1) hue-rotate(180deg) brightness(.95) contrast(.9) saturate(.6)}.nb-page{--nb-ok: #22c55e;--nb-danger: #f87171}[data-theme=light] .nb-page{--nb-ok: #15803d;--nb-danger: #dc2626}.nb-body{flex:1;min-height:0;display:flex;overflow:hidden}.nb-body .map-wrap{min-width:0;order:1}.nb-map-host{position:absolute;top:0;right:0;bottom:0;left:0}.nb-filter-bar__end{margin-left:auto;display:flex;align-items:center;gap:16px}.nb-filter-bar__end .map-legend-bar__updated{margin-left:0}.nb-panel-switch{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;color:var(--text-secondary);white-space:nowrap}.map-overlay.nb-search{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:8px;padding:10px 12px}.nb-search__row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.nb-search__field{position:relative;display:flex;align-items:center}.nb-search__field>svg{position:absolute;left:9px;color:var(--text-muted);pointer-events:none}.map-overlay.nb-search .map-search-input{width:200px;padding-left:28px}.nb-search .btn.small.secondary{background:var(--bg-input)}.nb-radius{display:flex;align-items:center;gap:10px;font-size:.78rem;color:var(--text-secondary)}.nb-radius label{flex:1;display:flex;align-items:center;gap:10px;font-weight:600}.nb-radius input[type=range]{flex:1;min-width:150px;accent-color:var(--accent);cursor:pointer}.nb-radius input[type=range]:disabled{opacity:.45;cursor:not-allowed}.nb-radius__value{min-width:56px;text-align:right;font-weight:800;color:var(--text-primary);font-variant-numeric:tabular-nums}.nb-search__error{margin:0;font-size:.76rem;font-weight:600;color:var(--nb-danger)}.nb-search__hint{margin:0;max-width:420px;font-size:.74rem;color:var(--text-muted)}.nb-job{display:inline-block;flex-shrink:0;width:10px;height:10px;border-radius:2px;background:var(--job-color);vertical-align:middle}.nb-job--none{background:transparent;border:1.5px solid var(--text-faint)}.nb-job-cell{display:inline-flex;align-items:center;gap:6px}.nb-legend{position:absolute;left:12px;bottom:52px;z-index:1000;display:grid;grid-template-columns:repeat(2,auto);gap:4px 14px;padding:8px 10px;background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 4px 14px #0000002e}.nb-legend__title{grid-column:1 / -1;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.nb-legend__item{display:inline-flex;align-items:center;gap:6px;font-size:.66rem;font-weight:600;letter-spacing:.03em;color:var(--text-secondary);white-space:nowrap}.nb-ctx{position:absolute;z-index:1400;min-width:210px;padding:4px;background:var(--bg-surface);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 8px 24px #00000047}.nb-ctx__item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:7px;background:transparent;color:var(--text-primary);font:inherit;font-size:.82rem;font-weight:600;text-align:left;cursor:pointer}.nb-ctx__item:hover,.nb-ctx__item:focus-visible{background:var(--accent-soft);color:var(--accent);outline:none}.nb-monitor{width:300px;flex-shrink:0;min-height:0;max-height:calc(100vh - 150px);order:2;display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--ft-surface-sunken);border-left:1px solid var(--border)}.nb-monitor__scroll{flex:1;min-height:0;overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--bg-surface)}.nb-monitor__table{width:100%;border-collapse:separate;border-spacing:0;font-size:.78rem;color:var(--text-primary)}.nb-monitor__table th{position:sticky;top:0;z-index:1;padding:5px 2px;text-align:center;background:var(--ft-surface-sunken);border-bottom:1px solid var(--border)}.nb-monitor__table td{padding:5px 2px;text-align:center;vertical-align:middle;border-bottom:1px solid var(--border)}.nb-monitor__table .nb-monitor__vehicle{text-align:left;padding-left:10px}.nb-monitor__table th.nb-monitor__vehicle{font-size:.66rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.nb-monitor__table tbody tr:hover td,.nb-monitor__table tbody tr.is-selected td{background:var(--accent-soft)}.nb-monitor__sort{display:inline-flex;padding:4px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer}.nb-monitor__sort:hover,.nb-monitor__sort:focus-visible{color:var(--text-primary);background:var(--bg-elevated);outline:none}.nb-monitor__sort.is-active{color:var(--accent)}.nb-monitor__foot{margin:0;font-size:.7rem;color:var(--text-muted)}.nb-monitor .cg-search{flex-shrink:0}.nb-state{display:inline-flex;vertical-align:middle}.nb-online{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--text-faint);vertical-align:middle}.nb-online--on{background:var(--nb-ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--nb-ok) 22%,transparent)}.nb-link{padding:0;border:none;background:none;font:inherit;font-weight:600;text-align:left;color:var(--accent);cursor:pointer;overflow-wrap:anywhere}.nb-link:hover{text-decoration:underline}.nb-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.nb-results{flex-shrink:0;background:var(--ft-surface-sunken);border-top:1px solid var(--border-strong)}.nb-results__head{width:100%;display:flex;align-items:center;gap:14px;padding:8px 16px;border:none;background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.nb-results__head:hover{background:var(--bg-surface)}.nb-results__head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.nb-results__title{display:inline-flex;align-items:center;gap:8px;font-size:.84rem;font-weight:700}.nb-results__count{min-width:24px;padding:1px 8px;border-radius:999px;text-align:center;background:var(--accent-soft);color:var(--accent);font-size:.78rem;font-weight:800;font-variant-numeric:tabular-nums}.nb-results__point{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.nb-results__chevron{margin-left:auto;color:var(--text-muted)}.nb-results__body{padding:0 16px 10px}.nb-status{display:inline-flex;align-items:center;gap:6px;font-weight:600}.nb-status:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--status-color, var(--text-faint))}.nb-chip{display:inline-block;padding:1px 9px;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border)}.nb-chip--yes{color:var(--nb-ok);border-color:color-mix(in srgb,var(--nb-ok) 40%,transparent);background:color-mix(in srgb,var(--nb-ok) 12%,transparent)}.cg-table td.nb-num{text-align:right;font-variant-numeric:tabular-nums}.cg-table td.nb-location{white-space:normal;min-width:220px;max-width:380px}@media (max-width: 900px){.nb-monitor,.nb-panel-switch,.nb-legend{display:none}}.gv-page{color:var(--text-primary)}.gv-page .cg{margin-top:0;padding:0 0 24px}.gv-status{display:inline-flex;align-items:center;gap:6px;font-weight:600}.gv-status:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--status-color, var(--text-faint))}.gv-elapsed-wrap{display:inline-flex;align-items:center;gap:8px}.gv-elapsed{display:inline-block;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums}.gv-elapsed--warning{background:#eab30829;color:#b45309}.gv-elapsed--danger{background:#dc262624;color:#dc2626}[data-theme=light] .gv-elapsed--warning{background:#eab30824;color:#92400e}.cg-table td.gv-num{text-align:right;font-variant-numeric:tabular-nums}.cg-table td.gv-location{white-space:normal;min-width:220px;max-width:380px}.ft-ip-count-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:20px;border:none;font-size:.7rem;font-weight:700;font-family:inherit;cursor:pointer;background:#e0e7ff;color:#4338ca;transition:background .12s}.ft-ip-count-chip:hover{background:#c7d2fe}.ft-ip-count-chip:active{background:#a5b4fc}[data-theme=dark] .ft-ip-count-chip,.dark .ft-ip-count-chip{background:#6366f138;color:#a5b4fc}[data-theme=dark] .ft-ip-count-chip:hover,.dark .ft-ip-count-chip:hover{background:#6366f152}.ft-access-row{display:flex;align-items:center;gap:10px;margin-bottom:16px}.ft-mode-seg{display:inline-flex;padding:3px;border-radius:10px;background:var(--bg-elevated);border:1px solid var(--border)}.ft-mode-seg__btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.ft-mode-seg__btn:hover:not(:disabled){color:var(--text-primary)}.ft-mode-seg__btn:disabled{cursor:not-allowed;opacity:.6}.ft-mode-seg__btn--active{background:var(--accent-gradient);color:var(--accent-mark-text);box-shadow:0 2px 8px var(--accent-soft)}.ft-mode-seg__btn--active:hover:not(:disabled){color:var(--accent-mark-text)}.ft-access-section-label{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.82rem;font-weight:700;color:var(--text-primary)}.ft-access-count-badge{padding:1px 8px;border-radius:20px;font-size:.7rem;font-weight:700;background:var(--bg-elevated);color:var(--text-muted)}.ft-access-hint{margin:-6px 0 12px;font-size:.76rem;color:var(--text-muted)}.ft-ip-input-wrap{position:relative;flex:1;display:flex;align-items:center}.ft-ip-input-wrap>svg{position:absolute;left:11px;color:var(--text-faint);pointer-events:none}.ft-ip-input{width:100%;box-sizing:border-box;padding:9px 10px 9px 32px;border-radius:8px;border:1.5px solid var(--border-strong);outline:none;font-size:.85rem;background:var(--bg-input, var(--bg-surface));color:var(--text-primary);transition:border-color .15s,box-shadow .15s}.ft-ip-input:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-soft)}.ft-ip-list{border:1px solid var(--border);border-radius:10px;max-height:220px;overflow-y:auto;background:var(--bg-surface)}.ft-ip-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--border)}.ft-ip-row:last-child{border-bottom:none}.ft-ip-row:hover{background:var(--bg-elevated)}.ft-ip-badge{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0;font-family:SFMono-Regular,Consolas,monospace;font-size:.82rem;color:var(--text-primary)}.ft-ip-badge svg{color:var(--text-faint);flex-shrink:0}.ft-ip-remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;border:1px solid transparent;background:transparent;color:var(--text-faint);cursor:pointer;flex-shrink:0;transition:background .15s,color .15s,border-color .15s}.ft-ip-remove:hover:not(:disabled){background:#fee2e2;border-color:#fecaca;color:#ef4444}[data-theme=dark] .ft-ip-remove:hover:not(:disabled),.dark .ft-ip-remove:hover:not(:disabled){background:#ef444426;border-color:#ef44444d;color:#f87171}.ft-ip-remove:disabled{opacity:.4;cursor:not-allowed}.ft-ip-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 16px;color:var(--text-faint);text-align:center}.ft-ip-empty svg{opacity:.5}.ft-ip-empty p{margin:0;font-size:.8rem;max-width:280px}:root[data-ft-themed] .uw-sidebar{--bg-sidebar: color-mix(in srgb, var(--uw-brand-500) 9%, var(--uw-bg-elevated));--sidebar-border-color: color-mix(in srgb, var(--uw-brand-500) 22%, transparent);--sidebar-hover-bg: color-mix(in srgb, var(--uw-brand-500) 12%, transparent);--sidebar-faint: color-mix(in srgb, var(--uw-brand-500) 55%, var(--uw-text-faint))}:root[data-ft-themed] .uw-sidebar .uw-nav-link--active{background:color-mix(in srgb,var(--uw-brand-500) 18%,transparent);color:var(--uw-brand-600)}:root[data-ft-themed] .uw-sidebar .uw-nav-link--active:before{background:var(--uw-accent)}:root[data-ft-themed][data-theme=dark] .uw-sidebar{--bg-sidebar: color-mix(in srgb, var(--uw-brand-500) 14%, var(--uw-bg-elevated))}:root[data-ft-themed][data-theme=dark] .uw-sidebar .uw-nav-link--active{background:color-mix(in srgb,var(--uw-brand-500) 28%,transparent);color:color-mix(in srgb,var(--uw-brand-500) 45%,#ffffff)}.imp-bar--ending{animation:impBarBlink .8s ease-in-out infinite}@keyframes impBarBlink{0%,to{background-color:#fef3c7}50%{background-color:#fb923c;color:#431407}}@media (prefers-reduced-motion: reduce){.imp-bar--ending{animation:none;background-color:#fdba74!important}}.map-pop{transform-origin:top right;animation:mapPopIn .2s cubic-bezier(.22,1,.36,1)}.map-pop.is-closing{animation:mapPopOut .16s ease-in forwards;pointer-events:none}@keyframes mapPopIn{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:none}}@keyframes mapPopOut{to{opacity:0;transform:translateY(-8px) scale(.97)}}@media (prefers-reduced-motion: reduce){.map-pop,.map-pop.is-closing{animation-duration:.01ms}}html,body{font-family:var(--ft-font)}button,input,select,textarea,optgroup,option,label,a,legend,fieldset,table,th,td,caption{font-family:inherit}.leaflet-container,.leaflet-popup-content,.leaflet-tooltip,.leaflet-control,.gm-style,.gm-style button,.gm-style input,.gm-style .gm-style-iw,.react-datepicker,.react-datepicker__header,.react-datepicker button,.react-datepicker input{font-family:var(--ft-font)}.uva-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0006}.uva-modal{width:820px;max-width:94vw;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface);border-radius:12px;box-shadow:0 12px 48px #0003;font-family:var(--ft-font);color:var(--text-primary)}.uva-body{flex:1;overflow-y:auto;padding:18px 22px;display:flex;flex-direction:column;gap:18px}.uva-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.uva-section-title{margin:0;display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:700;color:var(--text-primary)}.uva-section-sub{margin:2px 0 0;font-size:.78rem;color:var(--text-muted)}.uva-count{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.uva-count strong{color:var(--text-primary)}.uva-transfer{position:relative;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch}.uva-loader{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;border-radius:10px;background:color-mix(in srgb,var(--bg-surface) 70%,transparent);cursor:progress}.uva-loader__pill{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--bg-surface);border:1px solid var(--border-strong);box-shadow:0 4px 16px #0f172a1f;font-size:.82rem;font-weight:600;color:var(--text-primary)}.uva-loader__pill svg{color:var(--accent)}.uva-list{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border-strong);border-radius:10px;overflow:hidden;background:var(--bg-surface)}.uva-list__head{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--bg-elevated);border-bottom:1px solid var(--border)}.uva-list__title{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary, var(--text-muted))}.uva-check{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.uva-cb{position:relative;display:inline-flex;flex-shrink:0;width:18px;height:18px}.uva-cb__input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.uva-cb__box{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;box-sizing:border-box;border:1.5px solid var(--border-strong);border-radius:5px;background:var(--bg-surface);color:var(--accent-mark-text, #fff);transition:background .12s,border-color .12s;pointer-events:none}.uva-cb:hover .uva-cb__box{border-color:var(--accent)}.uva-cb.is-on .uva-cb__box{background:var(--accent);border-color:var(--accent)}.uva-cb__input:focus-visible+.uva-cb__box{box-shadow:0 0 0 3px var(--accent-soft);border-color:var(--accent)}.uva-cb.is-disabled{opacity:.45}.uva-cb.is-disabled .uva-cb__input{cursor:default}.uva-input{width:100%;box-sizing:border-box;padding:7px 10px;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.82rem;outline:none}.uva-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.uva-input--groups{width:200px;flex-shrink:0}.uva-list__body{height:240px;overflow-y:auto}.uva-row{display:flex;align-items:center;gap:10px;padding:7px 12px;border-bottom:1px solid var(--border);font-size:.84rem;cursor:pointer;-webkit-user-select:none;user-select:none}.uva-row:hover{background:var(--bg-elevated)}.uva-row.is-selected{background:var(--accent-soft)}.uva-row__plate{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em}.uva-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;flex-shrink:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.uva-remove:hover:not(:disabled){background:#ef44441a;color:#ef4444}.uva-remove:disabled{opacity:.5;cursor:default}.uva-arrows{display:flex;flex-direction:column;justify-content:center;gap:8px}.uva-arrow{display:inline-flex;align-items:center;justify-content:center;width:40px;height:36px;padding:0;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-muted);cursor:pointer}.uva-arrow--add{border-color:var(--accent);background:var(--accent);color:var(--accent-mark-text, #fff)}.uva-arrow:disabled{opacity:.45;cursor:default}.uva-tip{margin:8px 0 0;font-size:.74rem;color:var(--text-faint, var(--text-muted))}.uva-empty{margin:0;padding:18px 12px;text-align:center;font-size:.82rem;color:var(--text-faint, var(--text-muted))}.uva-groups{border-top:1px solid var(--border);padding-top:16px}.uva-chips{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;max-height:128px;overflow-y:auto;padding:2px 4px 2px 2px}.uva-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.82rem;font-weight:500;cursor:pointer}.uva-chip:hover:not(:disabled){border-color:var(--accent)}.uva-chip.is-on{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-surface);font-weight:700}.uva-chip:disabled{opacity:.6;cursor:default}.uva-tagged{margin:10px 0 0;font-size:.76rem;color:var(--text-muted)}@keyframes ftmFadeIn{0%{opacity:0}}@keyframes ftmPopIn{0%{opacity:0;scale:.96;translate:0 8px}}@keyframes ftmFadeOut{to{opacity:0}}@keyframes ftmPopOut{to{opacity:0;scale:.96;translate:0 8px}}.ftm-in-backdrop,.ftm-in-wrap{animation:ftmFadeIn .18s ease-out}.ftm-in-box,.ftm-in-wrap>*{animation:ftmPopIn .22s cubic-bezier(.22,1,.36,1)}.ftm-out-backdrop,.ftm-out-wrap{animation:ftmFadeOut .16s ease-in forwards}.ftm-out-box,.ftm-out-wrap>*{animation:ftmPopOut .16s ease-in forwards}@media (prefers-reduced-motion: reduce){.ftm-in-backdrop,.ftm-in-wrap,.ftm-in-box,.ftm-in-wrap>*,.ftm-out-backdrop,.ftm-out-wrap,.ftm-out-box,.ftm-out-wrap>*{animation-duration:.01ms}}.ft-view-toggle{display:inline-flex;align-items:center;gap:2px;padding:2px;height:32px;box-sizing:border-box;border:1px solid var(--border-strong);border-radius:8px;background:var(--bg-surface)}.ft-view-toggle button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:26px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.ft-view-toggle button:hover{color:var(--text-primary);background:var(--bg-elevated)}.ft-view-toggle button.is-on{background:var(--accent-soft);color:var(--accent)}.ft-view-toggle button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.gf-mapview{position:relative;height:calc(100vh - 300px);min-height:420px;border:1px solid var(--border);border-radius:10px;overflow:hidden}.gf-mapview__count{position:absolute;top:12px;left:50%;translate:-50% 0;z-index:500;pointer-events:none;padding:5px 14px;border-radius:999px;background:var(--bg-surface);border:1px solid var(--border-strong);font-size:.78rem;font-weight:600;color:var(--text-primary);box-shadow:0 2px 8px #0000001f}.ft-poi-pin--inactive{opacity:.45}.gf-infobox .leaflet-popup-content{margin:12px 14px;font-family:var(--ft-font)}.gf-infobox__title{font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:8px;padding-right:14px}.gf-infobox__rows{margin:0 0 10px;display:grid;gap:3px}.gf-infobox__row{display:grid;grid-template-columns:92px 1fr;gap:8px;font-size:.76rem;line-height:1.35}.gf-infobox__row dt{color:#64748b;font-weight:600}.gf-infobox__row dd{margin:0;color:#0f172a;overflow-wrap:anywhere}.gf-infobox__edit{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;font-size:.78rem}input[type=search]::-webkit-search-decoration{display:none}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:16px;height:16px;margin-left:6px;border-radius:50%;cursor:pointer;background:center / 10px 10px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E")}input[type=search]::-webkit-search-cancel-button:hover{background-color:#ef44441a;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E")}.gf-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding-bottom:16px}.gf-cards__empty{padding:32px;text-align:center;color:var(--text-muted)}.gf-card{display:flex;flex-direction:column;padding:16px 18px 12px;border-radius:12px;background:var(--bg-surface);border:1px solid var(--border);transition:box-shadow .15s,border-color .15s}.gf-card:hover{border-color:var(--border-strong);box-shadow:0 6px 20px #0f172a14}.gf-card.is-inactive{background:color-mix(in srgb,var(--danger-light, #ffe2e2) 45%,var(--bg-surface))}.gf-card__head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.gf-card__icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;background:var(--accent-soft);color:var(--accent)}.gf-card__icon.is-poi{background:#f0fdf4;color:#15803d}.gf-card__title{flex:1;min-width:0}.gf-card__name{font-size:.92rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gf-card__sub{font-size:.74rem;color:var(--text-muted)}.gf-card__chips{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.gf-card__chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:4px;font-size:.66rem;font-weight:700;letter-spacing:.04em;white-space:nowrap}.gf-card__chip.is-on{background:#16a34a1f;color:#15803d}.gf-card__chip.is-off{background:#ef44441f;color:#b91c1c}.gf-card__chip.is-base{background:#fef3c7;color:#92400e}.gf-card__details{display:flex;flex-direction:column;gap:5px;padding-top:6px;font-size:.8rem;color:var(--text-muted)}.gf-card__row{display:flex;align-items:center;gap:7px;min-width:0}.gf-card__row>svg{flex-shrink:0}.gf-card__row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gf-card__actions{display:flex;justify-content:flex-end;gap:6px;margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.gf-card__details+.gf-card__actions{margin-top:12px}:root{--uw-bg:#f7f9fc;--uw-bg-elevated:#ffffff;--uw-surface:#ffffff;--uw-surface-soft:#f7f9fc;--uw-surface-hover:#edf2f8;--uw-brand-500:#015dc6;--uw-brand-600:#014a9e;--uw-brand-400:#6fb3e3;--uw-brand-50:#e5effc;--uw-accent:#f9621e;--uw-accent-text:#e4510f;--uw-accent-ink:#b8420c;--uw-accent-soft:#fff1ea;--uw-identity-bg:linear-gradient(100deg,#0a3a8a 0%,#015dc6 55%,#1c78e0 100%);--uw-identity-text:#ffffff;--uw-accent-line:linear-gradient(90deg,var(--uw-brand-500),var(--uw-accent));--uw-text-primary:#122440;--uw-text-secondary:#2e3f5e;--uw-text-muted:#55647d;--uw-text-faint:#8a95a8;--uw-border:#dce3ed;--uw-border-strong:#c5cfdd;--uw-border-soft:#e6ebf2;--uw-shadow-md:0 4px 12px rgba(15,23,42,.08),0 2px 4px rgba(15,23,42,.04);--uw-shadow-lg:0 10px 28px rgba(15,23,42,.12),0 4px 10px rgba(15,23,42,.05);--uw-sidebar-w:240px;--uw-sidebar-w-mini:64px;--uw-header-h:56px;--uw-radius-sm:8px;--uw-radius-md:10px;--uw-radius-lg:14px;--uw-radius-xl:18px}:root[data-theme=dark],[data-theme=dark]{--uw-bg:#0a0e1a;--uw-bg-elevated:#131826;--uw-surface:#131826;--uw-surface-soft:#0f1422;--uw-surface-hover:#1a2236;--uw-brand-50:rgba(1,93,198,.18);--uw-accent-text:#ff8a52;--uw-accent-ink:#ffb48a;--uw-accent-soft:rgba(249,98,30,.16);--uw-identity-bg:linear-gradient(100deg,#061f4a 0%,#0a3a8a 60%,#0f4fa8 100%);--uw-text-primary:#e8edf7;--uw-text-secondary:#b6c0d6;--uw-text-muted:#8593b0;--uw-text-faint:#5d6b8a;--uw-border:rgba(255,255,255,.08);--uw-border-strong:rgba(255,255,255,.14);--uw-border-soft:rgba(255,255,255,.05);--uw-shadow-md:0 4px 12px rgba(0,0,0,.4),0 2px 4px rgba(0,0,0,.2);--uw-shadow-lg:0 10px 28px rgba(0,0,0,.55),0 4px 10px rgba(0,0,0,.3)}.uw-shell{display:grid;grid-template-columns:var(--uw-sidebar-w) 1fr;grid-template-rows:1fr;min-height:100vh;transition:grid-template-columns .2s ease}.uw-shell--mini{grid-template-columns:var(--uw-sidebar-w-mini) 1fr}.uw-shell-main{display:flex;flex-direction:column;min-height:100vh;min-width:0}.uw-shell-banner{flex-shrink:0}.uw-content{padding:28px 32px 40px;flex:1;background:var(--bg-page, var(--uw-bg))}.uw-sidebar{display:flex;flex-direction:column;padding:14px 12px;border-right:1px solid var(--sidebar-border-color, var(--uw-border));background:var(--bg-sidebar, var(--uw-bg-elevated));color:var(--sidebar-text, var(--uw-text-primary));position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden}.uw-sidebar::-webkit-scrollbar{width:6px}.uw-sidebar::-webkit-scrollbar-thumb{background:var(--uw-border-strong);border-radius:3px}.uw-brand{display:flex;align-items:center;gap:10px;padding:6px 8px 14px;margin-bottom:6px;border-bottom:1px solid var(--sidebar-border-color, var(--uw-border-soft))}.uw-brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--uw-accent),var(--uw-brand-500));color:#fff;font-size:.95rem;font-weight:700;letter-spacing:-.02em;flex-shrink:0}.uw-brand-mark--img{background:transparent;width:36px;height:36px;display:block}.uw-brand--compact{padding:10px 8px 14px;justify-content:center}.uw-brand--compact .uw-brand-mark,.uw-brand--compact .uw-brand-mark--img{width:100%;max-width:180px;height:64px;border-radius:10px;object-fit:contain;padding:4px 8px}.uw-shell--mini .uw-brand--compact .uw-brand-mark,.uw-shell--mini .uw-brand--compact .uw-brand-mark--img{width:40px;height:40px;padding:2px}.uw-brand-text{display:flex;flex-direction:column;gap:0;min-width:0;overflow:hidden}.uw-brand-text .uw-eyebrow{font-size:.62rem;margin:0;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uw-brand-text h1{font-size:.95rem;margin:0;line-height:1.3;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uw-shell--mini .uw-brand-text{display:none}.uw-shell--mini .uw-brand{justify-content:center}.uw-company-card{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:8px 10px;border-radius:var(--radius-card, 10px);background:var(--sidebar-hover-bg, var(--uw-surface-hover));border:1px solid var(--sidebar-border-color, var(--uw-border-soft));min-width:0}.uw-company-card__mark{flex-shrink:0;border-radius:8px;object-fit:contain;display:block}.uw-company-card--expand{padding:6px}.uw-company-card--expand .uw-company-card__mark{width:100%;height:64px}.uw-company-card--no-fill{background:transparent}.uw-company-card--no-border{border-color:transparent}.uw-company-card__mark--initial{display:grid;place-items:center;font-weight:700;color:#fff;background:var(--uw-brand-500)}.uw-company-card__text{min-width:0;display:flex;flex-direction:column;gap:1px}.uw-company-card__text .uw-eyebrow{margin:0;font-size:.62rem;line-height:1.2}.uw-company-card__name{display:block;font-size:.86rem;font-weight:600;color:var(--sidebar-text, var(--uw-text-primary));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.uw-shell--mini .uw-company-card{padding:4px;justify-content:center;background:transparent;border-color:transparent}.uw-shell--mini .uw-company-card__text{display:none}.uw-nav-section{margin-top:14px}.uw-nav-section:first-of-type{margin-top:6px}.uw-nav-addon-badge{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:1px 7px;border-radius:999px;font-size:.56rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:#fff;background:linear-gradient(135deg,#7c3aed,#ec4899);border:1px solid rgba(255,255,255,.25);box-shadow:0 1px 4px #7c3aed59;vertical-align:middle}.uw-nav-link--locked .uw-nav-link-label{opacity:.72}.uw-nav-lock{margin-left:auto;flex:none;color:var(--sidebar-faint, var(--uw-text-faint))}.uw-shell--mini .uw-nav-lock{position:absolute;right:4px;top:4px;margin:0}.uw-eyebrow,.label{margin:0 8px 6px;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--uw-text-faint);font-weight:600}.uw-sidebar .uw-eyebrow,.uw-sidebar .label{color:var(--sidebar-faint, var(--uw-text-faint))}.uw-shell--mini .uw-eyebrow{opacity:0;height:8px;margin:8px 0 0;pointer-events:none}.nav{display:flex;flex-direction:column;gap:2px}.uw-nav-link{position:relative;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--uw-radius-md);color:var(--sidebar-text, var(--uw-text-secondary));font-size:.875rem;font-weight:500;border:none;background:transparent;text-align:left;cursor:pointer;font-family:inherit;transition:background .12s,color .12s;white-space:nowrap;overflow:hidden}.uw-nav-link,.uw-nav-link:link,.uw-nav-link:visited,.uw-nav-link:hover,.uw-nav-link:focus,.uw-nav-link:active{text-decoration:none}.uw-nav-link:hover{background:var(--sidebar-hover-bg, var(--uw-surface-hover));color:var(--sidebar-text, var(--uw-text-primary))}.uw-nav-link--active{background:var(--sidebar-active-bg, var(--uw-brand-50));color:var(--sidebar-active-color, var(--uw-brand-500));font-weight:600}.uw-nav-link--active:before{content:"";position:absolute;left:-12px;top:6px;bottom:6px;width:3px;border-radius:0 3px 3px 0;background:var(--sidebar-active-indicator, var(--sidebar-text, var(--uw-brand-500)))}.uw-nav-icon{display:grid;place-items:center;width:18px;height:18px;flex-shrink:0;color:currentColor}.uw-nav-link-label{flex:1;overflow:hidden;text-overflow:ellipsis}.uw-shell--mini .uw-nav-link{justify-content:center;padding:8px}.uw-shell--mini .uw-nav-link-label,.uw-shell--mini .uw-nav-link-trail{display:none}.uw-shell--mini .uw-nav-link--active:before{left:0}.uw-nav-link-trail{margin-left:auto;font-size:.7rem;color:var(--uw-text-faint)}.uw-sidebar-footer{margin-top:auto;padding-top:8px;border-top:1px solid var(--sidebar-border-color, var(--uw-border-soft))}.uw-nav-group{margin-top:2px}.uw-nav-group__toggle{width:100%}.uw-nav-group__toggle--active:not([aria-expanded=true]){color:var(--sidebar-active-color, var(--uw-brand-500));font-weight:600}.uw-nav-group__chevron{margin-left:auto;display:grid;place-items:center;color:var(--sidebar-faint, var(--uw-text-faint))}.uw-nav-group--open>.uw-nav-group__toggle{font-weight:600}.uw-nav-group__items{display:flex;flex-direction:column;gap:1px;margin:2px 0 6px 13px;padding-left:10px;border-left:1px solid var(--sidebar-border-color, var(--uw-border-soft))}.uw-nav-link--nested{padding:6px 8px;font-size:.83rem}.uw-nav-link--nested .uw-nav-icon{width:16px;height:16px}.uw-nav-link--nested.uw-nav-link--active:before{left:-11px}.uw-nav-group__eyebrow{margin:8px 8px 4px;font-size:.6rem}.uw-nav-group__eyebrow:first-child{margin-top:2px}.uw-shell--mini .uw-nav-group__chevron,.uw-shell--mini .uw-nav-group__items{display:none}.uw-shell--mini .uw-nav-group__toggle{justify-content:center;padding:8px}.uw-nav-link--external{color:var(--sidebar-faint, var(--uw-text-faint))}.uw-nav-link--external:hover{color:var(--sidebar-text, var(--uw-text-primary))}.uw-nav-link-exit{margin-left:auto;flex:none;opacity:.7}.uw-shell--mini .uw-nav-link-exit{display:none}.uw-shell-header{display:flex;flex-direction:column;background:var(--uw-bg-elevated);position:sticky;top:0;z-index:4000;border-bottom:1px solid var(--navbar-border, var(--uw-border))}.uw-shell-header__primary{display:flex;align-items:center;gap:12px;height:var(--uw-header-h);padding:0 20px;background:var(--bg-navbar, var(--uw-bg-elevated));color:var(--navbar-text, var(--uw-text-primary));box-shadow:inset 0 -3px 0 var(--navbar-accent-line, transparent);position:relative}.uw-shell-header__logo{width:32px;height:32px;border-radius:8px;display:block;flex-shrink:0}.uw-shell-header__divider{width:1px;height:22px;background:var(--navbar-border, var(--uw-border))}.uw-shell-header__search{margin:0 12px;min-width:280px;max-width:360px}.uw-shell-header__company-logo{height:32px;max-width:120px;object-fit:contain;background:#fff;padding:0 8px;border-radius:6px;border:1px solid var(--uw-border-soft)}.uw-shell-header__company-fallback{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,var(--uw-accent),var(--uw-brand-500));color:#fff;font-weight:700;display:inline-grid;place-items:center;font-size:.84rem}.uw-shell-header__identity{display:flex;align-items:center;gap:12px;height:32px;padding:0 20px;background:var(--navbar-identity-bg, var(--uw-identity-bg));color:var(--navbar-identity-text, var(--uw-identity-text));font-size:.78rem}.uw-shell-header__identity-spacer{flex:1}.uw-shell-header__identity-sep{height:18px;width:1px;background:#ffffff2e}.uw-shell-header__accent{position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--navbar-accent-line-gradient, var(--uw-accent-line));pointer-events:none}.apps-launcher{position:relative}.apps-launcher__trigger{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 10px 0 8px;border:1px solid rgba(255,255,255,.35);background:#ffffff1a;border-radius:999px;color:#fff;font:inherit;font-size:.74rem;font-weight:500;cursor:pointer;transition:background .12s,border-color .12s}.apps-launcher__trigger:hover{background:#fff3;border-color:#ffffff8c}.apps-launcher__popover{position:absolute;top:calc(100% + 8px);left:0;width:320px;background:var(--uw-bg-elevated);color:var(--uw-text-primary);border:1px solid var(--uw-border);border-radius:12px;box-shadow:var(--uw-shadow-lg);padding:12px;z-index:30}.apps-launcher__eyebrow{margin:2px 4px 8px;font-size:.66rem;letter-spacing:.08em;color:var(--uw-text-faint);font-weight:700}.apps-launcher__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.apps-launcher__tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border-radius:10px;background:transparent;border:1px solid transparent;cursor:pointer;color:var(--uw-text-primary);text-align:center;font:inherit;transition:background .12s,border-color .12s}.apps-launcher__tile:hover{background:color-mix(in srgb,var(--tile-color, var(--uw-brand-500)) 10%,transparent);border-color:color-mix(in srgb,var(--tile-color, var(--uw-brand-500)) 30%,transparent)}.apps-launcher__tile-mark{width:36px;height:36px;border-radius:9px;background:color-mix(in srgb,var(--tile-color, var(--uw-brand-500)) 14%,transparent);color:var(--tile-color, var(--uw-brand-500));display:grid;place-items:center;overflow:hidden;flex-shrink:0}.apps-launcher__tile-name{font-size:.72rem;font-weight:500;line-height:1.2;color:var(--uw-text-secondary)}.apps-launcher__skeleton{height:60px;border-radius:10px;background:var(--uw-surface-hover);opacity:.6}.apps-launcher__empty{padding:12px 6px;font-size:.82rem;color:var(--uw-text-muted);text-align:center}.apps-launcher__divider{border-top:1px solid var(--uw-border-soft);margin:8px 4px}.apps-launcher__link{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:8px;border:none;background:transparent;color:var(--uw-brand-500);font:inherit;font-size:.82rem;font-weight:500;cursor:pointer;text-align:left}.apps-launcher__link:hover{background:var(--uw-brand-50)}.role-switcher{position:relative}.role-switcher__trigger{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 10px;border:1px solid rgba(255,255,255,.35);background:#ffffff1a;border-radius:999px;color:#fff;font:inherit;font-size:.74rem;font-weight:500;cursor:pointer}.role-switcher__trigger:hover:not(:disabled){background:#ffffff24;border-color:#ffffff52}.role-switcher__trigger:disabled{cursor:default;opacity:.9}.role-switcher__popover{position:absolute;top:calc(100% + 8px);right:0;width:320px;max-height:400px;display:flex;flex-direction:column;background:var(--uw-bg-elevated);color:var(--uw-text-primary);border:1px solid var(--uw-border);border-radius:12px;box-shadow:var(--uw-shadow-lg);padding:6px;z-index:30}.role-switcher__search-wrap{position:relative;flex-shrink:0;margin:2px 2px 6px}.role-switcher__search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--uw-text-muted);pointer-events:none}.role-switcher__search{width:100%;height:30px;padding:0 10px 0 28px;border:1px solid var(--uw-border);border-radius:8px;background:var(--uw-bg-elevated);color:inherit;font:inherit;font-size:.8rem}.role-switcher__search:focus{outline:none;border-color:var(--uw-brand-500)}.role-switcher__options{overflow-y:auto;flex:1;min-height:0}.role-switcher__empty{padding:14px 10px;font-size:.8rem;color:var(--uw-text-muted);text-align:center}.role-switcher__option{display:flex;align-items:flex-start;gap:10px;width:100%;padding:8px 10px;border-radius:8px;background:transparent;border:none;cursor:pointer;text-align:left}.role-switcher__option:hover{background:var(--uw-surface-hover)}.role-switcher__option--active{background:var(--uw-brand-50)}.role-switcher__radio{width:14px;height:14px;border-radius:50%;margin-top:2px;border:1px solid var(--uw-border-strong);background:transparent;flex-shrink:0}.role-switcher__radio--active{border:4px solid var(--uw-brand-500);background:#fff}.role-switcher__option-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.role-switcher__option-label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600}.role-switcher__option-scope{font-size:.74rem;color:var(--uw-text-muted)}.role-switcher__active-pill{font-size:.62rem;color:var(--uw-brand-500);font-weight:700;letter-spacing:.06em}.role-switcher__status-pill{font-size:.6rem;font-weight:700;letter-spacing:.06em;padding:1px 6px;border-radius:999px;background:var(--uw-warn-bg, #fef3c7);color:var(--uw-warn-fg, #92400e)}.profile-menu{position:relative}.profile-menu__trigger{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 8px;background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;color:var(--uw-text-primary);font:inherit;font-size:.84rem}.profile-menu__trigger:hover{background:var(--uw-surface-hover)}.profile-menu__trigger--dark{height:22px;padding:0;border-radius:999px;color:#fff;font-size:.74rem}.profile-menu__trigger--dark .profile-menu__avatar{box-shadow:0 0 0 1.5px #ffffffbf}.profile-menu__trigger--dark:hover{background:transparent;opacity:.8}.profile-menu__avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--uw-accent),var(--uw-brand-500));color:#fff;font-weight:700;font-size:.7rem;display:inline-grid;place-items:center}.profile-menu__avatar--sm{width:20px;height:20px;font-size:.6rem}.profile-menu__name{white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.profile-menu__name--strong{font-weight:500}.profile-menu__company{white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;padding-right:8px;margin-right:2px;border-right:1px solid rgba(255,255,255,.35);font-weight:600}.profile-menu__header .profile-menu__company-line{font-weight:600;color:var(--uw-text, inherit)}@media (max-width: 720px){.profile-menu__company{display:none}}.profile-menu__role-tag{display:inline-flex;align-items:center;height:18px;padding:0 8px;border-radius:6px;border:1px solid rgba(255,255,255,.6);background:#ffffff24;color:#fff;font-size:.66rem;font-weight:600;letter-spacing:.02em;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.profile-menu__header .profile-menu__default-home{font-size:.72rem;color:var(--uw-text-faint, var(--uw-text-muted));margin-top:2px}.profile-menu__landing{padding:8px 12px 10px}.profile-menu__landing label{display:block;font-size:.72rem;color:var(--uw-text-muted);margin-bottom:4px}.shell-select{position:relative}.shell-select__box{display:flex;align-items:stretch;width:100%;padding:0;overflow:hidden;border:1px solid var(--uw-border-strong);border-radius:6px;background:var(--uw-surface);color:var(--uw-text-primary);font:inherit;font-size:.8rem;text-align:left;cursor:pointer}.shell-select__box:focus-visible{outline:none;border-color:var(--uw-brand-500);box-shadow:0 0 0 3px var(--uw-brand-50)}.shell-select__value{flex:1;min-width:0;padding:7px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-select__chevron{display:flex;align-items:center;padding:0 9px;flex-shrink:0;border-left:1px solid var(--uw-border-strong);color:var(--uw-text-muted)}.shell-select__list{position:absolute;top:calc(100% + 3px);left:0;right:0;z-index:40;max-height:220px;overflow-y:auto;background:var(--uw-bg-elevated);border:1px solid var(--uw-border-strong);border-radius:6px;box-shadow:0 4px 16px #0f172a2e}.shell-select__option{padding:7px 10px;font-size:.8rem;color:var(--uw-text-primary);cursor:pointer}.shell-select__option.is-active{background:var(--uw-surface-hover)}.shell-select__option.is-selected{color:var(--uw-brand-500);font-weight:700}.profile-menu__popover{position:absolute;top:calc(100% + 8px);right:0;width:240px;background:var(--uw-bg-elevated);color:var(--uw-text-primary);border:1px solid var(--uw-border);border-radius:12px;box-shadow:var(--uw-shadow-lg);padding:6px;z-index:30}.profile-menu__header{padding:8px 10px 10px;border-bottom:1px solid var(--uw-border-soft);margin-bottom:4px;display:flex;flex-direction:column;gap:2px}.profile-menu__header strong{font-size:.86rem}.profile-menu__header span{font-size:.74rem;color:var(--uw-text-muted)}.profile-menu__roles{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.profile-menu__role-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;border:1px solid var(--uw-border);background:var(--uw-surface-hover);color:var(--uw-text-muted);font-size:.68rem;font-weight:500;cursor:default}button.profile-menu__role-badge{cursor:pointer;font:inherit}button.profile-menu__role-badge:hover{background:var(--uw-brand-50)}.profile-menu__role-badge--active{border-color:var(--uw-brand-500);background:var(--uw-brand-50);color:var(--uw-brand-500);font-weight:700}.profile-menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:8px;border:none;background:transparent;color:var(--uw-text-primary);font:inherit;font-size:.84rem;cursor:pointer;text-align:left}.profile-menu__item:hover{background:var(--uw-surface-hover)}.profile-menu__item--danger{color:#b91c1c}.profile-menu__item--danger:hover{background:#b91c1c14}.breadcrumbs-section{color:var(--navbar-muted, var(--uw-text-muted));font-weight:500}.breadcrumbs-page{background:linear-gradient(90deg,var(--uw-brand-500),#7c3aed);-webkit-background-clip:text;background-clip:text;color:var(--navbar-breadcrumb-color, transparent);font-weight:700}.uw-icon-btn{display:grid;place-items:center;width:32px;height:32px;border:none;background:transparent;border-radius:8px;color:var(--uw-text-secondary);cursor:pointer;transition:background .12s,color .12s}.uw-icon-btn:hover{background:var(--uw-surface-hover);color:var(--uw-text-primary)}.breadcrumbs{display:flex;align-items:center;gap:6px;font-size:.875rem;color:var(--navbar-muted, var(--uw-text-muted));min-width:0}.breadcrumbs strong{color:var(--navbar-text, var(--uw-text-primary));font-weight:600}.breadcrumbs-sep{color:var(--navbar-faint, var(--uw-text-faint));-webkit-user-select:none;user-select:none;font-size:.7rem}.uw-shell-header__right{margin-left:auto;display:flex;align-items:center;gap:6px}.uw-shell-header__primary .uw-icon-btn{color:var(--navbar-text, var(--uw-text-secondary))}.uw-shell-header__primary .uw-icon-btn:hover{background:var(--navbar-hover-bg, var(--uw-surface-hover));color:var(--navbar-text, var(--uw-text-primary))}.cmd-trigger{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 10px 0 12px;border-radius:8px;border:1px solid var(--navbar-border, var(--uw-border));background:var(--navbar-search-bg, var(--uw-surface-soft));color:var(--navbar-muted, var(--uw-text-muted));font:inherit;font-size:.82rem;cursor:pointer;min-width:200px;transition:border-color .12s,background .12s}.cmd-trigger:hover{background:var(--navbar-hover-bg, var(--uw-surface-hover));border-color:var(--navbar-border, var(--uw-border-strong))}.cmd-trigger-label{flex:1;text-align:left}.uw-kbd{display:inline-flex;align-items:center;padding:1px 6px;border-radius:4px;background:var(--uw-bg-elevated);border:1px solid var(--uw-border);font-family:inherit;font-size:.7rem;color:var(--uw-text-muted);line-height:1.4}[data-theme=dark] .cmd-overlay{background:#0009}[data-theme=dark] .uw-kbd{background:var(--uw-surface-soft)}[data-theme=dark] .uw-nav-link--active{color:#93c5fd}[data-theme=dark] .uw-nav-link--active:before{background:var(--sidebar-active-indicator, #93c5fd)}[data-theme=dark] .module-badge{color:#93c5fd}.tenant-switcher{position:relative}.tenant-switcher__trigger{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 8px 0 10px;border-radius:8px;border:1px solid var(--uw-border);background:var(--uw-surface-soft);color:var(--uw-text-primary);font:inherit;font-size:.82rem;font-weight:500;cursor:pointer;transition:border-color .12s,background .12s}.tenant-switcher__trigger:hover{background:var(--uw-surface-hover);border-color:var(--uw-border-strong)}.tenant-switcher__trigger[aria-expanded=true]{background:var(--uw-surface-hover);border-color:var(--uw-brand-500)}.tenant-switcher__label{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tenant-switcher__menu{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:var(--uw-surface);border:1px solid var(--uw-border);border-radius:10px;padding:6px;box-shadow:var(--uw-shadow-md);z-index:30}.tenant-switcher__section-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--uw-text-muted);padding:6px 8px 4px}.tenant-switcher__current,.tenant-switcher__item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:6px;border:none;background:transparent;font:inherit;font-size:.84rem;color:var(--uw-text-primary);text-align:left;cursor:pointer}.tenant-switcher__current{cursor:default;color:var(--uw-brand-500);font-weight:600}.tenant-switcher__item:hover{background:var(--uw-surface-hover)}.tenant-switcher__divider{height:1px;background:var(--uw-border-soft);border:none;margin:4px 2px}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0f172a52;display:flex;justify-content:center;align-items:flex-start;padding-top:96px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cmdk-panel{width:640px;max-width:calc(100vw - 32px);background:var(--uw-surface);border-radius:14px;box-shadow:var(--uw-shadow-lg);overflow:hidden;border:1px solid var(--uw-border)}.cmdk-input-row{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--uw-border-soft);color:var(--uw-text-muted)}.cmdk-input{flex:1;border:none;background:transparent;outline:none;font:inherit;font-size:1rem;color:var(--uw-text-primary)}.cmdk-list{padding:6px 8px 12px;max-height:480px;overflow:auto}.cmdk-empty{padding:24px;text-align:center;color:var(--uw-text-muted);font-size:.86rem}.cmdk-group{padding:0;margin-top:4px}[cmdk-group-heading]{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--uw-text-faint);font-weight:600;padding:10px 12px 6px}.cmdk-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.cmdk-item[data-selected=true],.cmdk-item:hover{background:var(--uw-brand-50)}.cmdk-icon{width:26px;height:26px;border-radius:6px;display:grid;place-items:center;flex-shrink:0;font-size:.74rem;font-weight:700;color:#fff}.cmdk-icon--user{background:linear-gradient(135deg,#a855f7,var(--uw-brand-500))}.cmdk-icon--brand{background:linear-gradient(135deg,var(--uw-accent),var(--uw-brand-500))}.cmdk-icon--purple{background:#a855f724;color:#a855f7}.cmdk-icon--cyan{background:#11c7d724;color:var(--uw-accent)}.cmdk-icon--green{background:#22c55e24;color:#16a34a}.cmdk-icon--amber{background:#f59e0b24;color:#b45309}.cmdk-icon--red{background:#ef444424;color:#b91c1c}.cmdk-icon--neutral{background:var(--uw-surface-hover);color:var(--uw-text-secondary)}.cmdk-who{flex:1;display:flex;flex-direction:column;min-width:0}.cmdk-who strong{font-size:.88rem;color:var(--uw-text-primary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-secondary{font-size:.74rem;color:var(--uw-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-secondary code{font-size:.74rem;padding:0 4px}.cmdk-trail{font-size:.74rem;color:var(--uw-text-faint);white-space:nowrap}.cmdk-foot{display:flex;gap:14px;padding:10px 14px;border-top:1px solid var(--uw-border-soft);font-size:.74rem;color:var(--uw-text-faint)}.cmdk-foot .uw-kbd{color:var(--uw-text-muted)}.shortcut-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0f172a52;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.shortcut-card{width:540px;max-width:calc(100vw - 32px);max-height:80vh;background:var(--uw-surface);border-radius:14px;box-shadow:var(--uw-shadow-lg);border:1px solid var(--uw-border);display:flex;flex-direction:column}.shortcut-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--uw-border-soft)}.shortcut-body{padding:14px 18px;overflow:auto}.shortcut-group{margin-bottom:14px}.shortcut-group:last-child{margin-bottom:0}.shortcut-eyebrow{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--uw-text-faint);font-weight:600;margin:0 0 6px}.shortcut-list{list-style:none;margin:0;padding:0}.shortcut-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0}.shortcut-desc{font-size:.86rem;color:var(--uw-text-secondary)}.shortcut-keys{display:inline-flex;gap:3px;align-items:center}.shortcut-foot{padding:10px 14px;border-top:1px solid var(--uw-border-soft);font-size:.74rem;color:var(--uw-text-faint)}
