@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--color-gray-200)}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:var(--color-gray-400)}input::placeholder,textarea::placeholder{opacity:1;color:var(--color-gray-400)}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-bottom-1{bottom:-.25rem}.-right-0\.5{right:-.125rem}.-right-1{right:-.25rem}.-right-1\.5{right:-.375rem}.-right-2{right:-.5rem}.-top-0\.5{top:-.125rem}.-top-1\.5{top:-.375rem}.-top-2{top:-.5rem}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.bottom-4{bottom:1rem}.bottom-6{bottom:1.5rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-2\.5{right:.625rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-16{top:4rem}.top-2{top:.5rem}.top-4{top:1rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[10050\]{z-index:10050}.z-\[100\]{z-index:100}.z-\[101\]{z-index:101}.z-\[102\]{z-index:102}.z-\[110\]{z-index:110}.z-\[120\]{z-index:120}.z-\[1\]{z-index:1}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2 / span 2}.-m-1{margin:-.25rem}.m-0{margin:0}.m-16{margin:4rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-2\.5{margin-left:.625rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-\[15rem\]{margin-left:15rem}.ml-auto{margin-left:auto}.mr-0\.5{margin-right:.125rem}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-7{margin-top:1.75rem}.mt-auto{margin-top:auto}.box-border{box-sizing:border-box}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[16px\]{height:16px}.h-\[26px\]{height:26px}.h-\[28px\]{height:28px}.h-\[58px\]{height:58px}.h-\[calc\(100\%-4rem\)\]{height:calc(100% - 4rem)}.h-\[calc\(100dvh-5\.5rem\)\]{height:calc(100dvh - 5.5rem)}.h-\[calc\(100vh-13rem\)\]{height:calc(100vh - 13rem)}.h-\[calc\(100vh-4\.5rem\)\]{height:calc(100vh - 4.5rem)}.h-\[var\(--header-height\)\]{height:var(--header-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-40{max-height:10rem}.max-h-44{max-height:11rem}.max-h-48{max-height:12rem}.max-h-52{max-height:13rem}.max-h-56{max-height:14rem}.max-h-60{max-height:15rem}.max-h-72{max-height:18rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[280px\]{max-height:280px}.max-h-\[420px\]{max-height:420px}.max-h-\[480px\]{max-height:480px}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.\!min-h-0{min-height:0px!important}.min-h-0{min-height:0px}.min-h-28{min-height:7rem}.min-h-32{min-height:8rem}.min-h-40{min-height:10rem}.min-h-64{min-height:16rem}.min-h-96{min-height:24rem}.min-h-\[1\.25rem\]{min-height:1.25rem}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[140px\]{min-height:140px}.min-h-\[240px\]{min-height:240px}.min-h-\[28px\]{min-height:28px}.min-h-\[30px\]{min-height:30px}.min-h-\[88px\]{min-height:88px}.min-h-\[var\(--sidebar-row-height\)\]{min-height:var(--sidebar-row-height)}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[26px\]{width:26px}.w-\[28px\]{width:28px}.w-\[4\.25rem\]{width:4.25rem}.w-\[7\.5rem\]{width:7.5rem}.w-\[min\(92vw\,22rem\)\]{width:min(92vw,22rem)}.w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.\!min-w-\[4rem\]{min-width:4rem!important}.min-w-0{min-width:0px}.min-w-\[1\.25rem\]{min-width:1.25rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[11rem\]{min-width:11rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[140px\]{min-width:140px}.min-w-\[14rem\]{min-width:14rem}.min-w-\[160px\]{min-width:160px}.min-w-\[16px\]{min-width:16px}.min-w-\[16rem\]{min-width:16rem}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-\[20px\]{min-width:20px}.min-w-\[220px\]{min-width:220px}.min-w-\[6\.5rem\]{min-width:6.5rem}.min-w-\[7rem\]{min-width:7rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[9\.5rem\]{min-width:9.5rem}.min-w-\[9rem\]{min-width:9rem}.min-w-full{min-width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-6xl{max-width:72rem}.max-w-\[10rem\]{max-width:10rem}.max-w-\[12rem\]{max-width:12rem}.max-w-\[14rem\]{max-width:14rem}.max-w-\[16rem\]{max-width:16rem}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[84\%\]{max-width:84%}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\[2\]{flex:2}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[4fr\,1fr\]{grid-template-columns:4fr 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-px{gap:1px}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1\.5{row-gap:.375rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){border-color:var(--color-gray-100)}.divide-gray-200>:not([hidden])~:not([hidden]){border-color:var(--color-gray-200)}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded-\[10px\]{border-radius:10px}.rounded-\[8px\]{border-radius:8px}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-b-\[12px\]{border-bottom-right-radius:12px;border-bottom-left-radius:12px}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rounded-t{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[\#E5E9EF\]{--tw-border-opacity: 1;border-color:rgb(229 233 239 / var(--tw-border-opacity, 1))}.border-\[\#EEF1F4\]{--tw-border-opacity: 1;border-color:rgb(238 241 244 / var(--tw-border-opacity, 1))}.border-\[\#f0f3f6\]{--tw-border-opacity: 1;border-color:rgb(240 243 246 / var(--tw-border-opacity, 1))}.border-\[var\(--color-border\)\]{border-color:var(--color-border)}.border-\[var\(--color-border-strong\)\]{border-color:var(--color-border-strong)}.border-amber-100{--tw-border-opacity: 1;border-color:rgb(254 243 199 / var(--tw-border-opacity, 1))}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-border{border-color:var(--color-border)}.border-border-strong{border-color:var(--color-border-strong)}.border-danger{border-color:var(--color-danger)}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-50{border-color:var(--color-gray-50)}.border-green-100{--tw-border-opacity: 1;border-color:rgb(220 252 231 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-500\/30{border-color:#22c55e4d}.border-primary{border-color:var(--color-primary)}.border-primary-150{border-color:var(--color-primary-150)}.border-red-100{--tw-border-opacity: 1;border-color:rgb(254 226 226 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-rose-300{--tw-border-opacity: 1;border-color:rgb(253 164 175 / var(--tw-border-opacity, 1))}.border-sky-200{--tw-border-opacity: 1;border-color:rgb(186 230 253 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-400{--tw-border-opacity: 1;border-color:rgb(250 204 21 / var(--tw-border-opacity, 1))}.border-t-transparent{border-top-color:transparent}.bg-\[\#0F172A\]{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-\[\#E5E9EF\]{--tw-bg-opacity: 1;background-color:rgb(229 233 239 / var(--tw-bg-opacity, 1))}.bg-\[\#F5F7F9\]{--tw-bg-opacity: 1;background-color:rgb(245 247 249 / var(--tw-bg-opacity, 1))}.bg-\[\#F5F7F9\]\/50{background-color:#f5f7f980}.bg-\[\#F5F7F9\]\/60{background-color:#f5f7f999}.bg-\[\#F7F8FA\]{--tw-bg-opacity: 1;background-color:rgb(247 248 250 / var(--tw-bg-opacity, 1))}.bg-\[\#f2f8f3\]{--tw-bg-opacity: 1;background-color:rgb(242 248 243 / var(--tw-bg-opacity, 1))}.bg-\[\#f7f8fa\]{--tw-bg-opacity: 1;background-color:rgb(247 248 250 / var(--tw-bg-opacity, 1))}.bg-\[var\(--color-danger-soft\)\]{background-color:var(--color-danger-soft)}.bg-\[var\(--color-icon-well\)\]{background-color:var(--color-icon-well)}.bg-\[var\(--color-primary-50\)\]{background-color:var(--color-primary-50)}.bg-\[var\(--color-secondary-soft\)\]{background-color:var(--color-secondary-soft)}.bg-\[var\(--color-success-soft\)\]{background-color:var(--color-success-soft)}.bg-\[var\(--color-warning-soft\)\]{background-color:var(--color-warning-soft)}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-50\/80{background-color:#fffbebcc}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-black{background-color:var(--color-black)}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-50\/40{background-color:#eff6ff66}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-border{background-color:var(--color-border)}.bg-current{background-color:currentColor}.bg-cyan-100{--tw-bg-opacity: 1;background-color:rgb(207 250 254 / var(--tw-bg-opacity, 1))}.bg-danger{background-color:var(--color-danger)}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-gray-700{background-color:var(--color-gray-700)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-950\/95{background-color:#030712f2}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-400\/20{background-color:#4ade8033}.bg-green-400\/40{background-color:#4ade8066}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-input-bg{background-color:var(--color-input-bg)}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-primary{background-color:var(--color-primary)}.bg-primary-100{background-color:var(--color-primary-100)}.bg-primary-50{background-color:var(--color-primary-50)}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-50\/80{background-color:#fef2f2cc}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-rose-100{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1))}.bg-rose-50{--tw-bg-opacity: 1;background-color:rgb(255 241 242 / var(--tw-bg-opacity, 1))}.bg-rose-500{--tw-bg-opacity: 1;background-color:rgb(244 63 94 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:var(--color-secondary)}.bg-sky-100{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1))}.bg-sky-50{--tw-bg-opacity: 1;background-color:rgb(240 249 255 / var(--tw-bg-opacity, 1))}.bg-sky-50\/80{background-color:#f0f9ffcc}.bg-sky-500{--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-400{--tw-bg-opacity: 1;background-color:rgb(148 163 184 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-50\/80{background-color:#f8fafccc}.bg-success{background-color:var(--color-success)}.bg-surface{background-color:var(--color-surface)}.bg-surface-2{background-color:var(--color-surface-2)}.bg-surface-elevated{background-color:var(--color-surface-elevated)}.bg-surface-hover{background-color:var(--color-surface-hover)}.bg-teal-100{--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1))}.bg-text-muted{background-color:var(--color-text-muted)}.bg-transparent{background-color:transparent}.bg-warning{background-color:var(--color-warning)}.bg-white{background-color:var(--color-white)}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-70{--tw-bg-opacity: .7}.bg-opacity-90{--tw-bg-opacity: .9}.bg-\[radial-gradient\(ellipse_at_top_right\,_var\(--color-primary-100\)\,_transparent_55\%\)\]{background-image:radial-gradient(ellipse at top right,var(--color-primary-100),transparent 55%)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[\#F5F7F9\]{--tw-gradient-from: #F5F7F9 var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 247 249 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-400{--tw-gradient-from: #4ade80 var(--tw-gradient-from-position);--tw-gradient-to: rgb(74 222 128 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-green-600{--tw-gradient-from: #16a34a var(--tw-gradient-from-position);--tw-gradient-to: rgb(22 163 74 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-green-700{--tw-gradient-to: rgb(21 128 61 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #15803d var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-white{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--color-white) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-yellow-400{--tw-gradient-to: rgb(250 204 21 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #facc15 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-\[var\(--color-primary-50\)\]{--tw-gradient-to: var(--color-primary-50) var(--tw-gradient-to-position)}.to-emerald-700{--tw-gradient-to: #047857 var(--tw-gradient-to-position)}.to-red-400{--tw-gradient-to: #f87171 var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.\!p-0{padding:0!important}.\!p-2{padding:.5rem!important}.\!p-2\.5{padding:.625rem!important}.\!p-3{padding:.75rem!important}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.\!px-1\.5{padding-left:.375rem!important;padding-right:.375rem!important}.\!px-2{padding-left:.5rem!important;padding-right:.5rem!important}.\!px-3{padding-left:.75rem!important;padding-right:.75rem!important}.\!py-0{padding-top:0!important;padding-bottom:0!important}.\!py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.\!py-2\.5{padding-top:.625rem!important;padding-bottom:.625rem!important}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pl-0{padding-left:0}.pl-0\.5{padding-left:.125rem}.pl-10{padding-left:2.5rem}.pl-2\.5{padding-left:.625rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-10{padding-right:2.5rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-6{padding-right:1.5rem}.pr-9{padding-right:2.25rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.\!text-\[10px\]{font-size:10px!important}.\!text-\[11px\]{font-size:11px!important}.\!text-\[12px\]{font-size:12px!important}.\!text-xs{font-size:var(--font-size-xs)!important;line-height:1.3!important}.text-2xl{font-size:var(--font-size-2xl);line-height:1.25}.text-\[0\.62rem\]{font-size:.62rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.6rem\]{font-size:.6rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[9px\]{font-size:9px}.text-base{font-size:var(--font-size-base);line-height:1.4}.text-lg{font-size:var(--font-size-lg);line-height:1.35}.text-sm{font-size:var(--font-size-sm);line-height:1.35}.text-xl{font-size:var(--font-size-xl);line-height:1.3}.text-xs{font-size:var(--font-size-xs);line-height:1.3}.\!font-semibold{font-weight:600!important}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.\!uppercase{text-transform:uppercase!important}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.\!tracking-wider{letter-spacing:.05em!important}.tracking-\[0\.04em\]{letter-spacing:.04em}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.\!text-slate-500{--tw-text-opacity: 1 !important;color:rgb(100 116 139 / var(--tw-text-opacity, 1))!important}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-\[var\(--color-text-secondary\)\]{color:var(--color-text-secondary)}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-cyan-600{--tw-text-opacity: 1;color:rgb(8 145 178 / var(--tw-text-opacity, 1))}.text-danger{color:var(--color-danger)}.text-emerald-600{--tw-text-opacity: 1;color:rgb(5 150 105 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-emerald-800{--tw-text-opacity: 1;color:rgb(6 95 70 / var(--tw-text-opacity, 1))}.text-gray-100{color:var(--color-gray-100)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity, 1))}.text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-on-primary{color:var(--color-on-primary)}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-primary{color:var(--color-primary)}.text-primary-dark{color:var(--color-primary-dark)}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-rose-500{--tw-text-opacity: 1;color:rgb(244 63 94 / var(--tw-text-opacity, 1))}.text-rose-600{--tw-text-opacity: 1;color:rgb(225 29 72 / var(--tw-text-opacity, 1))}.text-rose-700{--tw-text-opacity: 1;color:rgb(190 18 60 / var(--tw-text-opacity, 1))}.text-rose-800{--tw-text-opacity: 1;color:rgb(159 18 57 / var(--tw-text-opacity, 1))}.text-sky-600{--tw-text-opacity: 1;color:rgb(2 132 199 / var(--tw-text-opacity, 1))}.text-sky-700{--tw-text-opacity: 1;color:rgb(3 105 161 / var(--tw-text-opacity, 1))}.text-sky-800{--tw-text-opacity: 1;color:rgb(7 89 133 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-success{color:var(--color-success)}.text-teal-600{--tw-text-opacity: 1;color:rgb(13 148 136 / var(--tw-text-opacity, 1))}.text-teal-700{--tw-text-opacity: 1;color:rgb(15 118 110 / var(--tw-text-opacity, 1))}.text-text-muted{color:var(--color-text-muted)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-white{color:var(--color-white)}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.no-underline{text-decoration-line:none}.accent-primary{accent-color:var(--color-primary)}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-85{opacity:.85}.opacity-90{opacity:.9}.opacity-\[0\.35\]{opacity:.35}.shadow{--tw-shadow: var(--shadow-md);--tw-shadow-colored: var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_4px_12px_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow: 0 4px 12px rgba(0,0,0,.04);--tw-shadow-colored: 0 4px 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-focus{--tw-shadow: var(--shadow-focus);--tw-shadow-colored: var(--shadow-focus);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: var(--shadow-lg);--tw-shadow-colored: var(--shadow-lg);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: var(--shadow-md);--tw-shadow-colored: var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: var(--shadow-sm);--tw-shadow-colored: var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.\!ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)!important}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-amber-200\/70{--tw-ring-color: rgb(253 230 138 / .7)}.ring-blue-200{--tw-ring-opacity: 1;--tw-ring-color: rgb(191 219 254 / var(--tw-ring-opacity, 1))}.ring-border{--tw-ring-color: var(--color-border)}.ring-emerald-200\/60{--tw-ring-color: rgb(167 243 208 / .6)}.ring-emerald-200\/70{--tw-ring-color: rgb(167 243 208 / .7)}.ring-gray-500{--tw-ring-color: var(--color-gray-500)}.ring-gray-700{--tw-ring-color: var(--color-gray-700)}.ring-primary-150{--tw-ring-color: var(--color-primary-150)}.ring-rose-200\/60{--tw-ring-color: rgb(254 205 211 / .6)}.ring-rose-200\/70{--tw-ring-color: rgb(254 205 211 / .7)}.ring-sky-200\/70{--tw-ring-color: rgb(186 230 253 / .7)}.ring-slate-200\/50{--tw-ring-color: rgb(226 232 240 / .5)}.ring-slate-200\/70{--tw-ring-color: rgb(226 232 240 / .7)}.ring-slate-200\/80{--tw-ring-color: rgb(226 232 240 / .8)}.ring-surface{--tw-ring-color: var(--color-surface)}.ring-white{--tw-ring-color: var(--color-white)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;color-scheme:light}html[data-theme=dark]{color-scheme:dark}body{font-family:var(--font-family);font-size:var(--font-size-base);background-color:var(--color-surface-2);color:var(--color-text-primary);line-height:1.45;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-moz-selection{background:var(--color-primary-150);color:var(--color-text-primary)}::selection{background:var(--color-primary-150);color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--color-text-primary)}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}h4{font-size:var(--font-size-base)}h5{font-size:var(--font-size-sm)}h6{font-size:var(--font-size-xs)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rounded{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:9999px}.shadow{box-shadow:var(--shadow-md)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-none{box-shadow:none}.icon-well{display:inline-flex;align-items:center;justify-content:center;width:var(--icon-well-size);height:var(--icon-well-size);border-radius:var(--radius-md);background:var(--color-icon-well);color:var(--color-text-secondary);flex-shrink:0;transition:background-color .15s ease,color .15s ease}.icon-well--active{background:var(--color-icon-well-active);color:var(--color-primary)}.icon-well--sm{width:22px;height:22px;border-radius:var(--radius-sm)}.file\:mr-2::file-selector-button{margin-right:.5rem}.file\:mr-2\.5::file-selector-button{margin-right:.625rem}.file\:mr-3::file-selector-button{margin-right:.75rem}.file\:mr-4::file-selector-button{margin-right:1rem}.file\:rounded::file-selector-button{border-radius:var(--radius-md)}.file\:rounded-full::file-selector-button{border-radius:9999px}.file\:rounded-lg::file-selector-button{border-radius:var(--radius-lg)}.file\:rounded-md::file-selector-button{border-radius:var(--radius-md)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-\[var\(--color-primary-50\)\]::file-selector-button{background-color:var(--color-primary-50)}.file\:bg-blue-50::file-selector-button{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.file\:bg-primary::file-selector-button{background-color:var(--color-primary)}.file\:bg-slate-100::file-selector-button{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.file\:px-2\.5::file-selector-button{padding-left:.625rem;padding-right:.625rem}.file\:px-3::file-selector-button{padding-left:.75rem;padding-right:.75rem}.file\:px-4::file-selector-button{padding-left:1rem;padding-right:1rem}.file\:py-1\.5::file-selector-button{padding-top:.375rem;padding-bottom:.375rem}.file\:py-2::file-selector-button{padding-top:.5rem;padding-bottom:.5rem}.file\:text-\[11px\]::file-selector-button{font-size:11px}.file\:text-sm::file-selector-button{font-size:var(--font-size-sm);line-height:1.35}.file\:font-medium::file-selector-button{font-weight:500}.file\:font-semibold::file-selector-button{font-weight:600}.file\:text-blue-700::file-selector-button{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.file\:text-primary::file-selector-button{color:var(--color-primary)}.file\:text-slate-700::file-selector-button{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.file\:text-white::file-selector-button{color:var(--color-white)}.placeholder\:text-slate-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.placeholder\:text-slate-400::placeholder{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.placeholder\:text-text-muted::-moz-placeholder{color:var(--color-text-muted)}.placeholder\:text-text-muted::placeholder{color:var(--color-text-muted)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:left-\[2px\]:after{content:var(--tw-content);left:2px}.after\:top-\[2px\]:after{content:var(--tw-content);top:2px}.after\:h-5:after{content:var(--tw-content);height:1.25rem}.after\:w-5:after{content:var(--tw-content);width:1.25rem}.after\:rounded-full:after{content:var(--tw-content);border-radius:9999px}.after\:border:after{content:var(--tw-content);border-width:1px}.after\:border-slate-300:after{content:var(--tw-content);--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.after\:bg-white:after{content:var(--tw-content);background-color:var(--color-white)}.after\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.last\:border-0:last-child{border-width:0px}.last\:border-b-0:last-child{border-bottom-width:0px}.hover\:-translate-y-0\.5:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-border-strong:hover{border-color:var(--color-border-strong)}.hover\:border-green-300:hover{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.hover\:border-primary:hover{border-color:var(--color-primary)}.hover\:border-primary-150:hover{border-color:var(--color-primary-150)}.hover\:border-rose-200:hover{--tw-border-opacity: 1;border-color:rgb(254 205 211 / var(--tw-border-opacity, 1))}.hover\:border-sky-200:hover{--tw-border-opacity: 1;border-color:rgb(186 230 253 / var(--tw-border-opacity, 1))}.hover\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#F5F7F9\]:hover{--tw-bg-opacity: 1;background-color:rgb(245 247 249 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#F5F7F9\]\/50:hover{background-color:#f5f7f980}.hover\:bg-\[\#F5F7F9\]\/80:hover{background-color:#f5f7f9cc}.hover\:bg-\[\#f7f8fa\]:hover{--tw-bg-opacity: 1;background-color:rgb(247 248 250 / var(--tw-bg-opacity, 1))}.hover\:bg-\[var\(--color-primary-50\)\]:hover{background-color:var(--color-primary-50)}.hover\:bg-amber-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:bg-gray-800:hover{background-color:var(--color-gray-800)}.hover\:bg-green-50:hover{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-50:hover{--tw-bg-opacity: 1;background-color:rgb(255 247 237 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-600:hover{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.hover\:bg-primary-100:hover{background-color:var(--color-primary-100)}.hover\:bg-primary-150:hover{background-color:var(--color-primary-150)}.hover\:bg-primary-50:hover{background-color:var(--color-primary-50)}.hover\:bg-red-50:hover{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-rose-50\/60:hover{background-color:#fff1f299}.hover\:bg-sky-50\/60:hover{background-color:#f0f9ff99}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50\/60:hover{background-color:#f8fafc99}.hover\:bg-surface-hover:hover{background-color:var(--color-surface-hover)}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-green-700:hover{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.hover\:text-orange-700:hover{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.hover\:text-primary:hover{color:var(--color-primary)}.hover\:text-primary-dark:hover{color:var(--color-primary-dark)}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:text-slate-600:hover{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.hover\:text-slate-800:hover{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.hover\:text-slate-900:hover{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:text-text-primary:hover{color:var(--color-text-primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-md:hover{--tw-shadow: var(--shadow-md);--tw-shadow-colored: var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: var(--shadow-sm);--tw-shadow-colored: var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:ring-gray-600:hover{--tw-ring-color: var(--color-gray-600)}.hover\:file\:bg-blue-100::file-selector-button:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:file\:bg-gray-200::file-selector-button:hover{background-color:var(--color-gray-200)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-green-500:focus{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.focus\:border-primary:focus{border-color:var(--color-primary)}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-amber-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(251 191 36 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-gray-400:focus{--tw-ring-color: var(--color-gray-400)}.focus\:ring-green-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(74 222 128 / var(--tw-ring-opacity, 1))}.focus\:ring-green-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.focus\:ring-primary:focus{--tw-ring-color: var(--color-primary)}.focus\:ring-primary-150:focus{--tw-ring-color: var(--color-primary-150)}.focus\:ring-red-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary-150:focus-visible{--tw-ring-color: var(--color-primary-150)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:text-gray-400:disabled{color:var(--color-gray-400)}.disabled\:text-slate-400:disabled{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-primary{color:var(--color-primary)}.group:hover .group-hover\:text-text-secondary{color:var(--color-text-secondary)}.group:hover .group-hover\:opacity-100{opacity:1}.peer:checked~.peer-checked\:bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.peer:checked~.peer-checked\:after\:translate-x-full:after{content:var(--tw-content);--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.peer:checked~.peer-checked\:after\:border-white:after{content:var(--tw-content);border-color:var(--color-white)}.peer:focus~.peer-focus\:outline-none{outline:2px solid transparent;outline-offset:2px}.peer:focus~.peer-focus\:ring-4{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.peer:focus~.peer-focus\:ring-green-300{--tw-ring-opacity: 1;--tw-ring-color: rgb(134 239 172 / var(--tw-ring-opacity, 1))}@media (min-width: 640px){.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:col-span-3{grid-column:span 3 / span 3}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:w-36{width:9rem}.sm\:w-40{width:10rem}.sm\:w-56{width:14rem}.sm\:flex-1{flex:1 1 0%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-1\.5{gap:.375rem}.sm\:gap-2{gap:.5rem}.sm\:gap-2\.5{gap:.625rem}.sm\:gap-3{gap:.75rem}.sm\:\!p-3{padding:.75rem!important}.sm\:p-1\.5{padding:.375rem}.sm\:p-2\.5{padding:.625rem}.sm\:p-3{padding:.75rem}.sm\:p-3\.5{padding:.875rem}.sm\:\!px-2\.5{padding-left:.625rem!important;padding-right:.625rem!important}.sm\:\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.sm\:px-2\.5{padding-left:.625rem;padding-right:.625rem}.sm\:px-3{padding-left:.75rem;padding-right:.75rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.sm\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.sm\:pt-4{padding-top:1rem}.sm\:text-left{text-align:left}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-xl{font-size:var(--font-size-xl);line-height:1.3}}@media (min-width: 768px){.md\:inset-auto{inset:auto}.md\:bottom-5{bottom:1.25rem}.md\:right-5{right:1.25rem}.md\:col-span-2{grid-column:span 2 / span 2}.md\:col-span-3{grid-column:span 3 / span 3}.md\:flex{display:flex}.md\:h-80{height:20rem}.md\:h-\[68vh\]{height:68vh}.md\:max-h-\[760px\]{max-height:760px}.md\:min-h-\[300px\]{min-height:300px}.md\:min-h-\[460px\]{min-height:460px}.md\:w-44{width:11rem}.md\:w-\[380px\]{width:380px}.md\:max-w-4xl{max-width:56rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:flex-wrap{flex-wrap:wrap}.md\:items-center{align-items:center}.md\:justify-end{justify-content:flex-end}.md\:justify-between{justify-content:space-between}.md\:rounded-\[14px\]{border-radius:14px}.md\:p-0{padding:0}.md\:p-3{padding:.75rem}}@media (min-width: 1024px){.lg\:static{position:static}.lg\:inset-0{inset:0}.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:mb-1\.5{margin-bottom:.375rem}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-14{width:3.5rem}.lg\:w-8{width:2rem}.lg\:w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)}.lg\:max-w-none{max-width:none}.lg\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:justify-center{justify-content:center}.lg\:overflow-hidden{overflow:hidden}.lg\:object-cover{-o-object-fit:cover;object-fit:cover}.lg\:object-left{-o-object-position:left;object-position:left}.lg\:p-1\.5{padding:.375rem}.lg\:px-1{padding-left:.25rem;padding-right:.25rem}.lg\:px-1\.5{padding-left:.375rem;padding-right:.375rem}}@media (min-width: 1280px){.xl\:col-span-2{grid-column:span 2 / span 2}.xl\:block{display:block}.xl\:w-auto{width:auto}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.xl\:flex-row{flex-direction:row}.xl\:items-center{align-items:center}}@media (min-width: 1536px){.\32xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.\32xl\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}.dark\:bg-blue-950\/20:where([data-theme=dark],[data-theme=dark] *){background-color:#17255433}.dark\:bg-gray-100:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-gray-100)}.dark\:bg-gray-800:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-gray-800)}.dark\:bg-gray-900:where([data-theme=dark],[data-theme=dark] *){background-color:var(--color-gray-900)}.dark\:text-gray-200:where([data-theme=dark],[data-theme=dark] *){color:var(--color-gray-200)}.dark\:text-gray-300:where([data-theme=dark],[data-theme=dark] *){color:var(--color-gray-300)}.dark\:text-gray-900:where([data-theme=dark],[data-theme=dark] *){color:var(--color-gray-900)}.dark\:text-white:where([data-theme=dark],[data-theme=dark] *){color:var(--color-white)}.\[\&\>svg\]\:h-3\.5>svg{height:.875rem}.\[\&\>svg\]\:w-3\.5>svg{width:.875rem}.luna-page{display:flex;flex-direction:column;gap:10px;min-height:100%;box-sizing:border-box}.luna-page--narrow{max-width:720px;margin-left:auto;margin-right:auto;width:100%}.luna-page--wide{max-width:1200px;margin-left:auto;margin-right:auto;width:100%}.luna-panel{background:#fff;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 4px 12px #0000000a;overflow:visible}.luna-panel--flush{padding:0}.luna-panel--pad{padding:10px 12px}.luna-panel__bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid #f0f3f6;background:#f7f8fa;border-top-left-radius:13px;border-top-right-radius:13px}.luna-panel__bar-title{margin:0;font-size:12.5px;font-weight:600;letter-spacing:-.015em;color:#0f172a;line-height:1.3}.luna-panel__body{padding:10px 12px}.luna-panel__body--flush{padding:0}.luna-panel__footer{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;padding:8px 12px;border-top:1px solid #f0f3f6;background:#fff;border-bottom-left-radius:13px;border-bottom-right-radius:13px}.luna-panel--clip{overflow:hidden}.luna-panel--clip>.luna-panel__bar{border-top-left-radius:0;border-top-right-radius:0}.luna-panel--clip>.luna-panel__footer{border-bottom-left-radius:0;border-bottom-right-radius:0}.luna-hero{display:flex;align-items:center;gap:10px;padding:9px 12px;background:#fff;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 4px 12px #0000000a}.luna-hero__back{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:50%;background:transparent;color:#1f2937;cursor:pointer}.luna-hero__back:hover{background:#f3f4f6}.luna-hero__main{flex:1;min-width:0}.luna-hero__title-row{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}.luna-hero__title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.02em;color:#0f172a;line-height:1.25}.luna-hero__subtitle{margin:2px 0 0;font-size:11px;color:#64748b;line-height:1.35}.luna-hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex-shrink:0}.luna-metrics{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width: 640px){.luna-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1100px){.luna-metrics--6{grid-template-columns:repeat(6,minmax(0,1fr))}}.luna-metric{display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 10px;background:#fff;border:1px solid #f0f3f6;border-radius:12px;box-shadow:0 2px 8px #00000008}.luna-metric__label{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;line-height:1.3}.luna-metric__value{font-size:15px;font-weight:600;letter-spacing:-.02em;color:#0f172a;line-height:1.25;font-variant-numeric:tabular-nums}.luna-metric__value--primary{color:#057a16}.luna-metric__hint{font-size:10.5px;color:#94a3b8}.luna-fields{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 640px){.luna-fields{grid-template-columns:1fr}}.luna-field__label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#64748b;margin-bottom:2px}.luna-field__value{font-size:12.5px;color:#0f172a;line-height:1.35;word-break:break-word}.luna-icon-well{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#fff;border:1px solid #e5e9ef;color:#475569}.luna-icon-well--primary{background:#0ca01f14;border-color:#0ca01f2e;color:#057a16}.luna-dock{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;padding:8px 12px;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 -4px 16px #0f172a0f}.luna-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:9999px;font-size:10px;font-weight:600;line-height:1.35;white-space:nowrap;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.luna-pill--success{background:#0ca01f1a;color:#057a16;border-color:#0ca01f33}.luna-pill--warning{background:#f59e0b1f;color:#b45309;border-color:#f59e0b47}.luna-pill--danger{background:#ef44441a;color:#dc2626;border-color:#ef444438}.luna-pill--info{background:#3b82f61a;color:#1d4ed8;border-color:#3b82f638}.luna-pill__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input{font-family:var(--font-family);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background-color:var(--color-input-bg);color:var(--color-text-primary);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;outline:none;width:100%;line-height:1.3}.input:hover:not(:disabled):not(:focus){border-color:var(--color-gray-400)}.input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.input:disabled,.input--disabled{background-color:var(--color-surface-hover);color:var(--color-text-muted);cursor:not-allowed;opacity:.85}.input--sm{padding:3px 9px;font-size:var(--font-size-xs);min-height:var(--control-height-sm);border-radius:var(--radius-sm)}.input--md{padding:5px 10px;font-size:var(--font-size-sm);min-height:var(--control-height-md)}.input--lg{padding:7px 12px;font-size:var(--font-size-base);min-height:var(--control-height-lg);border-radius:var(--radius-md)}.input--error{border-color:var(--color-danger)}.input--error:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-soft)}.input__error{color:var(--color-danger);font-size:var(--font-size-xs);margin-top:1px}.input::-moz-placeholder{color:var(--color-text-muted)}.input::placeholder{color:var(--color-text-muted)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394A3B8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:14px;padding-right:30px;cursor:pointer}.select:disabled{cursor:not-allowed}.textarea{min-height:80px;resize:vertical;line-height:1.45}.textarea.input--sm{min-height:60px}.textarea.input--lg{min-height:108px}.input[type=file]{padding:var(--spacing-sm);cursor:pointer}.input[type=file]::-webkit-file-upload-button{background:var(--color-primary-50);color:var(--color-primary-dark);border:1px solid rgba(12,160,31,.3);padding:3px 8px;border-radius:var(--radius-sm);cursor:pointer;margin-right:var(--spacing-sm);font-size:var(--font-size-xs);font-weight:600}.input[type=file]::-webkit-file-upload-button:hover{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.checkbox-wrapper{display:flex;flex-direction:column;gap:1px}.checkbox{display:inline-flex;align-items:center;gap:7px;font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.checkbox input{position:absolute;opacity:0;width:0;height:0}.checkbox__checkmark{width:15px;height:15px;border:1.5px solid var(--color-border-strong);border-radius:4px;background:var(--color-input-bg);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.checkbox__checkmark:after{content:"";width:3px;height:7px;border:solid var(--color-on-primary);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .12s ease;margin-top:-1px}.checkbox input:checked+.checkbox__checkmark{background:var(--color-primary);border-color:var(--color-primary)}.checkbox input:checked+.checkbox__checkmark:after{transform:rotate(45deg) scale(1)}.checkbox input:focus-visible+.checkbox__checkmark{box-shadow:var(--shadow-focus)}.checkbox:hover:not(.checkbox--disabled) .checkbox__checkmark{border-color:var(--color-primary)}.checkbox--disabled{opacity:.55;cursor:not-allowed}.checkbox--error .checkbox__checkmark{border-color:var(--color-danger)}.checkbox__error{color:var(--color-danger);font-size:var(--font-size-xs);margin-left:22px}.radio-wrapper{display:flex;flex-direction:column;gap:1px}.radio{display:inline-flex;align-items:center;gap:7px;font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.radio input{position:absolute;opacity:0;width:0;height:0}.radio__checkmark{width:15px;height:15px;border:1.5px solid var(--color-border-strong);border-radius:9999px;background:var(--color-input-bg);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.radio__checkmark:after{content:"";width:6px;height:6px;border-radius:9999px;background:var(--color-on-primary);transform:scale(0);transition:transform .12s ease}.radio input:checked+.radio__checkmark{background:var(--color-primary);border-color:var(--color-primary)}.radio input:checked+.radio__checkmark:after{transform:scale(1)}.radio input:focus-visible+.radio__checkmark{box-shadow:var(--shadow-focus)}.radio:hover:not(.radio--disabled) .radio__checkmark{border-color:var(--color-primary)}.radio--disabled{opacity:.55;cursor:not-allowed}.radio--error .radio__checkmark{border-color:var(--color-danger)}.radio__error{color:var(--color-danger);font-size:var(--font-size-xs);margin-left:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-family:var(--font-family);font-weight:500;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s ease,color .15s ease;text-decoration:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;box-shadow:var(--shadow-sm);line-height:1.2;white-space:nowrap}.btn:hover:not(:disabled){transform:translateY(-.5px);box-shadow:var(--shadow-md)}.btn:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn:disabled,.btn--disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}.btn--sm{padding:3px 10px;font-size:var(--font-size-xs);min-height:var(--control-height-sm);border-radius:var(--radius-sm);font-weight:500;letter-spacing:.01em}.btn--md{padding:5px 12px;font-size:var(--font-size-sm);min-height:var(--control-height-md);border-radius:var(--radius-md);font-weight:500}.btn--lg{padding:7px 16px;font-size:var(--font-size-base);min-height:var(--control-height-lg);border-radius:var(--radius-md);font-weight:600}.btn--primary{background:linear-gradient(180deg,var(--color-primary-light) 0%,var(--color-primary) 100%);color:var(--color-on-primary);border-color:var(--color-primary-dark);box-shadow:var(--shadow-primary)}.btn--primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:0 2px 8px #0ca01f47}.btn--secondary{background:var(--color-secondary);color:var(--color-on-primary);border-color:var(--color-secondary);box-shadow:0 1px 2px #64748b2e}.btn--secondary:hover:not(:disabled){background:var(--color-gray-600);border-color:var(--color-gray-600)}.btn--success{background:var(--color-success);color:var(--color-on-primary);border-color:var(--color-success);box-shadow:var(--shadow-primary)}.btn--success:hover:not(:disabled){background:var(--color-success-dark);border-color:var(--color-success-dark)}.btn--warning{background:var(--color-warning);color:var(--color-on-primary);border-color:var(--color-warning);box-shadow:0 1px 2px #f59e0b33}.btn--warning:hover:not(:disabled){background:var(--color-warning-dark);border-color:var(--color-warning-dark)}.btn--danger{background:var(--color-danger);color:var(--color-on-primary);border-color:var(--color-danger);box-shadow:0 1px 2px #ef444433}.btn--danger:hover:not(:disabled){background:var(--color-danger-dark);border-color:var(--color-danger-dark)}.btn--info{background:var(--color-info);color:var(--color-on-primary);border-color:var(--color-info);box-shadow:0 1px 2px #3b82f633}.btn--info:hover:not(:disabled){background:var(--color-info-dark);border-color:var(--color-info-dark)}.btn--outline{background-color:var(--color-surface);border-width:1px;box-shadow:none;color:var(--color-text-secondary);border-color:var(--color-border-strong)}.btn--outline:hover:not(:disabled){background-color:var(--color-surface-hover);color:var(--color-text-primary);border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.btn--outline.btn--primary{color:var(--color-primary-dark);border-color:#0ca01f59;background-color:var(--color-primary-50)}.btn--outline.btn--primary:hover:not(:disabled){background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary);box-shadow:var(--shadow-primary)}.btn--outline.btn--secondary{color:var(--color-secondary);border-color:var(--color-border-strong);background-color:transparent}.btn--outline.btn--secondary:hover:not(:disabled){background:var(--color-secondary);color:var(--color-on-primary);border-color:var(--color-secondary)}.btn--outline.btn--success{color:var(--color-success);border-color:#0ca01f59;background-color:var(--color-success-soft)}.btn--outline.btn--success:hover:not(:disabled){background:var(--color-success);color:var(--color-on-primary);border-color:var(--color-success)}.btn--outline.btn--warning{color:var(--color-warning-dark);border-color:#f59e0b66;background-color:var(--color-warning-soft)}.btn--outline.btn--warning:hover:not(:disabled){background:var(--color-warning);color:var(--color-on-primary);border-color:var(--color-warning)}.btn--outline.btn--danger{color:var(--color-danger);border-color:#ef444459;background-color:var(--color-danger-soft)}.btn--outline.btn--danger:hover:not(:disabled){background:var(--color-danger);color:var(--color-on-primary);border-color:var(--color-danger)}.btn--outline.btn--info{color:var(--color-info);border-color:#3b82f659;background-color:var(--color-info-soft)}.btn--outline.btn--info:hover:not(:disabled){background:var(--color-info);color:var(--color-on-primary);border-color:var(--color-info)}.btn--loading{color:transparent!important}.btn__spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;border:2px solid transparent;border-top:2px solid var(--color-on-primary);border-radius:50%;animation:btn-spin .8s linear infinite}.btn--outline .btn__spinner{border-top-color:currentColor}@keyframes btn-spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.btn--icon{padding:4px;min-width:var(--control-height-md);aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.btn--icon.btn--sm{padding:3px;min-width:var(--control-height-sm);border-radius:var(--radius-sm)}.btn--icon.btn--lg{padding:6px;min-width:var(--control-height-lg);border-radius:var(--radius-md)}.btn__icon{display:inline-flex;align-items:center;justify-content:center;width:var(--icon-size-sm);height:var(--icon-size-sm)}.btn__icon svg{width:100%;height:100%}.btn--md .btn__icon,.btn--lg .btn__icon{width:var(--icon-size-md);height:var(--icon-size-md)}.action-buttons{display:flex;gap:4px;align-items:center}.action-buttons.action-buttons--cluster{display:grid;grid-template-columns:repeat(3,var(--action-btn-size));gap:4px;width:-moz-max-content;width:max-content}.action-buttons .btn{min-width:var(--action-btn-size);width:var(--action-btn-size);height:var(--action-btn-size);padding:3px;border-radius:var(--radius-sm);font-size:11px;display:flex;align-items:center;justify-content:center}.action-buttons .btn__icon{margin:0;width:14px;height:14px}.btn--compact{min-width:26px;width:26px;height:26px;padding:2px;border-radius:var(--radius-sm);font-size:10px}.btn--compact .btn__icon{width:14px;height:14px}.btn-group{display:inline-flex;align-items:center;gap:0}.btn-group>.btn{border-radius:0;box-shadow:none}.btn-group>.btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.btn-group>.btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.btn-group>.btn:only-child{border-radius:var(--radius-md)}.btn-group>.btn:not(:first-child){margin-left:-1px}.card{background-color:var(--color-surface);border-radius:12px;overflow:visible;transition:box-shadow .15s ease,border-color .15s ease}.card--shadow-sm{box-shadow:0 1px 2px #0f172a0a,0 4px 12px #0f172a08}.card--shadow-md{box-shadow:0 2px 4px -1px #0f172a0d,0 6px 16px #0f172a0a}.card--shadow-lg{box-shadow:var(--shadow-lg)}.card--shadow-none{box-shadow:none}.card--bordered{border:1px solid #f0f3f6}.card__header{padding:9px 12px;border-bottom:1px solid #f0f3f6;background-color:var(--color-surface);border-radius:12px 12px 0 0;display:flex;align-items:center;justify-content:space-between;gap:8px}.card__body{padding:10px 12px}.card__footer{padding:7px 12px;border-top:1px solid #f0f3f6;background-color:var(--color-surface-2);border-radius:0 0 12px 12px}@media (max-width: 768px){.card__header,.card__body,.card__footer{padding:9px 10px}}.card__title{margin:0;font-size:12.5px;font-weight:600;letter-spacing:-.015em;color:var(--color-text-primary);line-height:1.3}.card__subtitle{margin:2px 0 0;font-size:11px;color:var(--color-text-muted);line-height:1.35}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.25rem .875rem;position:relative;isolation:isolate;background:radial-gradient(ellipse 90% 55% at 50% -18%,rgba(12,160,31,.12),transparent 58%),radial-gradient(ellipse 50% 38% at 100% 100%,rgba(71,110,150,.06),transparent 55%),linear-gradient(165deg,#f5f7f9,#eef2f4 48%,#f7f8fa)}.auth-shell:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(15,30,45,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(15,30,45,.03) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(ellipse 72% 68% at 50% 42%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 72% 68% at 50% 42%,#000 20%,transparent 75%)}.auth-shell__card-wrap{width:100%;max-width:400px;position:relative;z-index:1}.auth-shell__card{overflow:hidden;border-radius:10px;border:1px solid #e5e9ef!important;box-shadow:0 4px 16px #0f172a0f,0 1px 2px #0f172a0a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fff}.auth-shell__header{text-align:center;padding:1.25rem 1.35rem .9rem;border-bottom:1px solid #e5e9ef;background:linear-gradient(180deg,#fff,#f5f7f9);position:relative}.auth-shell__header:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#0a8a1a,#0ca01f,#2ec240)}.auth-shell__brand{margin:0 0 .4rem;font-size:.625rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0ca01f;line-height:1.2}.auth-shell__logo{display:block;height:2.5rem;width:auto;margin:0 auto .55rem}.auth-shell__title{margin:0;font-size:1.05rem;font-weight:600;color:#0f172a;line-height:1.3;letter-spacing:-.01em}.auth-shell__subtitle{margin:.25rem 0 0;font-size:11px;color:#64748b;line-height:1.4}.auth-shell__body.card__body{padding:1rem 1.35rem 1.15rem}.auth-shell__footer{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e9ef;text-align:center}.auth-shell__footer p{margin:0}.auth-shell__link{color:#0ca01f;font-weight:600;text-decoration:none;transition:color .15s ease}.auth-shell__link:hover{color:#0a8a1a}.auth-shell__link:disabled,.auth-shell__link[disabled]{color:#94a3b8;cursor:not-allowed}.auth-shell__meta{font-size:11px;color:#64748b}.auth-shell__label{display:block;font-size:11px;font-weight:600;color:#64748b;margin-bottom:.2rem}.auth-shell__field{position:relative}.auth-shell__toggle{position:absolute;right:.625rem;top:calc(var(--control-height-sm, 2rem) / 2);transform:translateY(-50%);color:#94a3b8;background:none;border:none;padding:0;cursor:pointer;line-height:0;z-index:1}.auth-shell__toggle:hover{color:#64748b}.auth-shell__toggle svg{width:1rem;height:1rem}@media (prefers-reduced-motion: reduce){.auth-shell__link{transition:none}}.container{padding:10px;background:transparent}@media (min-width: 768px){.container{padding:12px}}@media (max-width: 768px){.container{padding:8px}}.grid{display:grid;gap:var(--spacing-md)}.row{display:flex;flex-wrap:wrap;margin:0 calc(-1 * var(--spacing-md))}.col{flex:1;padding:0 var(--spacing-md)}.col--1{flex:0 0 8.333333%}.col--2{flex:0 0 16.666667%}.col--3{flex:0 0 25%}.col--4{flex:0 0 33.333333%}.col--5{flex:0 0 41.666667%}.col--6{flex:0 0 50%}.col--7{flex:0 0 58.333333%}.col--8{flex:0 0 66.666667%}.col--9{flex:0 0 75%}.col--10{flex:0 0 83.333333%}.col--11{flex:0 0 91.666667%}.col--12{flex:0 0 100%}@media (max-width: 768px){.col{flex:0 0 100%;margin-bottom:var(--spacing-md)}}.table-container{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;background-color:var(--color-surface);border:none;border-radius:0;box-shadow:none;scrollbar-width:thin;scrollbar-color:var(--color-gray-300) transparent}.table-container::-webkit-scrollbar{height:6px}.table-container::-webkit-scrollbar-track{background:transparent}.table-container::-webkit-scrollbar-thumb{background:var(--color-gray-300);border-radius:999px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--color-gray-400)}.table-container--framed{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.table-container--framed .table-container__scroll{overflow-x:auto}.table{width:100%;border-collapse:separate;border-spacing:0;background-color:var(--color-surface);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary)}.table--default{border:none}.table--striped .table__row:nth-child(2n){background-color:var(--color-surface-2)}.table__row[style*=--row-bg-color]{background-color:var(--row-bg-color)!important}.table--bordered .table__cell,.table--bordered .table__header{border:1px solid var(--color-border)}.table__row{transition:background-color .14s ease,box-shadow .14s ease}.table--hover .table__row:hover{background-color:var(--color-primary-50)!important}.table--hover .table__row[style*=--row-bg-color]:hover{filter:brightness(.985);background-color:var(--row-bg-color)!important}.table--hover .table__row:hover .table__cell{color:var(--color-text-primary)}.table__header{position:sticky;top:0;z-index:3;background:linear-gradient(180deg,var(--color-surface-2) 0%,color-mix(in srgb,var(--color-surface-2) 85%,var(--color-surface)) 100%);font-weight:600;color:var(--color-text-muted);text-align:left;padding:10px 14px;border-bottom:1px solid var(--color-border);font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;box-shadow:0 1px 0 0 var(--color-border)}.table thead tr .table__header{box-shadow:inset 0 -1px 0 var(--color-border),inset 0 -2px color-mix(in srgb,var(--color-primary) 18%,transparent)}.table__cell{padding:10px 14px;border-bottom:1px solid color-mix(in srgb,var(--color-border) 85%,transparent);color:var(--color-text-primary);vertical-align:middle;font-size:var(--font-size-base);line-height:1.4}.table__cell:first-child,.table__header:first-child{padding-left:16px}.table__cell:last-child,.table__header:last-child{padding-right:16px}.table__row:last-child .table__cell{border-bottom:none}.table--sticky-actions .table__header:last-child,.table--sticky-actions .table__cell:last-child{position:sticky;right:0;z-index:2;background-color:var(--color-surface);box-shadow:-8px 0 12px -10px #0f172a1f}.table--sticky-actions .table__header:last-child{z-index:4;background:linear-gradient(180deg,var(--color-surface-2) 0%,color-mix(in srgb,var(--color-surface-2) 85%,var(--color-surface)) 100%)}.table--sticky-actions .table__row[style*=--row-bg-color] .table__cell:last-child{background-color:var(--row-bg-color)}.table--hover.table--sticky-actions .table__row:hover .table__cell:last-child{background-color:var(--color-primary-50)}.table--hover.table--sticky-actions .table__row[style*=--row-bg-color]:hover .table__cell:last-child{background-color:var(--row-bg-color)}.table--compact .table__header,.table--compact .table__cell{padding-top:7px;padding-bottom:7px}@media (max-width: 768px){.table__header,.table__cell{padding:8px 10px;font-size:var(--font-size-xs)}.table__cell:first-child,.table__header:first-child{padding-left:12px}.table__cell:last-child,.table__header:last-child{padding-right:12px}}@media (prefers-reduced-motion: reduce){.table__row{transition:none}}.alert{display:flex;align-items:flex-start;padding:9px 12px;border-radius:var(--radius-md);border:1px solid transparent;font-size:var(--font-size-sm);line-height:1.4;gap:8px}.alert--primary{background-color:var(--color-primary-50);border-color:var(--color-primary-150);color:var(--color-primary-dark)}.alert--secondary{background-color:var(--color-secondary-soft);border-color:var(--color-border);color:var(--color-text-secondary)}.alert--success{background-color:var(--color-success-soft);border-color:#0ca01f38;color:var(--color-success-dark)}.alert--warning{background-color:var(--color-warning-soft);border-color:#f59e0b47;color:var(--color-warning-dark)}.alert--danger{background-color:var(--color-danger-soft);border-color:#ef444438;color:var(--color-danger-dark)}.alert--info{background-color:var(--color-info-soft);border-color:#3b82f638;color:var(--color-info-dark)}.alert--dismissible{padding-right:calc(var(--spacing-md) + 22px)}.alert__content{flex:1}.alert__dismiss{background:none;border:none;font-size:var(--font-size-base);cursor:pointer;padding:0;margin-left:auto;color:inherit;opacity:.65;line-height:1;border-radius:var(--radius-sm)}.alert__dismiss:hover{opacity:1}.modal-overlay{position:fixed;inset:0;background-color:#0f172a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:12px}.modal{background-color:var(--color-surface-elevated);border-radius:14px;box-shadow:0 12px 40px #0f172a24,0 2px 8px #0f172a0f;border:1px solid #f0f3f6;max-width:90vw;max-height:90vh;overflow:hidden}.modal--sm{width:380px}.modal--md{width:520px}.modal--lg{width:720px}.modal__header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid #f0f3f6;background-color:var(--color-surface)}.modal__title{margin:0;font-size:13px;font-weight:600;letter-spacing:-.015em;color:var(--color-text-primary);line-height:1.3}.modal__close{background:var(--color-icon-well);border:none;font-size:16px;cursor:pointer;padding:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-secondary);transition:background-color .15s ease,color .15s ease;flex-shrink:0}.modal__close:hover{background-color:var(--color-surface-hover);color:var(--color-text-primary)}.modal__body{padding:12px 14px;overflow-y:auto;max-height:calc(90vh - 96px);color:var(--color-text-primary);font-size:12.5px;line-height:1.45}.tooltip{position:relative;display:inline-block}.tooltip__content{position:absolute;z-index:1000;background-color:var(--color-gray-800);color:#fff;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;pointer-events:none;transform:translate(-50%,-100%);margin-top:-6px;box-shadow:var(--shadow-md)}.tooltip--bottom .tooltip__content{transform:translate(-50%);margin-top:6px}.tooltip--left .tooltip__content{transform:translate(-100%,-50%);margin-left:-6px}.tooltip--right .tooltip__content{transform:translateY(-50%);margin-left:6px}.spinner{display:inline-block}.spinner__circle{border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:common-spin .8s linear infinite}.spinner--sm .spinner__circle{width:12px;height:12px}.spinner--md .spinner__circle{width:18px;height:18px}.spinner--lg .spinner__circle{width:24px;height:24px}.spinner--primary{color:var(--color-primary)}.spinner--secondary{color:var(--color-secondary)}.spinner--white{color:var(--color-on-primary)}@keyframes common-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;font-size:10px;font-weight:600;border-radius:9999px;text-transform:uppercase;letter-spacing:.04em;line-height:1.35;border:1px solid transparent;white-space:nowrap}.badge--primary{background-color:var(--color-primary-100);color:var(--color-primary-dark);border-color:var(--color-primary-150)}.badge--secondary{background-color:var(--color-secondary-soft);color:var(--color-gray-700);border-color:var(--color-border)}.badge--success{background-color:var(--color-success-soft);color:var(--color-success-dark);border-color:#0ca01f33}.badge--warning{background-color:var(--color-warning-soft);color:var(--color-warning-dark);border-color:#f59e0b40}.badge--danger{background-color:var(--color-danger-soft);color:var(--color-danger-dark);border-color:#ef444433}.badge--info{background-color:var(--color-info-soft);color:var(--color-info-dark);border-color:#3b82f633}.badge--sm{padding:0 5px;font-size:9px;line-height:1.4}.badge--md{padding:2px 7px;font-size:10px}.badge--lg{padding:3px 9px;font-size:var(--font-size-xs)}.cctv-slot{position:relative;background:#0a0a0a;border:1px solid #1f1f1f;overflow:hidden;min-height:0;cursor:pointer;display:flex;flex-direction:column}.cctv-slot--selected{outline:2px solid #3b82f6;outline-offset:-2px;z-index:1}.cctv-slot--view{cursor:default}.cctv-slot--expandable{cursor:pointer}.cctv-slot--expandable:hover{outline:1px solid rgba(59,130,246,.55);outline-offset:-1px}.cctv-slot--fullscreen{width:100%;height:100%;border:none}.cctv-slot--view .cctv-slot__placeholder-text{color:#4b5563}.cctv-slot__chrome--minimal{background:linear-gradient(transparent,#000000d9)}.cctv-slot__player{flex:1;width:100%;height:100%;min-height:0}.cctv-slot__player video{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.cctv-slot__placeholder{flex:1;display:flex;align-items:center;justify-content:center;position:relative;min-height:120px}.cctv-slot__placeholder-frame{position:absolute;inset:12%;border:1px solid rgba(255,255,255,.18);pointer-events:none}.cctv-slot__placeholder-text{color:#6b7280;font-size:.75rem;text-align:center;padding:.75rem;z-index:1}.cctv-slot__chrome{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.35rem;background:linear-gradient(transparent,#000000bf);pointer-events:none}.cctv-slot__badge{background:#000;color:#fff;font-size:.7rem;font-weight:600;letter-spacing:.04em;padding:.2rem .55rem;border-radius:2px;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cctv-slot__clear{pointer-events:auto;position:absolute;right:6px;bottom:6px;width:22px;height:22px;border:none;border-radius:2px;background:#000000b3;color:#fff;font-size:1rem;line-height:1;cursor:pointer}.cctv-slot__clear:hover{background:#b91c1c}.cctv-page{display:flex;flex-direction:column;gap:10px;height:calc(100vh - 4rem);min-height:520px;background:#f7f8fa;color:#0f172a;box-sizing:border-box}.cctv-toolbar.luna-panel{display:flex;align-items:center;justify-content:space-between;gap:.625rem;padding:9px 12px;background:#fff;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 4px 12px #0000000a;flex-shrink:0;flex-wrap:wrap;overflow:visible}.cctv-toolbar__left,.cctv-toolbar__right,.cctv-toolbar__center{display:flex;align-items:center;gap:.5rem}.cctv-toolbar__title{margin:0;color:#0f172a}.cctv-toolbar__mode{margin:2px 0 0;color:#64748b}.cctv-page--viewing .cctv-body{grid-template-columns:minmax(0,1fr)}.cctv-toolbar__btn{background:#fff;color:#0f172a;border:1px solid #e2e8f0;border-radius:8px;padding:.35rem .75rem;font-size:.8rem;cursor:pointer}.cctv-toolbar__btn:hover:not(:disabled){background:#f7f8fa}.cctv-toolbar__btn:disabled{opacity:.6;cursor:not-allowed}.cctv-toolbar__btn--primary{background:#0b9f4f;border-color:#0a8a44;color:#fff}.cctv-toolbar__btn--primary:hover:not(:disabled){background:#0a8a44}.cctv-toolbar__grid-btn{background:#fff;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;padding:.3rem .65rem;font-size:.8rem;cursor:pointer}.cctv-toolbar__grid-btn.is-active{background:#0ca01f1a;color:#057a16;border-color:#0ca01f47}.cctv-toolbar__ok{font-size:.75rem}.cctv-banner{padding:.5rem 1rem;font-size:.85rem;border-radius:14px;border:1px solid #f0f3f6}.cctv-banner--error{background:#ef44441a;color:#dc2626;border-color:#ef444438}.cctv-body{flex:1;display:grid;grid-template-columns:280px minmax(0,1fr);gap:10px;min-height:0}.cctv-body--sidebar-hidden{grid-template-columns:minmax(0,1fr)}.cctv-body--sidebar-hidden .cctv-sidebar{display:none}.cctv-sidebar.luna-panel,.cctv-sidebar{background:#fff;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 4px 12px #0000000a;display:flex;flex-direction:column;min-height:0;overflow:hidden}.cctv-sidebar__head{padding:.85rem .9rem .6rem;border-bottom:1px solid #f0f3f6;background:#f7f8fa;flex-shrink:0}.cctv-sidebar__head h2{margin:0;font-size:12.5px;font-weight:600;color:#0f172a}.cctv-sidebar__head p{margin:.25rem 0 .65rem;font-size:.7rem;color:#64748b}.cctv-sidebar__search{width:100%;background:#fff;border:1px solid #e2e8f0;color:#0f172a;border-radius:8px;padding:.4rem .55rem;font-size:.8rem}.cctv-grid-shell.luna-panel{min-height:0;height:100%;background:#000;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 4px 12px #0000000a;overflow:hidden}.cctv-sidebar__list{flex:1;overflow-y:auto;padding:.5rem}.cctv-sidebar__empty{color:#64748b;font-size:.8rem;padding:.625rem .5rem;line-height:1.4}.cctv-camera{background:#fff;border:1px solid #f0f3f6;border-radius:10px;padding:.6rem;margin-bottom:.5rem;box-shadow:0 2px 8px #00000008}.cctv-camera--on-layout{border-color:#0ca01f47;background:#0ca01f0a}.cctv-camera__name{font-size:.85rem;font-weight:600;color:#0f172a}.cctv-camera__sub{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.2rem;font-size:.7rem;color:#64748b}.cctv-camera__own{background:#3b82f61a;color:#1d4ed8;padding:.05rem .35rem;border-radius:9999px;text-transform:uppercase;font-size:.65rem}.cctv-camera__on{background:#0ca01f1a;color:#057a16;padding:.05rem .35rem;border-radius:9999px;font-size:.65rem}.cctv-camera__actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.cctv-camera__actions button{flex:1;min-width:4.5rem;background:#fff;border:1px solid #e2e8f0;color:#0f172a;border-radius:8px;padding:.3rem;font-size:.72rem;cursor:pointer}.cctv-camera__actions button:hover{background:#0ca01f14;border-color:#0ca01f47;color:#057a16}.cctv-camera__remove{flex:1 1 100%!important;background:#ef44441a!important;border-color:#ef444438!important;color:#dc2626!important}.cctv-camera__remove:hover{background:#ef44442e!important;border-color:#ef444459!important}.cctv-sidebar__hint{margin-top:.45rem;font-size:.7rem;color:#1d4ed8}.cctv-grid{display:grid;gap:2px;background:#000;padding:2px;min-height:0;height:100%}.cctv-grid--immersive{flex:1;width:100%;height:100%;padding:0;gap:3px}.cctv-grid--dense .cctv-slot__badge{font-size:.55rem;padding:.1rem .3rem}.cctv-grid--dense .cctv-slot__placeholder-text{font-size:.55rem;padding:.25rem}.cctv-fs-root{position:fixed;inset:0;z-index:10000;background:#000;width:100%;height:100%}.cctv-fs-root:fullscreen,.cctv-fs-root:-webkit-full-screen{width:100vw;height:100vh;background:#000}.cctv-fs-layout,.cctv-fs-single{position:absolute;inset:0;display:flex;flex-direction:column;background:#000}.cctv-fs-single .cctv-slot{flex:1;min-height:0}.cctv-fs-exit{position:absolute;top:12px;right:12px;z-index:2;background:#000000b8;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:.45rem .75rem;font-size:.8rem;cursor:pointer}.cctv-fs-exit:hover{background:#0b9f4fd9;border-color:#0b9f4f}@media (max-width: 900px){.cctv-page{height:auto;min-height:calc(100vh - 4rem)}.cctv-body{grid-template-columns:1fr;grid-template-rows:auto minmax(420px,1fr)}.cctv-body--sidebar-hidden{grid-template-columns:1fr}.cctv-sidebar{max-height:260px}.cctv-grid{min-height:420px}}.dd-root{--dd-bg: #050810;--dd-panel: #0a1020;--dd-border: rgba(56, 189, 248, .28);--dd-text: #e0f2fe;--dd-muted: #64748b;--dd-ok: #4ade80;--dd-warn: #fbbf24;--dd-fail: #f472b6;--dd-log: #86efac;min-height:100vh;background:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(34,211,238,.1),transparent),linear-gradient(180deg,#070d18,#050810 45%);color:var(--dd-text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.dd-header{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding:12px 16px;border-bottom:1px solid var(--dd-border);background:#0a1020f2;position:sticky;top:0;z-index:10}.dd-title{font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#67e8f9}.dd-meta{color:var(--dd-muted);font-size:12px}.dd-meta strong{color:var(--dd-text);font-weight:600}.dd-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.dd-btn{border:1px solid var(--dd-border);background:#0f172ae6;color:#94a3b8;padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer}.dd-btn:hover{color:#67e8f9;border-color:#22d3ee80}.dd-btn:disabled{opacity:.55;cursor:not-allowed}.dd-btn-primary{color:#0f172a;background:#22d3ee;border-color:#22d3ee;font-weight:600}.dd-banner{margin:12px 16px 0;padding:10px 14px;border-radius:8px;border:1px solid rgba(244,114,182,.4);background:#f472b614;color:#fda4af;font-size:13px}.dd-banner.ok{border-color:#4ade8059;background:#4ade8014;color:#86efac}.dd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;padding:12px 16px 16px}.dd-box{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:10px;min-height:160px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 0 24px #22d3ee0a}.dd-box.fail{border-color:#f472b68c;box-shadow:0 0 20px #f472b61f}.dd-box.warn{border-color:#fbbf2473}.dd-box-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(148,163,184,.12)}.dd-dot{width:9px;height:9px;border-radius:50%;background:var(--dd-muted);flex-shrink:0}.dd-dot.ok{background:var(--dd-ok);box-shadow:0 0 8px #4ade80b3}.dd-dot.fail{background:var(--dd-fail);box-shadow:0 0 8px #f472b6b3}.dd-dot.warn{background:var(--dd-warn)}.dd-box-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.dd-box-badge{margin-left:auto;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--dd-muted)}.dd-box-badge.ok{color:var(--dd-ok)}.dd-box-badge.fail{color:var(--dd-fail)}.dd-box-body{padding:10px 12px 12px;font-size:11px;line-height:1.45;color:#cbd5e1;flex:1;overflow:auto;max-height:220px}.dd-why{margin-top:8px;padding:8px;border-radius:6px;background:#f472b61a;color:#fda4af;white-space:pre-wrap}.dd-kv{display:grid;grid-template-columns:88px 1fr;gap:2px 8px;margin-bottom:4px}.dd-kv span:first-child{color:var(--dd-muted)}.dd-main{display:grid;grid-template-columns:1fr minmax(320px,38%);gap:12px;padding:0 16px 16px}@media (max-width: 1100px){.dd-main{grid-template-columns:1fr}}.dd-log-panel{background:var(--dd-panel);border:1px solid var(--dd-border);border-radius:10px;display:flex;flex-direction:column;min-height:360px;max-height:calc(100vh - 120px)}.dd-log-head{padding:10px 12px;border-bottom:1px solid rgba(148,163,184,.12);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#67e8f9;display:flex;justify-content:space-between;gap:8px}.dd-log-body{flex:1;overflow:auto;padding:8px 10px 12px;font-size:11px;line-height:1.4}.dd-log-line{display:grid;grid-template-columns:72px 70px 1fr;gap:8px;padding:3px 0;border-bottom:1px solid rgba(148,163,184,.08);color:var(--dd-log)}.dd-log-line.warn{color:#fde68a}.dd-log-line.error{color:#fda4af}.dd-log-stage{color:#67e8f9;text-transform:uppercase;font-size:10px}.dd-empty{color:var(--dd-muted);padding:24px;text-align:center}.gf-page{display:flex;flex-direction:column;gap:.625rem}.gf-page__header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem .75rem}.gf-page__title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.015em;color:var(--color-text-primary);line-height:1.25}.gf-page__subtitle{margin:.15rem 0 0;font-size:11px;color:var(--color-text-secondary);line-height:1.35}.gf-page__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.gf-page__meta{font-size:11px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.gf-panel{border:1px solid #E5E9EF;border-radius:10px;background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:visible}.gf-panel__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid #E5E9EF;background:#f5f7f9;border-top-left-radius:9px;border-top-right-radius:9px}.gf-panel__title{margin:0;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted)}.gf-panel__body{padding:.7rem .8rem .8rem}.gf-panel__body--flush{padding:0}.gf-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem .65rem}.gf-form-grid__full{grid-column:1 / -1}.gf-field-label{display:block;margin-bottom:.3rem;font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary);letter-spacing:.02em}.gf-field-hint{margin:.25rem 0 0;font-size:11px;color:var(--color-text-muted);line-height:1.35}.gf-field-error{margin:.25rem 0 0;font-size:11px;color:var(--color-danger)}.gf-import{margin-bottom:.65rem;padding:.55rem .65rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.gf-import__title{margin:0 0 .1rem;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary)}.gf-import__hint{margin:0 0 .45rem;font-size:11px;color:var(--color-text-muted)}.gf-import__row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.gf-import__file{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.gf-import__file::file-selector-button{margin-right:.45rem;padding:.28rem .55rem;border:0;border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:600;background:var(--color-primary);color:var(--color-on-primary);cursor:pointer}.gf-coords{max-height:10rem;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.45rem .55rem;background:var(--color-surface-2)}.gf-coords__line{font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;line-height:1.45}.gf-footer{display:flex;justify-content:flex-end;gap:.4rem}.gf-table-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-top:1px solid var(--color-border);background:var(--color-surface-2);padding:.45rem .75rem}.gf-table-footer__meta{margin:0;font-size:11px;color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.gf-table-footer__meta strong{font-weight:600;color:var(--color-text-primary)}.gf-empty{text-align:center;padding:2rem 1rem}.gf-empty p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.gf-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem .85rem}.gf-info-item__label{display:block;margin-bottom:.2rem;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted)}.gf-info-item__value{margin:0;font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.35}.gf-chip-row{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.15rem}@media (max-width: 640px){.gf-form-grid,.gf-info-grid{grid-template-columns:1fr}}.form{display:flex;flex-direction:column;gap:10px}.form__group{display:flex;flex-direction:column;gap:3px}.form__label{font-weight:500;color:var(--color-text-secondary);font-size:11px;letter-spacing:.02em;line-height:1.3}.form__row{display:flex;gap:10px;align-items:flex-end}.form__col{flex:1}.form__actions{display:flex;gap:6px;justify-content:flex-end;align-items:center;margin-top:8px;padding-top:10px;border-top:1px solid #f0f3f6}@media (max-width: 768px){.form__row{flex-direction:column;gap:8px;align-items:stretch}.form__actions{flex-direction:column}}.settings-page{max-width:40rem;margin:0 auto}.settings-page__card{border:1px solid #f0f3f6;border-radius:14px;background:#fff;box-shadow:0 4px 12px #0000000a;overflow:visible}.settings-page__header{display:flex;align-items:flex-start;gap:.65rem;padding:8px 12px;border-bottom:1px solid #f0f3f6;background:#f7f8fa;border-top-left-radius:13px;border-top-right-radius:13px}.settings-page__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border-radius:8px;background:#fff;border:1px solid #e5e9ef;color:#057a16}.settings-page__icon svg{width:1rem;height:1rem}.settings-page__title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.015em;color:#0f172a;line-height:1.25}.settings-page__subtitle{margin:.15rem 0 0;font-size:11px;color:#64748b;line-height:1.35}.settings-page__body{padding:10px 12px}.settings-page__section{margin:0}.settings-page__section+.settings-page__section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f0f3f6}.settings-page__section-head{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.55rem}.settings-page__section-title{margin:0;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.settings-page__hint{margin:.25rem 0 0;font-size:11px;color:#94a3b8;line-height:1.4}.settings-page__grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem .65rem}.settings-page__grid .form__group{margin:0}.settings-page__grid .form__group--full{grid-column:1 / -1}.settings-page__status{display:inline-flex;align-items:center;padding:2px 7px;border-radius:9999px;font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;line-height:1.35;border:1px solid transparent}.settings-page__status--ok{background:#0ca01f1a;color:#057a16;border-color:#0ca01f33}.settings-page__status--warn{background:#f59e0b1f;color:#b45309;border-color:#f59e0b47}.settings-page__actions{margin-top:.75rem;padding-top:8px;border-top:1px solid #f0f3f6;display:flex;justify-content:flex-end}@media (max-width: 640px){.settings-page__grid{grid-template-columns:1fr}}.support-inbox{max-width:42rem}.support-inbox__header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-md);margin-bottom:.65rem}.support-inbox__title{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.015em;color:#0f172a;line-height:1.25}.support-inbox__subtitle{margin:.15rem 0 0;font-size:11px;color:#64748b;line-height:1.35}.support-inbox__sort{display:inline-flex;align-items:center;gap:.3rem;flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.support-inbox__sort-label{white-space:nowrap}.support-inbox__sort-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:28px;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-xs);font-weight:600;padding:0 1.5rem 0 .5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .4rem center;cursor:pointer;outline:none;box-shadow:var(--shadow-sm);transition:border-color .15s ease,box-shadow .15s ease}.support-inbox__sort-select:hover,.support-inbox__sort-select:focus{border-color:var(--color-border-strong)}.support-inbox__sort-select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.support-inbox__panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:hidden}.support-inbox__search{position:relative;padding:.55rem .65rem;border-bottom:1px solid var(--color-border);background:linear-gradient(180deg,var(--color-surface-2) 0%,var(--color-surface) 100%)}.support-inbox__search-icon{position:absolute;left:1.15rem;top:50%;transform:translateY(-50%);width:.875rem;height:.875rem;color:var(--color-text-muted);pointer-events:none;z-index:1}.support-inbox__search .input-wrapper{width:100%}.support-inbox__search-input.input{height:30px;padding-left:2.1rem;font-size:var(--font-size-sm);border-color:var(--color-border);background-color:var(--color-surface)}.support-inbox__search-input.input:hover:not(:disabled):not(:focus),.support-inbox__search-input.input:focus{border-color:var(--color-primary)}.support-inbox__state{padding:1.75rem 1rem;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.support-inbox__state--error{color:var(--color-danger)}.support-inbox__list{list-style:none;margin:0;padding:.3rem;display:flex;flex-direction:column;gap:.15rem;max-height:min(68vh,36rem);overflow-y:auto}.support-inbox__row{display:flex;align-items:center;gap:.55rem;padding:.4rem .55rem;border-radius:var(--radius-md);border:1px solid transparent;background-color:transparent;text-decoration:none;color:inherit;transition:border-color .12s ease,background-color .12s ease}.support-inbox__row:hover,.support-inbox__row:focus-visible{background-color:var(--color-surface-hover);outline:none}.support-inbox__row.is-active{border-color:var(--color-primary-150);background-color:var(--color-primary-50)}.support-inbox__avatar{position:relative;flex-shrink:0;width:1.9rem;height:1.9rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:700;letter-spacing:.02em;line-height:1}.support-inbox__avatar--mint{background:var(--color-primary-100);color:var(--color-primary-dark)}.support-inbox__avatar--teal{background:#0d94881f;color:#0f766e}.support-inbox__avatar--sky{background:var(--color-info-soft);color:var(--color-info-dark)}.support-inbox__avatar--amber{background:var(--color-warning-soft);color:var(--color-warning-dark)}.support-inbox__avatar--rose{background:#f43f5e1a;color:#be123c}.support-inbox__avatar--slate{background:var(--color-secondary-soft);color:var(--color-gray-700)}.support-inbox__status{position:absolute;right:-1px;bottom:-1px;width:.45rem;height:.45rem;border-radius:999px;background:var(--color-primary-light);border:1.5px solid var(--color-surface)}.support-inbox__meta{flex:1;min-width:0}.support-inbox__name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);line-height:1.25}.support-inbox__snippet{margin-top:.05rem;font-size:11px;color:var(--color-text-muted);line-height:1.3}.support-inbox__aside{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.2rem;flex-shrink:0;min-width:3.25rem}.support-inbox__time{font-size:10px;color:var(--color-text-muted);white-space:nowrap;line-height:1.2;font-variant-numeric:tabular-nums}.support-inbox__unread{display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.05rem;padding:0 .35rem;border-radius:999px;background:var(--color-primary-100);color:var(--color-primary-dark);border:1px solid var(--color-primary-150);font-size:10px;font-weight:700;line-height:1}[data-theme=dark] .support-inbox__avatar--slate{color:var(--color-text-secondary)}[data-theme=dark] .support-inbox__status{border-color:var(--color-surface)}.vt-alert{--vt-green: #0ca01f;--vt-green-dark: #057a16;--vt-ink: #0f172a;--vt-muted: #64748b;--vt-line: #e5e9ef;--vt-card: #ffffff;--vt-radius: 16px;min-height:100vh;min-height:100dvh;padding:16px 14px 28px;background:radial-gradient(ellipse 120% 42% at 50% -8%,rgba(12,160,31,.14),transparent 58%),radial-gradient(ellipse 70% 30% at 100% 100%,rgba(12,160,31,.05),transparent 50%),linear-gradient(180deg,#f5f7f9,#eef1f4)}.vt-alert .container{max-width:440px;margin:0 auto;padding:0;background:transparent}.vt-alert__shell{display:flex;flex-direction:column;gap:14px}.vt-alert--state{display:flex;align-items:center;justify-content:center}.vt-alert__state-card{width:100%;max-width:360px;background:var(--vt-card);border:1px solid var(--vt-line);border-radius:var(--vt-radius);box-shadow:0 8px 28px #0f172a0f;padding:28px 22px;text-align:center}.vt-alert__state-card p{margin:12px 0 0;color:var(--vt-muted);font-size:13px}.vt-alert__brand{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--vt-green)}.vt-alert__brand-dot{width:7px;height:7px;border-radius:50%;background:var(--vt-green);box-shadow:0 0 0 4px #0ca01f29}.vt-alert__plate{position:relative;overflow:hidden;border-radius:14px;padding:18px 16px 16px;text-align:center;color:#fff;border:2px solid rgba(255,255,255,.22);box-shadow:0 10px 28px #0f172a2e,inset 0 1px #ffffff2e}.vt-alert__plate--private{background:linear-gradient(165deg,#e11d2e,#b91c1c 55%,#991b1b)}.vt-alert__plate--public{background:linear-gradient(165deg,#0ca01f,#057a16 55%,#065f12)}.vt-alert__plate--gov{background:linear-gradient(165deg,#1d4ed8,#1e40af 55%,#1e3a8a)}.vt-alert__plate--tourism{background:linear-gradient(165deg,#0f766e 0% 40%,#115e59)}.vt-alert__plate-province{margin:0;font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;opacity:.92}.vt-alert__plate-number{margin:6px 0 0;font-size:clamp(1.7rem,7vw,2.15rem);font-weight:800;letter-spacing:.08em;line-height:1.1;text-shadow:0 1px 0 rgba(0,0,0,.18)}.vt-alert__plate-meta{margin-top:8px;font-size:11px;font-weight:600;letter-spacing:.08em;opacity:.85}.vt-alert__status{position:absolute;top:10px;right:10px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#ffffff2e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.vt-alert__status--off{background:#0f172a59}.vt-alert__card{background:var(--vt-card);border:1px solid var(--vt-line);border-radius:var(--vt-radius);box-shadow:0 4px 16px #0f172a0d;overflow:hidden}.vt-alert__facts{display:grid;grid-template-columns:1fr 1fr;gap:0}.vt-alert__fact{padding:12px 14px;border-bottom:1px solid var(--vt-line)}.vt-alert__fact:nth-child(odd){border-right:1px solid var(--vt-line)}.vt-alert__fact:nth-last-child(-n+2){border-bottom:none}.vt-alert__fact-label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--vt-muted);margin-bottom:4px}.vt-alert__fact-value{display:block;font-size:13.5px;font-weight:600;color:var(--vt-ink);letter-spacing:-.01em;word-break:break-word}.vt-alert__call{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 14px;border:none;border-radius:14px;text-decoration:none;color:#fff;background:linear-gradient(180deg,#16b326,#0ca01f 48%,#057a16);box-shadow:0 8px 20px #0ca01f52,inset 0 1px #ffffff38;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.vt-alert__call:hover{filter:brightness(1.04);box-shadow:0 10px 24px #0ca01f61,inset 0 1px #ffffff38}.vt-alert__call:active{transform:scale(.985)}.vt-alert__call-icon{flex-shrink:0;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff2e;font-size:16px}.vt-alert__call-copy{flex:1;min-width:0;text-align:left}.vt-alert__call-kicker{display:block;font-size:11px;font-weight:600;opacity:.9}.vt-alert__call-title{display:block;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.vt-alert__call-chevron{flex-shrink:0;font-size:14px;opacity:.85}.vt-alert__call--disabled{background:#e8edf2;color:#64748b;box-shadow:none;cursor:not-allowed;pointer-events:none}.vt-alert__call--disabled .vt-alert__call-icon{background:#d0d7e2;color:#475569}.vt-alert__banner{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid transparent}.vt-alert__banner--warn{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.vt-alert__banner--cool{background:#fffbeb;border-color:#fde68a;color:#854d0e}.vt-alert__banner-icon{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#ffffffb3;font-size:15px}.vt-alert__banner-body{flex:1;min-width:0}.vt-alert__banner-title{margin:0;font-size:13.5px;font-weight:700}.vt-alert__banner-text{margin:2px 0 0;font-size:12.5px;line-height:1.4;opacity:.9}.vt-alert__banner-time{margin:6px 0 0;font-size:1.15rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.04em}.vt-alert__refresh{flex-shrink:0;align-self:center;border:1px solid #f59e0b;background:#fff;color:#92400e;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer}.vt-alert__refresh:hover{background:#fffbeb}.vt-alert__section{display:flex;flex-direction:column;gap:10px}.vt-alert__section-head{display:flex;align-items:center;gap:10px;padding:0 2px}.vt-alert__section-mark{width:4px;height:28px;border-radius:4px;background:linear-gradient(180deg,#16b326,#057a16)}.vt-alert__section-title{margin:0;font-size:1.02rem;font-weight:700;letter-spacing:-.02em;color:var(--vt-ink);line-height:1.25}.vt-alert__section-sub{margin:1px 0 0;font-size:12px;color:var(--vt-muted)}.vt-alert__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.vt-alert__tile{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;min-height:118px;padding:12px 8px 10px;background:var(--vt-card);border:1px solid var(--vt-line);border-radius:14px;box-shadow:0 2px 8px #0f172a0a;text-align:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.vt-alert__tile:hover{transform:translateY(-1px);border-color:#0ca01f59;box-shadow:0 8px 18px #0f172a14}.vt-alert__tile:active{transform:scale(.98)}.vt-alert__tile.is-disabled{opacity:.48;cursor:not-allowed;pointer-events:none}.vt-alert__tile-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#0ca01f1a;color:var(--vt-green-dark);font-size:18px}.vt-alert__tile--danger .vt-alert__tile-icon{background:#ef44441f;color:#dc2626}.vt-alert__tile--danger{border-color:#fecaca}.vt-alert__tile--hot .vt-alert__tile-icon{background:#f973161f;color:#ea580c}.vt-alert__tile-label{font-size:11.5px;font-weight:600;line-height:1.3;color:#1e293b;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.vt-alert__app{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:10px 14px;border-radius:14px;text-decoration:none;color:#fff;background:#0f172a;box-shadow:0 6px 16px #0f172a29;transition:filter .15s ease,transform .15s ease}.vt-alert__app:hover{filter:brightness(1.08);color:#fff}.vt-alert__app:active{transform:scale(.985)}.vt-alert__app-icon{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#ffffff1a;font-size:16px}.vt-alert__app-copy{flex:1;text-align:left}.vt-alert__app-kicker{display:block;font-size:11px;opacity:.75}.vt-alert__app-title{display:block;font-size:1rem;font-weight:700;letter-spacing:-.02em}.vt-alert__footer{padding-top:4px;text-align:center;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8}.vt-alert__footer a{display:inline-block;margin-top:2px;font-size:13px;font-weight:800;letter-spacing:.12em;color:#0f172a;text-decoration:none}.vt-alert__footer a:hover{color:var(--vt-green)}@media (max-width: 360px){.vt-alert__grid{gap:6px}.vt-alert__tile{min-height:108px;padding:10px 6px 8px}.vt-alert__tile-label{font-size:10.5px}}:root{--color-primary: #0ca01f;--color-primary-light: #22c55e;--color-primary-dark: #057a16;--color-primary-50: rgba(12, 160, 31, .06);--color-primary-100: rgba(12, 160, 31, .1);--color-primary-150: rgba(12, 160, 31, .16);--color-primary-200: rgba(12, 160, 31, .22);--color-on-primary: #ffffff;--color-success: #0ca01f;--color-warning: #f59e0b;--color-danger: #ef4444;--color-info: #3b82f6;--color-secondary: #64748b;--color-success-dark: #059669;--color-warning-dark: #d97706;--color-danger-dark: #dc2626;--color-info-dark: #1d4ed8;--color-success-soft: rgba(12, 160, 31, .1);--color-warning-soft: rgba(245, 158, 11, .12);--color-danger-soft: rgba(239, 68, 68, .1);--color-info-soft: rgba(59, 130, 246, .1);--color-secondary-soft: rgba(100, 116, 139, .1);--color-white: #ffffff;--color-black: #000000;--color-gray-50: #F5F7F9;--color-gray-100: #EEF1F5;--color-gray-200: #E5E9EF;--color-gray-300: #D0D7E2;--color-gray-400: #94A3B8;--color-gray-500: #64748B;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1E293B;--color-gray-900: #0F172A;--color-surface: #ffffff;--color-surface-2: #F5F7F9;--color-surface-elevated: #ffffff;--color-surface-hover: #EEF1F5;--color-border: #E5E9EF;--color-border-strong: #D0D7E2;--color-text-primary: #0F172A;--color-text-secondary: #475569;--color-text-muted: #94A3B8;--color-input-bg: #ffffff;--color-icon-well: #EEF1F5;--color-icon-well-active: var(--color-primary-100);--spacing-xs: .125rem;--spacing-sm: .25rem;--spacing-md: .5rem;--spacing-lg: .75rem;--spacing-xl: 1rem;--spacing-2xl: 1.25rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .625rem;--radius-xl: .75rem;--shadow-sm: 0 1px 2px 0 rgb(15 23 42 / .05);--shadow-md: 0 2px 4px -1px rgb(15 23 42 / .06), 0 1px 2px rgb(15 23 42 / .04);--shadow-lg: 0 8px 16px -4px rgb(15 23 42 / .1), 0 2px 6px rgb(15 23 42 / .05);--shadow-focus: 0 0 0 3px var(--color-primary-150);--shadow-primary: 0 1px 2px rgb(12 160 31 / .18), 0 1px 3px rgb(12 160 31 / .1);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .6875rem;--font-size-sm: .75rem;--font-size-base: .8125rem;--font-size-lg: .875rem;--font-size-xl: 1rem;--font-size-2xl: 1.25rem;--icon-size-sm: 14px;--icon-size-md: 16px;--icon-size-lg: 18px;--icon-well-size: 26px;--control-height-sm: 28px;--control-height-md: 32px;--control-height-lg: 36px;--header-height: 48px;--sidebar-row-height: 34px;--sidebar-width: 15rem;--action-btn-size: 28px}html[data-embed=true]{color-scheme:light}[data-theme=dark]{--color-surface: #1E293B;--color-surface-2: #0F172A;--color-surface-elevated: #334155;--color-surface-hover: #334155;--color-border: #334155;--color-border-strong: #475569;--color-text-primary: #F8FAFC;--color-text-secondary: #CBD5E1;--color-text-muted: #64748B;--color-input-bg: #334155;--color-icon-well: #334155;--color-icon-well-active: rgba(12, 160, 31, .22);--color-gray-50: #1E293B;--color-gray-100: #334155;--color-gray-200: #475569;--color-gray-300: #64748B;--color-gray-400: #94A3B8;--color-gray-500: #CBD5E1;--color-gray-600: #E2E8F0;--color-gray-700: #F1F5F9;--color-gray-800: #F8FAFC;--color-gray-900: #ffffff;--color-white: #1E293B;--color-black: #F8FAFC;--color-success-soft: rgba(12, 160, 31, .18);--color-warning-soft: rgba(245, 158, 11, .18);--color-danger-soft: rgba(239, 68, 68, .18);--color-info-soft: rgba(59, 130, 246, .18);--color-secondary-soft: rgba(100, 116, 139, .22);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .35);--shadow-md: 0 2px 6px -1px rgb(0 0 0 / .4);--shadow-lg: 0 10px 20px -4px rgb(0 0 0 / .45);--shadow-focus: 0 0 0 3px rgba(12, 160, 31, .35);--shadow-primary: 0 1px 3px rgb(12 160 31 / .28)}.component{box-sizing:border-box}.focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.fade-in{animation:fadeIn .3s ease-in-out}.slide-up{animation:slideUp .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.vehicle-card{background:var(--color-surface);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);box-shadow:none;border:1px solid var(--color-border);cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;overflow:hidden;font-size:var(--font-size-sm)}.vehicle-card:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.vehicle-card:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-color:var(--color-primary)}.vehicle-card.compact{position:relative;display:flex;flex-direction:column;gap:7px;margin-bottom:6px;padding:9px 9px 9px 12px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);font-size:var(--font-size-sm)}.vehicle-card.compact:hover{border-color:#0ca01f47;background:#fcfefc;box-shadow:var(--shadow-md)}.vehicle-card.compact.selected{border-color:#0ca01f6b;background:#f4fbf5;box-shadow:0 0 0 2px #0ca01f1f}.vehicle-card.compact.inactive{opacity:.62;cursor:not-allowed}.vehicle-card.compact.inactive:hover{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.vc-status-rail{position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 2px 2px 0;background:var(--color-secondary)}.vc-status-rail.status-stopped{background:var(--color-danger)}.vc-status-rail.status-running{background:var(--color-success)}.vc-status-rail.status-overspeed{background:#e91e63}.vc-status-rail.status-idle{background:var(--color-warning)}.vc-status-rail.status-inactive{background:#f59e0b}.vc-status-rail.status-no_data{background:var(--color-secondary)}.vc-app-main{display:flex;align-items:flex-start;gap:9px;min-width:0}.vc-app-icon-wrap{position:relative;width:44px;height:44px;flex-shrink:0}.vc-app-icon{width:44px;height:44px;-o-object-fit:contain;object-fit:contain}.vc-app-dashcam-badge{position:absolute;top:-3px;left:-3px;width:16px;height:16px;border-radius:50%;background:#dc2626;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:8px}.vc-app-state-dot{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;border:1.5px solid #fff}.vc-app-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.vc-app-title-row{display:flex;align-items:center;gap:6px;min-width:0}.vehicle-card.compact .vehicle-number{flex:1;min-width:0;font-size:13px;font-weight:800;color:var(--color-text-primary);letter-spacing:-.01em;line-height:1.25;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-speed-badge{flex-shrink:0;height:20px;padding:0 8px;border-radius:14px;color:#fff;font-size:10px;font-weight:800;line-height:20px;white-space:nowrap}.vc-app-sub-row{display:flex;align-items:center;gap:6px;min-width:0}.vehicle-card.compact .vehicle-name{flex:1;min-width:0;font-size:11px;color:var(--color-text-muted);font-weight:600;line-height:1.25;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-status-pill{display:inline-flex;align-items:center;max-width:58%;height:18px;padding:0 7px;border-radius:8px;font-size:10px;font-weight:800;letter-spacing:.01em;line-height:1;flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-status-pill.status-stopped{background:var(--color-danger-soft);color:var(--color-danger-dark)}.vc-status-pill.status-running{background:var(--color-success-soft);color:var(--color-success-dark)}.vc-status-pill.status-overspeed{background:#e91e631f;color:#c2185b}.vc-status-pill.status-idle{background:var(--color-warning-soft);color:#b45309}.vc-status-pill.status-inactive{background:#ff980024;color:#c2410c}.vc-status-pill.status-no_data{background:var(--color-secondary-soft);color:var(--color-gray-600)}.vc-app-signals{display:inline-flex;align-items:center;gap:5px;margin-top:1px}.vehicle-card.compact .status-icon{font-size:12px;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.vc-power-pill{display:inline-flex;align-items:center;height:15px;padding:0 5px;border-radius:999px;font-size:9px;font-weight:700;background:var(--color-danger-soft);color:var(--color-danger-dark);line-height:1}.vc-app-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.vc-stat-chip{display:flex;align-items:center;gap:4px;min-width:0;padding:4px 5px;border-radius:8px;background:var(--color-surface-2);border:1px solid var(--color-border)}.vc-stat-icon{font-size:10px;flex-shrink:0}.vc-stat-chip.today .vc-stat-icon{color:#2f80ed}.vc-stat-chip.fuel .vc-stat-icon{color:#f2994a}.vc-stat-chip.odo .vc-stat-icon{color:#7c3aed}.vc-stat-chip.alt .vc-stat-icon{color:#0d9488}.vc-stat-text{min-width:0;display:flex;flex-direction:column;line-height:1.1}.vc-stat-label{font-size:8px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.02em}.vc-stat-value{font-size:10px;font-weight:800;color:var(--color-text-primary);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vc-meta{display:flex;align-items:center;gap:8px;min-width:0;padding-top:5px;border-top:1px solid var(--color-border)}.vehicle-card.compact .geo-code{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.vehicle-card.compact .geo-icon,.vehicle-card.compact .last-data-icon{font-size:10px;color:var(--color-primary);flex-shrink:0}.vehicle-card.compact .last-data-icon{color:var(--color-text-muted)}.vehicle-card.compact .geo-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vehicle-card.compact .last-data{display:flex;align-items:center;gap:4px;flex-shrink:0}.vehicle-card.compact .last-data-text{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.vehicle-card.inactive{opacity:.65;cursor:not-allowed;background:var(--color-surface)}.vehicle-card.inactive:hover{transform:none;box-shadow:none;border-color:var(--color-border)}.vehicle-card-header{display:flex;flex-wrap:wrap;gap:4px;padding:6px 10px 0;background:transparent}.vehicle-badge{padding:2px 7px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.02em;line-height:1.3}.status-badge.status-stopped{background:var(--color-danger-soft);color:var(--color-danger-dark)}.status-badge.status-running{background:var(--color-success-soft);color:var(--color-success-dark)}.status-badge.status-overspeed{background:#e91e631f;color:#c2185b}.status-badge.status-idle{background:var(--color-warning-soft);color:#b45309}.status-badge.status-inactive{background:#ff980024;color:#c2410c}.status-badge.status-no_data{background:var(--color-secondary-soft);color:var(--color-gray-600)}.ownership-badge{background:var(--color-primary-50);color:var(--color-primary-dark)}.power-badge.disconnected{background:var(--color-danger-soft);color:var(--color-danger-dark)}.vehicle-card-content{display:flex;flex-direction:row;padding:8px 10px 10px;gap:4px}.status-row{display:flex;flex-direction:column;gap:6px;padding:4px 2px;min-width:28px;align-items:center;justify-content:flex-start}.status-icon{font-size:14px;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.vehicle-details-column{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.vehicle-info-row{display:flex;gap:12px;align-items:flex-start}.vehicle-info-section{display:flex;flex-direction:column;align-items:center;min-width:90px}.vehicle-image-container{display:flex;align-items:center;justify-content:center;min-height:52px;min-width:52px}.vehicle-image{width:56px;height:56px;-o-object-fit:contain;object-fit:contain}.vehicle-details{text-align:center}.vehicle-number{font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-primary);margin-bottom:1px;line-height:1.25}.vehicle-name{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:400;line-height:1.2}.buttons-data-section{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.action-buttons{display:flex;gap:6px;justify-content:flex-end}.data-items{display:flex;flex-direction:row;gap:6px;justify-content:flex-end;flex-wrap:wrap}.action-button{display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;font-size:14px;color:var(--color-text-secondary);width:26px;height:26px}.action-button svg{font-size:14px;width:14px;height:14px}.action-button:hover{background:var(--color-surface-hover);border-color:var(--color-primary);color:var(--color-primary)}.action-button.live-tracking-btn:hover{color:var(--color-primary)}.action-button.playback-btn:hover{color:var(--color-success-dark);border-color:var(--color-success)}.report-btn{background:var(--color-danger-soft);color:var(--color-danger-dark);border-color:transparent}.report-btn:hover{background:#ef44442e;border-color:var(--color-danger);color:var(--color-danger-dark)}.dashcam-btn{background:var(--color-danger-soft);color:var(--color-danger-dark);border-color:transparent}.dashcam-btn:hover{background:#ef44442e;border-color:var(--color-danger)}.geo-data-row{display:flex;gap:12px;align-items:center;padding-top:6px;border-top:1px solid var(--color-border)}.geo-code{display:flex;align-items:center;gap:5px;flex:1;min-width:0}.geo-icon,.last-data-icon{font-size:var(--font-size-xs);color:var(--color-text-muted);flex-shrink:0}.geo-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.last-data{display:flex;align-items:center;gap:5px;flex-shrink:0}.last-data-text{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:500;white-space:nowrap}.data-item{display:flex;flex-direction:column;align-items:center;gap:2px}.data-icon{font-size:var(--font-size-xs);color:var(--color-text-muted)}.data-text{font-size:var(--font-size-xs);color:var(--color-text-primary);font-weight:600}@media (max-width: 768px){.vehicle-card-content{flex-direction:row}.vc-meta{flex-direction:column;align-items:flex-start;gap:3px}.vehicle-card.compact .geo-text{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.geo-data-row{flex-direction:column;align-items:flex-start;gap:4px}.geo-text{white-space:normal}}.vc-accordion{margin:-2px 0 6px;padding:0 8px 10px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e9ef);border-top:none;border-radius:0 0 10px 10px;box-shadow:var(--shadow-sm, 0 1px 2px rgba(15, 40, 25, .06));animation:vc-accordion-open .22s ease}.vc-accordion-handle{display:flex;align-items:center;justify-content:center;width:100%;padding:8px 0 10px;border:none;background:transparent;cursor:pointer}.vc-accordion-handle-bar{width:36px;height:4px;border-radius:999px;background:var(--color-border-strong, #c5cdd6);transition:background-color .15s ease}.vc-accordion-handle:hover .vc-accordion-handle-bar{background:var(--color-text-muted, #94a3b8)}.vc-accordion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.vc-accordion-feature{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:64px;padding:8px 4px;border:1px solid var(--color-border, #e5e9ef);border-radius:10px;background:var(--color-surface-2, #f7f8fa);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}.vc-accordion-feature:hover{background:#fff;border-color:#0ca01f47;transform:translateY(-1px)}.vc-accordion-feature:active{transform:translateY(0)}.vc-accordion-feature-icon{font-size:18px;line-height:1}.vc-accordion-feature-icon svg{width:1em;height:1em}.vc-accordion-feature-label{font-size:9px;font-weight:700;color:var(--color-text-secondary, #475569);text-align:center;line-height:1.15}.vehicle-card-stack{margin-bottom:2px}.vehicle-card-stack .vehicle-card.compact{margin-bottom:0}.vehicle-card-stack.is-expanded .vehicle-card.compact{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:transparent}@keyframes vc-accordion-open{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 380px){.vc-accordion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion: reduce){.vc-accordion,.vc-accordion-feature{animation:none;transition:none}}.live-tracking-container{display:flex;flex-direction:column;margin:0;width:100%;height:100%;max-height:100%;padding:8px;gap:0;overflow:hidden;background-color:var(--color-surface-2);box-sizing:border-box}@media (min-width: 640px){.live-tracking-container{padding:10px}}@media (min-width: 768px){.live-tracking-container{padding:12px}}.live-tracking-chrome{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);height:40px;padding:0 var(--spacing-lg);background:var(--color-surface);border:1px solid var(--color-border);border-bottom:none;border-radius:10px 10px 0 0;flex-shrink:0;z-index:10}.chrome-left{display:flex;align-items:baseline;gap:var(--spacing-md);min-width:0}.chrome-title{margin:0;font-size:var(--font-size-base);font-weight:700;letter-spacing:-.02em;color:var(--color-text-primary);line-height:1.2}.chrome-fleet-count{font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-muted);white-space:nowrap}.connection-pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:var(--font-size-xs);font-weight:600;letter-spacing:.01em;border:1px solid transparent;line-height:1;flex-shrink:0}.connection-pill.connected{background:var(--color-success-soft);border-color:#0ca01f2e;color:var(--color-success-dark)}.connection-pill.disconnected{background:var(--color-danger-soft);border-color:#ef44442e;color:var(--color-danger-dark)}.connection-pill-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;box-shadow:0 0 0 3px #0ca01f24}.connection-pill.disconnected .connection-pill-dot{box-shadow:0 0 0 3px #ef444424;animation:none}.connection-pill.connected .connection-pill-dot{animation:lt-pulse 2.2s ease-in-out infinite}@keyframes lt-pulse{0%,to{opacity:1;box-shadow:0 0 0 3px #0ca01f24}50%{opacity:.55;box-shadow:0 0 0 5px #0ca01f14}}.reconnect-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:2px;border:none;border-radius:50%;background:transparent;color:inherit;cursor:pointer;transition:background-color .15s ease}.reconnect-btn:hover{background:#0000000f}.reconnect-btn svg{width:11px;height:11px}.live-tracking-content{display:flex;flex:1;min-height:0;overflow:hidden;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);background:var(--color-surface)}.fleet-panel{width:340px;max-width:38%;display:flex;flex-direction:column;min-height:0;background:var(--color-surface);border-right:1px solid var(--color-border);flex-shrink:0;z-index:5;box-shadow:1px 0 0 var(--color-border),4px 0 16px #0f281908}.fleet-panel-toolbar{flex-shrink:0;padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex;flex-direction:column;gap:var(--spacing-sm)}.status-filters-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex-shrink:0;width:100%;padding:8px var(--spacing-lg);background:var(--color-surface);border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);z-index:9}.search-form{width:100%}.search-shell{position:relative;display:flex;align-items:center;width:100%;min-width:0}.search-shell .search-icon{position:absolute;left:9px;top:50%;transform:translateY(-50%);width:13px;height:13px;color:var(--color-text-muted);pointer-events:none;z-index:1}.search-shell .input-wrapper{width:100%}.search-shell .input{padding-left:28px;padding-right:28px;height:var(--control-height-md);font-size:var(--font-size-sm);border-radius:var(--radius-md);background:var(--color-surface-2);border-color:var(--color-border)}.search-shell .input:focus{background:var(--color-surface)}.search-clear-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background-color .15s ease,color .15s ease;flex-shrink:0;z-index:1}.search-clear-btn svg{width:12px;height:12px}.search-clear-btn:hover{color:var(--color-danger);background:var(--color-danger-soft)}.status-filters{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.filter-chip{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px 0 7px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:500;letter-spacing:.01em;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;box-shadow:none;line-height:1}.filter-chip:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong);color:var(--color-text-primary)}.filter-chip.active{background:var(--color-primary-50);border-color:#0ca01f47;color:var(--color-primary-dark);box-shadow:none}.filter-chip.active.stopped{background:var(--color-danger-soft);border-color:#ef444447;color:var(--color-danger-dark)}.filter-chip.active.running{background:var(--color-success-soft);border-color:#0ca01f47;color:var(--color-success-dark)}.filter-chip.active.overspeed{background:#e91e6314;border-color:#e91e6347;color:#c2185b}.filter-chip.active.idle{background:var(--color-warning-soft);border-color:#f59e0b52;color:#b45309}.filter-chip.active.inactive{background:#f59e0b1a;border-color:#f59e0b4d;color:#c2410c}.filter-chip.active.no_data{background:var(--color-secondary-soft);border-color:#6b728047;color:var(--color-gray-600)}.filter-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:var(--color-gray-400)}.filter-dot.dot-all{background:var(--color-primary)}.filter-dot.dot-stopped{background:var(--color-danger)}.filter-dot.dot-running{background:var(--color-success)}.filter-dot.dot-overspeed{background:#e91e63}.filter-dot.dot-idle{background:var(--color-warning)}.filter-dot.dot-inactive{background:#f59e0b}.filter-dot.dot-no_data{background:var(--color-secondary)}.filter-label{white-space:nowrap}.filter-count{font-variant-numeric:tabular-nums;font-weight:700;color:var(--color-text-muted);min-width:.75em}.filter-chip.active .filter-count{color:inherit;opacity:.85}.vehicle-list-scrollable{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:6px;background:var(--color-surface-2);scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.vehicle-list-scrollable::-webkit-scrollbar{width:6px}.vehicle-list-scrollable::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:999px}.vehicle-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:var(--spacing-2xl) var(--spacing-lg);text-align:center}.empty-title{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary)}.empty-hint{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.live-tracking-pagination{flex-shrink:0;width:100%;border:1px solid var(--color-border);border-top:1px solid var(--color-border);border-radius:0 0 10px 10px;background:var(--color-surface);overflow:hidden}.live-tracking-pagination>div{border-top:none;border-radius:0;background:transparent}.map-container{flex:1;min-width:0;min-height:0;position:relative;background:#e8eef2}.map-marker{width:34px;height:34px;cursor:pointer;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 4px rgba(15,40,25,.28));transition:transform .15s ease}.map-marker img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.map-marker:hover{transform:scale(1.12);z-index:1000}.map-marker-fallback{width:18px!important;height:18px!important;border-radius:50%;background:var(--color-primary);border:2px solid #fff;color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;margin:0;padding:12px;gap:var(--spacing-sm);background:var(--color-surface-2);box-sizing:border-box}.loading-spinner{width:26px;height:26px;border:2.5px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:lt-spin .75s linear infinite}@media (prefers-reduced-motion: reduce){.connection-pill.connected .connection-pill-dot,.loading-spinner,.map-marker{animation:none;transition:none}}@media (max-width: 900px){.fleet-panel{width:300px;max-width:42%}}@media (max-width: 768px){.live-tracking-container{height:100%;max-height:none;overflow:auto;padding:8px}.live-tracking-content{flex-direction:column;flex:none;overflow:visible}.fleet-panel{width:100%;max-width:none;height:300px;border-right:none;border-bottom:1px solid var(--color-border);box-shadow:none}.map-container{height:380px;flex:none}.live-tracking-chrome{height:auto;min-height:40px;padding:8px var(--spacing-md)}.status-filters-bar{padding:8px var(--spacing-md)}}.lt-speedometer{position:relative;flex-shrink:0}.lt-speedometer-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;padding-top:4%}.lt-speedometer-value{font-size:calc(var(--lt-speedo-size, 92px) * .28);font-weight:800;color:#111827;line-height:1}.lt-speedometer-unit{font-size:calc(var(--lt-speedo-size, 92px) * .11);font-weight:500;color:#9ca3af;line-height:1.1}.lt-speedometer-icon{margin-top:4px}.live-tracking-show{position:relative;display:flex;flex-direction:column;height:100%;max-height:100%;margin:0;padding:8px;box-sizing:border-box;overflow:hidden;background:#f7f8fc}@media (min-width: 768px){.live-tracking-show{padding:12px}}.lt-show-map-shell{position:relative;flex:1;min-height:0;border-radius:14px;overflow:hidden;border:1px solid #e5e9ef;background:#e8eef2}.live-tracking-map{position:absolute;inset:0}.map-loading{position:absolute;inset:0;z-index:500;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f7f8fc;color:var(--color-text-secondary);font-size:14px}.lt-status-card{position:absolute;top:10px;left:10px;right:68px;z-index:20;display:flex;align-items:center;gap:10px;padding:7px 10px;background:#fff;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 4px 12px #0000000a;max-width:none}@media (min-width: 900px){.lt-status-card{right:68px;width:auto}}.lt-status-back{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-top:0;border:none;border-radius:50%;background:transparent;color:#1f2937;cursor:pointer}.lt-status-back:hover{background:#f3f4f6}.lt-status-identity{flex:1.4;min-width:0}.lt-status-identity-top{display:flex;align-items:center;gap:7px;min-width:0}.lt-status-avatar{position:relative;width:36px;height:36px;flex-shrink:0;border-radius:50%;background:#f3f4f6;border:1.5px solid #e5e7eb;overflow:hidden;display:flex;align-items:center;justify-content:center}.lt-status-avatar img{width:28px;height:28px;-o-object-fit:contain;object-fit:contain}.lt-status-dot{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;border:2px solid #fff}.lt-status-text{min-width:0;flex:1}.lt-status-plate{display:block;font-size:13px;font-weight:700;color:#1f2937;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lt-status-pill{display:inline-flex;margin-top:2px;padding:1px 7px;border-radius:20px;color:#fff;font-size:9px;font-weight:600;line-height:1.3}.lt-status-meta{display:flex;align-items:center;gap:4px;margin-top:4px;color:#6b7280;font-size:10px;line-height:1.2}.lt-status-meta+.lt-status-meta{margin-top:2px}.lt-status-meta-icon{flex-shrink:0;margin-top:0;font-size:11px;opacity:.85}.lt-status-meta-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;-webkit-line-clamp:unset}.lt-status-speedo{flex-shrink:0;padding:0;transform:scale(.85);transform-origin:center}.lt-status-stats{flex:1.1;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 10px;padding-top:0}.lt-mini-stat{display:flex;align-items:center;gap:4px;min-width:0}.lt-mini-stat-icon{width:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:#64748b;margin-top:0}.lt-mini-stat-body{min-width:0}.lt-mini-stat-label{display:block;font-size:9px;color:#6b7280;line-height:1.05}.lt-mini-stat-value{display:block;font-size:11px;font-weight:700;color:#1f2937;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lt-bottom-grid.partner{grid-template-columns:1fr 1fr}.lt-socket-pill{position:absolute;top:10px;right:10px;z-index:21;display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 7px;border-radius:999px;font-size:9px;font-weight:700;border:1px solid transparent;background:#fff;box-shadow:0 2px 8px #0000000f}.lt-socket-pill.live{color:#166534;border-color:#bbf7d0}.lt-socket-pill.offline{color:#b91c1c;border-color:#fecaca}.lt-socket-pill-dot{width:6px;height:6px;border-radius:50%;background:currentColor}@media (max-width: 899px){.lt-socket-pill{top:auto;bottom:auto}}.lt-fab-stack{position:absolute;right:10px;top:118px;z-index:20;display:flex;flex-direction:column;gap:8px}.lt-fab{width:40px;height:40px;border-radius:50%;border:3px solid #fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #00000029;transition:transform .15s ease,box-shadow .15s ease;padding:0;color:#fff;overflow:hidden}.lt-fab:hover{transform:scale(1.05);box-shadow:0 4px 12px #0003}.lt-fab.satellite{width:44px;height:44px;background:#fff;padding:0}.lt-fab.satellite img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.lt-fab.navigate{background:#2563eb}.lt-fab.weather{background:#ea580c}.lt-fab.recenter{background:var(--color-primary, #0ca01f)}.lt-bottom-dock{flex-shrink:0;margin-top:6px;padding:6px 8px;background:#fff;border:1px solid #f0f3f6;border-radius:14px;box-shadow:0 -2px 12px #0000000a}.lt-bottom-grid{display:grid;grid-template-columns:3.5fr 3.5fr 1.5fr 1.5fr;gap:5px;width:100%}.lt-stat-tile{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:10px;border:1px solid #f0f3f6;background:#fff;min-width:0;height:100%;box-sizing:border-box}.lt-stat-icon-well{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px}.lt-stat-copy{min-width:0}.lt-stat-label{display:block;font-size:10px;color:#6b7280;line-height:1.15}.lt-stat-value{display:block;font-size:12px;font-weight:700;color:#1f2937;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lt-action-chip{min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 2px;border:1px solid #f0f3f6;border-radius:10px;background:#f8fafc;cursor:pointer;transition:background-color .15s ease,transform .15s ease;box-sizing:border-box}.lt-action-chip:hover{background:#f1f5f9;transform:translateY(-1px)}.lt-action-chip-icon{font-size:14px;line-height:1}.lt-action-chip-label{font-size:9px;font-weight:600;color:#475569;text-align:center;line-height:1.1}.lt-weather-overlay{position:absolute;inset:0;z-index:40;background:#0f172a59;display:flex;align-items:flex-end;justify-content:center}.lt-weather-sheet{width:min(420px,100%);max-height:80%;overflow:auto;background:#fff;border-radius:16px 16px 0 0;padding:8px 16px 16px;animation:lt-sheet-up .25s ease}.lt-weather-handle{width:36px;height:4px;margin:4px auto 12px;border-radius:999px;background:#d1d5db}.lt-weather-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.lt-weather-header h3{margin:0;font-size:16px;font-weight:700;color:#1f2937}.lt-weather-close{border:none;background:#f3f4f6;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1;color:#4b5563}.lt-weather-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lt-weather-card{padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #f0f3f6}.lt-weather-card-label{display:block;font-size:11px;color:#6b7280;margin-bottom:4px}.lt-weather-card-value{display:block;font-size:14px;font-weight:700;color:#1f2937}.lt-weather-temp{text-align:center;margin-bottom:12px}.lt-weather-temp-value{font-size:36px;font-weight:800;color:#1f2937;line-height:1}.lt-weather-temp-desc{margin-top:4px;font-size:13px;color:#6b7280}@keyframes lt-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.live-tracking-loading,.live-tracking-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:20px;background:#f7f8fc;text-align:center;box-sizing:border-box}.loading-spinner{width:36px;height:36px;border:3px solid #e5e7eb;border-top-color:var(--color-primary, #0ca01f);border-radius:50%;animation:lt-spin .75s linear infinite;margin-bottom:12px}@keyframes lt-spin{to{transform:rotate(360deg)}}.loading-text{color:#6b7280;font-size:13px;font-weight:500}.live-tracking-error p{color:#6b7280;margin-bottom:16px;font-size:14px}.back-button{padding:8px 16px;border-radius:8px;border:1px solid #e5e9ef;background:#fff;cursor:pointer;font-weight:600;color:#1f2937}@media (max-width: 640px){.lt-status-card{right:10px;flex-wrap:wrap;gap:6px;align-items:flex-start}.lt-status-speedo{order:3;margin:0 auto;transform:scale(.8)}.lt-status-stats{flex:1 1 100%;display:grid;grid-template-columns:1fr 1fr;gap:4px 8px}.lt-fab-stack{top:auto;bottom:12px}.lt-bottom-grid{grid-template-columns:1fr 1fr}.lt-bottom-grid .lt-action-chip{min-height:44px}.lt-action-chip-label{font-size:9px}}@media (prefers-reduced-motion: reduce){.lt-fab,.lt-action-chip,.lt-weather-sheet,.loading-spinner{animation:none;transition:none}}.live-tracking-show{height:100vh;display:flex;flex-direction:column;background-color:var(--color-surface-2)}.minimal-top-panel{background:var(--color-surface);padding:10px 20px;box-shadow:0 2px 4px #0000001a;z-index:1000}.vehicle-info{display:flex;justify-content:space-between;align-items:center;gap:20px}.vehicle-info-item{display:flex;gap:5px;align-items:center;font-size:14px;font-weight:600;color:var(--color-text-primary)}.tracking-status{font-size:12px;font-weight:600;padding:4px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.tracking-active{background-color:#dcfce7;color:#166534;border:1px solid #bbf7d0}.tracking-inactive{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}.map-container{flex:1;position:relative;min-height:400px}.fixed-center-marker{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;pointer-events:none}.fixed-center-marker>div{transition:transform .8s ease}.floating-buttons{position:absolute;right:10px;top:80px;display:flex;flex-direction:column;gap:10px;z-index:1000}.floating-button{width:60px;height:60px;border-radius:50%;border:4px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 15px #0000001f;transition:all .3s ease;position:relative;overflow:hidden}.floating-button:hover{transform:scale(1.05);box-shadow:0 0 20px #0003}.floating-button:active{transform:scale(.95)}.floating-button:disabled{opacity:.6;cursor:not-allowed}.floating-button:disabled:hover{transform:none}.satellite-button{background:#fff;color:#333;padding:0;overflow:hidden}.satellite-button:hover{background:#f8f9fa;transform:scale(1.05)}.satellite-icon{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.playback-button{background:#10b981;color:#fff}.playback-button:hover{background:#059669}.weather-button{background:#3b82f6;color:#fff}.weather-button:hover{background:#2563eb}.altitude-button{background:#8b5cf6;color:#fff;flex-direction:column;padding:8px}.altitude-button:hover{background:#7c3aed}.altitude-text{font-size:7px;font-weight:700;line-height:1;margin-top:2px;color:#fff}.weather-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.weather-modal{background:#fff;border-radius:20px;box-shadow:0 20px 40px #00000080;border:3px solid white;max-width:400px;width:100%;max-height:80vh;overflow:hidden}.weather-modal-header{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;padding:20px;display:flex;justify-content:space-between;align-items:center}.weather-modal-header h3{margin:0;font-size:18px;font-weight:600}.close-button{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.close-button:hover{background-color:#fff3}.weather-modal-content{padding:20px;max-height:60vh;overflow-y:auto}.weather-data{display:flex;flex-direction:column;gap:15px}.weather-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e5e7eb}.weather-item:last-child{border-bottom:none}.weather-label{font-weight:600;color:#374151;font-size:14px}.weather-value{color:#6b7280;font-size:14px;text-align:right}.weather-loading{text-align:center;color:#6b7280;font-style:italic;padding:20px}.live-tracking-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#f9fafb}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #6366f1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{color:#6b7280;font-size:14px;font-weight:500}.live-tracking-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:#f9fafb;text-align:center;padding:20px}.live-tracking-error h3{color:#dc2626;margin-bottom:8px;font-size:18px}.live-tracking-error p{color:#6b7280;margin-bottom:20px;font-size:14px}@media (max-width: 768px){.status-row{flex-wrap:wrap;gap:15px}.speedometer{min-width:70px;padding:12px 15px}.speed-value{font-size:20px}.data-item{min-width:50px}.map-controls{right:10px;top:10px}.control-button{width:45px;height:45px;font-size:16px}}.vehicle-monitoring-container{display:flex;flex-direction:column;margin:-.625rem;width:calc(100% + 1.25rem);height:calc(100dvh - 3.5rem);max-height:calc(100dvh - 3.5rem);overflow:hidden;background-color:var(--color-surface-2);box-sizing:border-box}@media (min-width: 640px){.vehicle-monitoring-container{margin:-.75rem;width:calc(100% + 1.5rem)}}@media (min-width: 768px){.vehicle-monitoring-container{margin:-1rem;width:calc(100% + 2rem)}}.live-tracking-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);z-index:10;gap:var(--spacing-sm);flex-shrink:0}.header-title{display:flex;align-items:center;gap:var(--spacing-sm)}.header-title h3{margin:0;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:700;letter-spacing:-.01em}.connection-status{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:600;line-height:1.2}.connection-status.connected{background-color:var(--color-success-soft);color:var(--color-success-dark)}.connection-status.disconnected{background-color:var(--color-danger-soft);color:var(--color-danger-dark)}.status-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor;flex-shrink:0;animation:vm-pulse 2s infinite}@keyframes vm-pulse{0%,to{opacity:1}50%{opacity:.45}}.background-loading-indicator{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background-color:var(--color-primary-50);border:1px solid var(--color-primary-150);border-radius:var(--radius-sm);font-size:10px;font-weight:600;color:var(--color-primary-dark)}.loading-spinner-small{width:10px;height:10px;border:2px solid var(--color-primary-100);border-top-color:var(--color-primary);border-radius:50%;animation:vm-spin .8s linear infinite}.loading-text-small{white-space:nowrap}.status-filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.filter-button{padding:4px 10px;border:none;border-radius:var(--radius-sm);font-weight:700;font-size:10px;letter-spacing:.02em;cursor:pointer;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease;background:var(--color-primary-50);color:var(--color-primary-dark);white-space:nowrap}.filter-button:hover{background:var(--color-primary-100)}.filter-button.active{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-sm)}.filter-button.stopped{background:var(--color-danger-soft);color:var(--color-danger-dark)}.filter-button.stopped:hover{background:#ef444429}.filter-button.stopped.active{background:var(--color-danger);color:#fff}.filter-button.running{background:var(--color-success-soft);color:var(--color-success-dark)}.filter-button.running:hover{background:#0ca01f29}.filter-button.running.active{background:var(--color-success);color:#fff}.filter-button.overspeed{background:#e91e631a;color:#c2185b}.filter-button.overspeed:hover{background:#e91e6329}.filter-button.overspeed.active{background:#e91e63;color:#fff}.filter-button.idle{background:var(--color-warning-soft);color:#b45309}.filter-button.idle:hover{background:#f59e0b33}.filter-button.idle.active{background:var(--color-warning);color:#fff}.filter-button.inactive{background:#ff98001f;color:#c2410c}.filter-button.inactive:hover{background:#ff980033}.filter-button.inactive.active{background:#f59e0b;color:#fff}.filter-button.no_data{background:var(--color-secondary-soft);color:var(--color-gray-600)}.filter-button.no_data:hover{background:#6b728029}.filter-button.no_data.active{background:var(--color-secondary);color:#fff}.vehicle-monitoring-content{flex:1;display:flex;position:relative;min-height:0}.map-container-full{flex:1;position:relative;min-height:0}.map{width:100%;height:100%}.map-marker{transition:transform .15s ease}.map-marker:hover{transform:scale(1.08)}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(100dvh - 3.5rem);margin:-.625rem;gap:var(--spacing-sm);background:var(--color-surface-2);text-align:center;padding:var(--spacing-xl)}.loading-spinner{width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:vm-spin .8s linear infinite}@keyframes vm-spin{to{transform:rotate(360deg)}}.loading-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500}.loading-progress{width:100%;max-width:320px;margin-top:var(--spacing-md)}.progress-bar{width:100%;height:6px;background-color:var(--color-border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.progress-fill{height:100%;background:var(--color-primary);border-radius:var(--radius-sm);transition:width .3s ease}.progress-text{color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center;font-weight:500}.error-message{color:var(--color-danger);font-size:var(--font-size-base);font-weight:600;max-width:360px}.retry-button{height:var(--control-height-md);padding:0 14px;background:var(--color-primary);color:var(--color-on-primary);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background-color .15s ease}.retry-button:hover{background:var(--color-primary-dark)}@media (max-width: 768px){.vehicle-monitoring-container{height:calc(100dvh - 3.25rem);max-height:none;overflow:auto}.live-tracking-header{flex-direction:column;align-items:stretch}.status-filters{justify-content:flex-start}.filter-button{padding:3px 8px;font-size:9px}.map-container-full{min-height:360px}}.dashcam-app{background-color:var(--color-surface-2)}.dashcam-status-bar{height:40px;min-height:40px;background:var(--color-surface);display:flex;align-items:center;justify-content:space-between;padding:0 16px;box-shadow:0 1px 3px #00000014;border-bottom:1px solid var(--color-border)}.dashcam-status-left{display:flex;align-items:center;gap:8px}.dashcam-live-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#dc2626}.dashcam-live-dot{width:8px;height:8px;border-radius:50%;background:#dc2626;animation:dashcam-pulse 1.5s ease-in-out infinite}@keyframes dashcam-pulse{0%,to{opacity:1}50%{opacity:.5}}.dashcam-codec{font-size:11px;color:var(--color-text-secondary);background:var(--color-surface-2);padding:2px 8px;border-radius:4px;border:1px solid var(--color-border)}.dashcam-status-right{display:flex;align-items:center;gap:8px}.dashcam-status-connected{font-size:12px;color:#059669;font-weight:500}.dashcam-status-disconnected{font-size:12px;color:#dc2626;font-weight:500}.dashcam-cameras-row{display:grid;grid-template-columns:1fr 1fr;gap:0;flex:0 0 40%;min-height:0;background:#000}.dashcam-cameras-row--single{grid-template-columns:1fr}.dashcam-camera-panel{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;background:#000}.dashcam-panel-refresh{position:absolute;top:8px;right:8px;z-index:10;width:32px;height:32px;border-radius:50%;background:#00000080;border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.dashcam-panel-refresh:hover{background:#000000b3}.dashcam-panel-refresh:active{transform:scale(.95)}.dashcam-panel-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;color:#fff9;gap:4px}.dashcam-panel-placeholder-label{font-size:14px;font-weight:600}.dashcam-panel-placeholder-hint{font-size:11px}.dashcam-video-wrap{position:relative;width:100%;height:100%;min-height:0;background:#000}.dashcam-video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.dashcam-video-loading{position:absolute;inset:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:12px}.dashcam-video-spinner{width:32px;height:32px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:dashcam-spin .8s linear infinite;margin-bottom:8px}@keyframes dashcam-spin{to{transform:rotate(360deg)}}.dashcam-video-play-blocked{position:absolute;inset:0;background:#0009;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:12px;gap:8px}.dashcam-video-play-blocked button{padding:8px 16px;background:#059669;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}.dashcam-video-play-blocked button:hover{background:#047857}.dashcam-video-label{position:absolute;top:8px;left:8px;background:#0009;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600}.dashcam-map-section{flex:1;min-height:200px;position:relative;background:#e5e7eb}.dashcam-map-container{width:100%;height:100%;min-height:200px}.dashcam-map-waiting{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f3f4f6;color:#6b7280;font-size:14px;gap:12px}.dashcam-map-waiting-spinner{width:28px;height:28px;border:2px solid #d1d5db;border-top-color:#059669;border-radius:50%;animation:dashcam-spin .8s linear infinite}.dashcam-map-status{position:absolute;left:10px;top:50%;transform:translateY(-50%);z-index:1000;font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px}.dashcam-map-status-live{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.dashcam-map-status-off{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.dashcam-fixed-marker{position:absolute;top:50%;left:50%;width:60px;height:60px;pointer-events:none;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.dashcam-fixed-marker>img,.dashcam-fixed-marker>.dashcam-fallback-marker{width:60px;height:60px;flex-shrink:0}.dashcam-marker-speed{margin-top:2px;font-size:10px;font-weight:600;color:#1f2937;background:#fff;padding:2px 6px;border-radius:4px;border:1px solid #e5e7eb;white-space:nowrap}.dashcam-map-floating-buttons{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:8px;z-index:1000}.dashcam-map-btn{width:44px;height:44px;border-radius:50%;border:3px solid white;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #00000026;transition:transform .2s,box-shadow .2s;background:#fff;color:#374151}.dashcam-map-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px #0003}.dashcam-map-btn:disabled{opacity:.6;cursor:not-allowed}.dashcam-map-btn.satellite-button{padding:0;overflow:hidden}.dashcam-map-btn-icon{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%}.dashcam-map-btn.playback-button{background:#10b981;color:#fff}.dashcam-map-btn.weather-button{background:#3b82f6;color:#fff}.dashcam-map-btn.altitude-button{background:#8b5cf6;color:#fff;flex-direction:column;padding:4px}.dashcam-altitude-text{font-size:8px;font-weight:700;line-height:1;color:#fff}.dashcam-error-overlay{position:fixed;inset:0;z-index:2000;background:#000c;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;padding:24px;gap:16px}.dashcam-error-overlay p{margin:0;font-size:14px;text-align:center}.dashcam-error-overlay button{padding:10px 20px;background:#059669;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.dashcam-error-overlay button:hover{background:#047857}.dashcam-panel-error-overlay{position:absolute;inset:0;z-index:20;background:#000c;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;padding:16px;gap:12px}.dashcam-panel-error-overlay p{margin:0;font-size:12px;text-align:center}.dashcam-panel-error-overlay button{padding:8px 16px;background:#059669;color:#fff;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer}.dashcam-panel-error-overlay button:hover{background:#047857}.dashcam-fullscreen-overlay{position:fixed;inset:0;z-index:3000;background:#000;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch}.dashcam-fullscreen-back{position:absolute;top:12px;left:12px;z-index:10;width:44px;height:44px;border-radius:50%;background:#00000080;border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s}.dashcam-fullscreen-back:hover{background:#000000b3}.dashcam-fullscreen-video{position:absolute;left:50%;top:50%;width:100vh;height:100vw;transform:translate(-50%,-50%) rotate(90deg)}.dashcam-fullscreen-video .dashcam-video-wrap{width:100%;height:100%}.dashcam-fullscreen-video .dashcam-video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.dashcam-weather-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2500;padding:20px}.dashcam-weather-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:380px;width:100%;max-height:80vh;overflow:hidden}.dashcam-weather-header{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.dashcam-weather-header h3{margin:0;font-size:18px;font-weight:600}.dashcam-weather-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;line-height:1}.dashcam-weather-close:hover{background:#fff3}.dashcam-weather-content{padding:20px;max-height:60vh;overflow-y:auto}.dashcam-weather-data{display:flex;flex-direction:column;gap:12px}.dashcam-weather-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e5e7eb}.dashcam-weather-item:last-child{border-bottom:none}.dashcam-weather-label{font-weight:600;color:#374151;font-size:14px}.dashcam-weather-value{color:#6b7280;font-size:14px}.dashcam-playback-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#b45309}.dashcam-playback-dot{width:8px;height:8px;border-radius:50%;background:#d97706;animation:dashcam-pulse 1.5s ease-in-out infinite}.dashcam-map-status-playback{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.dashcam-playback-dock{position:absolute;left:0;right:0;bottom:0;z-index:900;padding:10px 12px 14px;padding-bottom:max(14px,env(safe-area-inset-bottom,14px));background:linear-gradient(to top,#fffffff7,#ffffffeb);border-top:1px solid var(--color-border, #e5e7eb);box-shadow:0 -4px 16px #00000014}.dashcam-playback-dock-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.dashcam-playback-field{flex:1;min-width:140px;display:flex;flex-direction:column;gap:2px;font-size:10px;font-weight:600;color:#4b5563}.dashcam-playback-field-wide{flex:1 1 100%;min-width:min(100%,200px)}.dashcam-playback-field input,.dashcam-playback-field select{font-size:12px;padding:6px 8px;border-radius:8px;border:1px solid #d1d5db;background:#fff;color:#111}.dashcam-playback-error{margin:0 0 6px;font-size:11px;color:#b91c1c}.dashcam-playback-dock-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px}.dashcam-playback-primary{flex:1;min-width:120px;padding:10px 14px;border-radius:10px;border:none;background:#059669;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.dashcam-playback-primary:disabled{opacity:.55;cursor:not-allowed}.dashcam-playback-secondary{padding:10px 16px;border-radius:10px;border:1px solid #059669;background:#fff;color:#047857;font-size:13px;font-weight:600;cursor:pointer}.dashcam-playback-hint{margin:0 0 6px;font-size:10px;color:#4b5563;line-height:1.35}.dashcam-playback-timeline input[type=range]{width:100%;margin:4px 0 6px;accent-color:#059669}.dashcam-playback-window-label{font-size:9px;color:#6b7280;text-align:center;line-height:1.3}.dashcam-playback-sd-note{margin:4px 0 0;font-size:9px;color:#6b7280;line-height:1.35}.dashcam-streaming-unavailable{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:200px;padding:1.5rem;text-align:center;background:var(--surface-muted, #f4f4f5);border:1px dashed var(--border-color, #d4d4d8);border-radius:8px}.dashcam-streaming-unavailable__title{margin:0;font-size:1.05rem;font-weight:600;color:var(--text-primary, #18181b)}.dashcam-streaming-unavailable__hint{margin:0;max-width:36rem;font-size:.9rem;line-height:1.45;color:var(--text-secondary, #52525b)}.super-monitor-root{--sm-header-h: 52px;height:100vh;max-height:100vh;overflow:hidden;display:flex;flex-direction:column}.super-monitor-theme-dark.super-monitor-root{--sm-bg: #050810;--sm-panel: #0a1020;--sm-border: rgba(56, 189, 248, .25);--sm-glow: rgba(34, 211, 238, .15);--sm-text: #e0f2fe;--sm-muted: #64748b;--sm-subtle: #64748b;--sm-card-secondary: #94a3b8;--sm-accent-inst: rgba(103, 232, 249, .9);--sm-accent: #22d3ee;--sm-accent2: #a78bfa;--sm-danger: #f472b6;--sm-banner-error-bg: transparent;--sm-banner-error-border: rgba(244, 114, 182, .35);--sm-radar-green: rgba(34, 197, 94, .85);--sm-log-fg: #86efac;--sm-log-rule: rgba(148, 163, 184, .12);--sm-header-bg: rgba(10, 16, 32, .95);--sm-fs-active-border: rgba(34, 211, 238, .55);--sm-fs-active-text: #67e8f9;--sm-alert-card-bg: rgba(15, 23, 42, .72);--sm-btn-ghost-color: #94a3b8;--sm-btn-bg: rgba(15, 23, 42, .9);--sm-map-footer-border: rgba(34, 211, 238, .12);background:var(--sm-bg);color:var(--sm-text);background-image:radial-gradient(ellipse 120% 80% at 50% -20%,rgba(34,211,238,.12),transparent),linear-gradient(180deg,#070d18,#050810 40%)}.super-monitor-theme-light.super-monitor-root{--sm-bg: #e8eef5;--sm-panel: #ffffff;--sm-border: rgba(14, 116, 144, .22);--sm-glow: rgba(8, 145, 178, .12);--sm-text: #0f172a;--sm-muted: #475569;--sm-subtle: #64748b;--sm-card-secondary: #475569;--sm-accent-inst: #0e7490;--sm-accent: #0891b2;--sm-accent2: #6d28d9;--sm-danger: #be185d;--sm-banner-error-bg: #fff1f2;--sm-banner-error-border: rgba(190, 24, 93, .25);--sm-radar-green: rgba(5, 150, 105, .85);--sm-log-fg: #166534;--sm-log-rule: rgba(15, 23, 42, .08);--sm-header-bg: rgba(255, 255, 255, .92);--sm-fs-active-border: rgba(8, 145, 178, .5);--sm-fs-active-text: #0e7490;--sm-alert-card-bg: #f8fafc;--sm-btn-ghost-color: #475569;--sm-btn-bg: #f1f5f9;--sm-map-footer-border: rgba(14, 116, 144, .15);background:var(--sm-bg);color:var(--sm-text);background-image:radial-gradient(ellipse 120% 80% at 50% -25%,rgba(8,145,178,.08),transparent),linear-gradient(180deg,#f8fafc,#e8eef5 45%)}.sm-txt-muted{color:var(--sm-muted)}.sm-txt-body{color:var(--sm-text)}.sm-txt-subtle{color:var(--sm-subtle)}.sm-txt-card-secondary{color:var(--sm-card-secondary)}.sm-alert-inst{color:var(--sm-accent-inst)}.sm-banner-error{color:var(--sm-danger);background:var(--sm-banner-error-bg);border-color:var(--sm-banner-error-border)!important}.sm-header-user{color:var(--sm-muted)}.super-monitor-header{flex:0 0 var(--sm-header-h);display:flex;align-items:center;justify-content:space-between;padding:0 1rem;border-bottom:1px solid var(--sm-border);background:var(--sm-header-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:var(--sm-header-h)}.super-monitor-title{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sm-accent);text-shadow:0 0 18px var(--sm-glow)}.super-monitor-grid{flex:1;min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:.5rem;padding:.5rem;overflow:hidden}@media (min-width: 1280px){.super-monitor-grid{grid-template-columns:minmax(260px,.95fr) minmax(320px,1.35fr) minmax(260px,.95fr);grid-template-rows:minmax(0,1fr)}}.super-monitor-panel{border:1px solid var(--sm-border);border-radius:8px;background:var(--sm-panel);box-shadow:0 0 0 1px #0006,inset 0 1px #ffffff08;display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative}.super-monitor-theme-light.super-monitor-root .super-monitor-panel{box-shadow:0 1px 3px #0f172a0f,inset 0 1px #ffffffe6}.super-monitor-panel-h{flex:0 0 auto;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;padding:.4rem .55rem;border-bottom:1px solid var(--sm-border);color:var(--sm-accent2);font-family:ui-monospace,monospace;display:flex;align-items:center;justify-content:space-between;gap:.35rem;flex-wrap:wrap}.super-monitor-panel-h-actions{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.super-monitor-log-wrap{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.super-monitor-log{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;font-family:ui-monospace,monospace;font-size:.72rem;line-height:1.45;padding:.5rem;color:var(--sm-log-fg)}.super-monitor-log-line{border-bottom:1px dashed var(--sm-log-rule);padding:.15rem 0;word-break:break-all}.super-monitor-map-wrap{flex:1;min-height:0;position:relative}.super-monitor-btn{font-family:ui-monospace,monospace;font-size:.65rem;padding:.3rem .55rem;border-radius:4px;border:1px solid var(--sm-border);background:var(--sm-btn-bg);color:var(--sm-accent);cursor:pointer}.super-monitor-btn:hover{border-color:var(--sm-accent);box-shadow:0 0 12px var(--sm-glow)}.super-monitor-btn-ghost{border-color:#94a3b859;color:var(--sm-btn-ghost-color)}.super-monitor-fs-toggle--active{border-color:var(--sm-fs-active-border);color:var(--sm-fs-active-text)}.super-monitor-theme-light.super-monitor-root .super-monitor-btn-ghost{border-color:#0f172a1f}.super-monitor-theme-toggle{min-width:3.25rem;text-align:center}.super-monitor-pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.65rem;padding:.2rem .5rem;border-radius:999px;border:1px solid var(--sm-border);color:var(--sm-muted)}.super-monitor-pill.ok{border-color:#22c55e80;color:#4ade80}.super-monitor-pill.bad{border-color:#f472b680;color:var(--sm-danger)}.sm-radar-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.sm-radar-map-wrap{flex:1.15;min-height:140px;position:relative;border-bottom:1px solid var(--sm-map-footer-border)}.sm-radar-overlay-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:2}.sm-radar-dish{width:min(78%,240px);aspect-ratio:1;border-radius:50%;position:relative;border:2px solid rgba(34,197,94,.42);box-shadow:0 0 36px #22d3ee1a,inset 0 0 48px #00000038,inset 0 0 0 1px #ffffff0d;background:radial-gradient(circle at 50% 50%,rgba(16,185,129,.14) 0%,transparent 52%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(34,211,238,.09) 32%,transparent 36%),radial-gradient(circle at 50% 50%,transparent 46%,rgba(34,211,238,.06) 48%,transparent 52%),radial-gradient(circle at 50% 50%,transparent 58%,rgba(34,211,238,.05) 60%,transparent 64%),#080f1c1f}.super-monitor-theme-light.super-monitor-root .sm-radar-dish{border-color:#05966966;box-shadow:0 0 28px #0891b21f,inset 0 0 40px #ffffff59,inset 0 0 0 1px #0f172a0f;background:radial-gradient(circle at 50% 50%,rgba(16,185,129,.1) 0%,transparent 52%),radial-gradient(circle at 50% 50%,transparent 30%,rgba(8,145,178,.07) 32%,transparent 36%),#ffffff14}.sm-radar-dish:before{content:"";position:absolute;inset:10%;border-radius:50%;border:1px solid rgba(34,211,238,.15)}.sm-radar-dish:after{content:"";position:absolute;top:50%;left:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:#22d3ee59;border:2px solid rgba(167,139,250,.5);box-shadow:0 0 12px #22d3ee80}.sm-radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg at 50% 50%,rgba(52,211,153,.28) 0deg,rgba(52,211,153,.1) 38deg,transparent 48deg,transparent 360deg);animation:sm-radar-spin 4.5s linear infinite}@keyframes sm-radar-spin{to{transform:rotate(360deg)}}.sm-radar-cross{position:absolute;inset:0;border-radius:50%;overflow:hidden}.sm-radar-cross:before,.sm-radar-cross:after{content:"";position:absolute;background:#22c55e2e}.sm-radar-cross:before{left:50%;top:6%;bottom:6%;width:1px;transform:translate(-50%)}.sm-radar-cross:after{top:50%;left:6%;right:6%;height:1px;transform:translateY(-50%)}.sm-radar-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.super-monitor-alert-card{margin:.35rem .45rem;padding:.45rem .55rem;border-radius:6px;border:1px solid rgba(167,139,250,.28);background:var(--sm-alert-card-bg);font-size:.76rem}.super-monitor-theme-light.super-monitor-root .super-monitor-alert-card{border-color:#6d28d933;box-shadow:0 1px 2px #0f172a0a}.super-monitor-alert-focus{border-color:#22d3ee8c;box-shadow:0 0 22px #22d3ee1f}.sm-status-pill{display:inline-block;font-size:.58rem;font-weight:600;letter-spacing:.06em;padding:.12rem .35rem;border-radius:999px;text-transform:uppercase}.sm-status-pending{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.35)}.sm-status-approved{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.35)}.sm-status-rejected{background:#f43f5e1f;color:#fb7185;border:1px solid rgba(244,63,94,.35)}.sm-status-default{background:#94a3b81f;color:#94a3b8;border:1px solid rgba(148,163,184,.25)}.super-monitor-map-footer{flex:0 0 auto;font-size:.65rem;color:var(--sm-muted);font-family:ui-monospace,monospace;padding:.25rem .5rem;border-top:1px solid var(--sm-map-footer-border)}.super-monitor-root.super-monitor-has-fs{background:var(--sm-bg)}.super-monitor-theme-dark.super-monitor-root.super-monitor-has-fs{background:#020617}.super-monitor-theme-light.super-monitor-root.super-monitor-has-fs{background:#f1f5f9}.super-monitor-panel.super-monitor-panel--fullscreen{position:fixed;inset:0;z-index:8000;border-radius:0;border:none;max-height:none!important}.super-monitor-root.super-monitor-has-fs .super-monitor-header{display:none}.super-monitor-root.super-monitor-has-fs .super-monitor-grid{padding:0;gap:0}.super-monitor-root.super-monitor-has-fs .super-monitor-panel:not(.super-monitor-panel--fullscreen){display:none}.super-monitor-alert-dot{display:block;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#34d399e0;border:2px solid rgba(34,211,238,.9);box-shadow:0 0 14px #22d3eea6;cursor:pointer;position:relative;z-index:4}.super-monitor-alert-dot:hover{transform:translate(-50%,-50%) scale(1.1)}.super-monitor-alert-dot--selected{box-shadow:0 0 0 3px #22d3ee59,0 0 18px #22d3eed9}.super-monitor-theme-light.super-monitor-root .super-monitor-alert-dot--selected{box-shadow:0 0 0 3px #0891b259,0 0 14px #0891b28c}.super-monitor-fleet-marker{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:none;background:transparent;cursor:pointer;position:relative;z-index:4;border-radius:4px}.super-monitor-fleet-marker:focus-visible{outline:2px solid var(--sm-accent);outline-offset:2px}.super-monitor-fleet-marker--selected{box-shadow:0 0 0 2px #22d3eea6;border-radius:6px}.super-monitor-theme-light.super-monitor-root .super-monitor-fleet-marker--selected{box-shadow:0 0 0 2px #0891b28c}.sm-map-detail-pop{position:absolute;z-index:10;left:.35rem;right:.35rem;bottom:.35rem;max-height:min(52%,240px);display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--sm-border);background:var(--sm-panel);box-shadow:0 10px 40px #00000073;pointer-events:auto;overflow:hidden}.super-monitor-theme-light.super-monitor-root .sm-map-detail-pop{box-shadow:0 10px 36px #0f172a1f}.sm-map-detail-pop-h{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .45rem;border-bottom:1px solid var(--sm-map-footer-border);font-family:ui-monospace,monospace;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sm-accent2)}.sm-map-detail-pop-title{font-weight:600}.sm-map-detail-close{min-width:1.75rem;padding:.15rem .35rem;line-height:1;font-size:1rem}.sm-map-detail-body{padding:.45rem .55rem .5rem;overflow-y:auto;font-size:.72rem;line-height:1.4}.sm-map-detail-row{display:grid;grid-template-columns:5.2rem 1fr;gap:.35rem .5rem;padding:.2rem 0;border-bottom:1px dashed var(--sm-log-rule)}.sm-map-detail-row:last-of-type{border-bottom:none}.sm-map-detail-k{color:var(--sm-muted);font-family:ui-monospace,monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.04em}.sm-map-detail-v{word-break:break-word}.sm-map-detail-block{margin-top:.35rem;padding-top:.25rem;border-top:1px dashed var(--sm-log-rule)}.sm-map-detail-remarks{margin:.25rem 0 0;font-size:.68rem;line-height:1.35;max-height:4.5rem;overflow-y:auto}.sm-map-detail-actions{margin-top:.45rem;padding-top:.35rem;border-top:1px solid var(--sm-map-footer-border)}.sm-radar-alert-marker{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;width:36px;height:36px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid rgba(34,211,238,.65);background:#0f172abf;box-shadow:0 0 12px #22d3ee59;cursor:pointer;position:relative;z-index:5;overflow:hidden;display:flex;align-items:center;justify-content:center}.sm-radar-alert-marker--light{background:#ffffffeb;border-color:#0891b28c;box-shadow:0 1px 4px #0f172a1f}.sm-radar-alert-marker__img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;pointer-events:none}.sm-radar-alert-marker__fallback{color:var(--sm-accent2);display:flex;align-items:center;justify-content:center;opacity:.9}.sm-radar-alert-marker--selected{box-shadow:0 0 0 3px #22d3ee66,0 0 16px #22d3ee8c}.super-monitor-theme-light.super-monitor-root .sm-radar-alert-marker--selected{box-shadow:0 0 0 3px #0891b259,0 0 12px #0891b259}.sm-radar-siren-marker{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;border:none;background:transparent;transform:translate(-50%,-50%);cursor:pointer;position:relative;z-index:5;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.sm-radar-siren-marker__ring{width:34px;height:34px;border-radius:50%;border-width:3px;border-style:solid;background:#0f172ad1;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #00000059}.sm-radar-siren-marker--light .sm-radar-siren-marker__ring{background:#fffffff2;box-shadow:0 1px 4px #0f172a1f}.sm-radar-siren-marker__icon{width:18px;height:18px}.sm-radar-siren-marker__power-badge{position:absolute;right:2px;bottom:2px;width:10px;height:10px;border-radius:50%;background:#f43f5e;border:2px solid rgba(15,23,42,.95);box-shadow:0 0 0 1px #f43f5e80;pointer-events:none}.super-monitor-theme-light.super-monitor-root .sm-radar-siren-marker__power-badge{border-color:#fff}
