@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-x-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"DM Sans", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-orange-50:oklch(98% .016 73.684);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-800:oklch(47% .157 37.304);--color-orange-900:oklch(40.8% .123 38.172);--color-orange-950:oklch(26.6% .079 36.259);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-yellow-950:oklch(28.6% .066 53.813);--color-lime-50:oklch(98.6% .031 120.757);--color-lime-100:oklch(96.7% .067 122.328);--color-lime-200:oklch(93.8% .127 124.321);--color-lime-300:oklch(89.7% .196 126.665);--color-lime-400:oklch(84.1% .238 128.85);--color-lime-500:oklch(76.8% .233 130.85);--color-lime-600:oklch(64.8% .2 131.684);--color-lime-700:oklch(53.2% .157 131.589);--color-lime-800:oklch(45.3% .124 130.933);--color-lime-900:oklch(40.5% .101 131.063);--color-lime-950:oklch(27.4% .072 132.109);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-green-950:oklch(26.6% .065 152.934);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-teal-50:oklch(98.4% .014 180.72);--color-teal-100:oklch(95.3% .051 180.801);--color-teal-200:oklch(91% .096 180.426);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-400:oklch(77.7% .152 181.912);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-teal-700:oklch(51.1% .096 186.391);--color-teal-800:oklch(43.7% .078 188.216);--color-teal-900:oklch(38.6% .063 188.416);--color-teal-950:oklch(27.7% .046 192.524);--color-cyan-50:oklch(98.4% .019 200.873);--color-cyan-100:oklch(95.6% .045 203.388);--color-cyan-200:oklch(91.7% .08 205.041);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-cyan-600:oklch(60.9% .126 221.723);--color-cyan-700:oklch(52% .105 223.128);--color-cyan-800:oklch(45% .085 224.283);--color-cyan-900:oklch(39.8% .07 227.392);--color-cyan-950:oklch(30.2% .056 229.695);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-indigo-800:oklch(39.8% .195 277.366);--color-indigo-900:oklch(35.9% .144 278.697);--color-indigo-950:oklch(25.7% .09 281.288);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-900:oklch(38% .189 293.745);--color-violet-950:oklch(28.3% .141 291.089);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-300:oklch(82.7% .119 306.383);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-purple-950:oklch(29.1% .149 302.717);--color-fuchsia-50:oklch(97.7% .017 320.058);--color-fuchsia-100:oklch(95.2% .037 318.852);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-fuchsia-400:oklch(74% .238 322.16);--color-fuchsia-500:oklch(66.7% .295 322.15);--color-fuchsia-600:oklch(59.1% .293 322.896);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-fuchsia-800:oklch(45.2% .211 324.591);--color-fuchsia-900:oklch(40.1% .17 325.612);--color-fuchsia-950:oklch(29.3% .136 325.661);--color-pink-50:oklch(97.1% .014 343.198);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-300:oklch(82.3% .12 346.018);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-500:oklch(65.6% .241 354.308);--color-pink-600:oklch(59.2% .249 .584);--color-pink-700:oklch(52.5% .223 3.958);--color-pink-800:oklch(45.9% .187 3.815);--color-pink-900:oklch(40.8% .153 2.432);--color-pink-950:oklch(28.4% .109 3.907);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-900:oklch(41% .159 10.272);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-zinc-50:oklch(98.5% 0 0);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-neutral-950:oklch(14.5% 0 0);--color-stone-50:oklch(98.5% .001 106.423);--color-stone-100:oklch(97% .001 106.424);--color-stone-200:oklch(92.3% .003 48.717);--color-stone-300:oklch(86.9% .005 56.366);--color-stone-400:oklch(70.9% .01 56.259);--color-stone-500:oklch(55.3% .013 58.071);--color-stone-600:oklch(44.4% .011 73.639);--color-stone-700:oklch(37.4% .01 67.558);--color-stone-800:oklch(26.8% .007 34.298);--color-stone-900:oklch(21.6% .006 56.043);--color-stone-950:oklch(14.7% .004 49.25);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--breakpoint-2xl:96rem;--container-3xs:16rem;--container-2xs:18rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-4xl:2rem;--shadow-2xs:0 1px #0000000d;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--inset-shadow-2xs:inset 0 1px #0000000d;--inset-shadow-xs:inset 0 1px 1px #0000000d;--inset-shadow-sm:inset 0 2px 4px #0000000d;--drop-shadow-xs:0 1px 1px #0000000d;--drop-shadow-sm:0 1px 2px #00000026;--drop-shadow-md:0 3px 3px #0000001f;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-xl:0 9px 7px #0000001a;--drop-shadow-2xl:0 25px 25px #00000026;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce:bounce 1s infinite;--blur-xs:4px;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-\[-1px\]{top:-1px}.right-0{right:calc(var(--spacing) * 0)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.-z-10{z-index:-10}.z-50{z-index:50}.col-12{grid-column:12}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.-mt-3{margin-top:calc(var(--spacing) * -3)}.-mt-5{margin-top:calc(var(--spacing) * -5)}.-mt-\[4\.9rem\]{margin-top:-4.9rem}.-mt-px{margin-top:-1px}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-6{margin-right:calc(var(--spacing) * 6)}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.-ml-8{margin-left:calc(var(--spacing) * -8)}.-ml-px{margin-left:-1px}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-12{margin-left:calc(var(--spacing) * 12)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[335\/376\]{aspect-ratio:335/376}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.h-0{height:calc(var(--spacing) * 0)}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-14{height:calc(var(--spacing) * 14)}.h-14\.5{height:calc(var(--spacing) * 14.5)}.h-16{height:calc(var(--spacing) * 16)}.h-\[18px\]{height:18px}.h-\[56px\]{height:56px}.min-h-dvh{min-height:100dvh}.min-h-screen{min-height:100vh}.w-1{width:calc(var(--spacing) * 1)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-\[18px\]{width:18px}.w-\[448px\]{width:448px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[335px\]{max-width:335px}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-6{min-width:calc(var(--spacing) * 6)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.translate-y-0{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-not-allowed\!{cursor:not-allowed!important}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-items-center{justify-items:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 1) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse)))}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-neutral-200>:not(:last-child)){border-color:var(--color-neutral-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.rounded-b-lg{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rounded-br-lg{border-bottom-right-radius:var(--radius-lg)}.rounded-bl-lg{border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.border-\[\#19140035\]{border-color:#19140035}.border-\[\#e3e3e0\]{border-color:#e3e3e0}.border-black{border-color:var(--color-black)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-400{border-color:var(--color-gray-400)}.border-neutral-100{border-color:var(--color-neutral-100)}.border-neutral-200{border-color:var(--color-neutral-200)}.border-neutral-300{border-color:var(--color-neutral-300)}.border-transparent{border-color:#0000}.bg-\[\#1b1b18\]{background-color:#1b1b18}.bg-\[\#FDFDFC\]{background-color:#fdfdfc}.bg-\[\#dbdbd7\]{background-color:#dbdbd7}.bg-\[\#fff2f2\]{background-color:#fff2f2}.bg-amber-200{background-color:var(--color-amber-200)}.bg-amber-600{background-color:var(--color-amber-600)}.bg-black\/8{background-color:#00000014}@supports (color:color-mix(in lab,red,red)){.bg-black\/8{background-color:color-mix(in oklab,var(--color-black) 8%,transparent)}}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.bg-black\/10{background-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-700{background-color:var(--color-blue-700)}.bg-emerald-200{background-color:var(--color-emerald-200)}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-neutral-50{background-color:var(--color-neutral-50)}.bg-neutral-600{background-color:var(--color-neutral-600)}.bg-rose-200{background-color:var(--color-rose-200)}.bg-rose-200\!{background-color:var(--color-rose-200)!important}.bg-rose-500{background-color:var(--color-rose-500)}.bg-rose-600{background-color:var(--color-rose-600)}.bg-white{background-color:var(--color-white)}.bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.bg-white\/5{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.bg-white\/\[2\%\]{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.bg-white\/\[2\%\]{background-color:color-mix(in oklab,var(--color-white) 2%,transparent)}}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[6px\]{padding-inline:6px}.py-0{padding-block:calc(var(--spacing) * 0)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pb-0{padding-bottom:calc(var(--spacing) * 0)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-xs\/none{font-size:var(--text-xs);line-height:1}.text-\[13px\]{font-size:13px}.leading-3{--tw-leading:calc(var(--spacing) * 3);line-height:calc(var(--spacing) * 3)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\[20px\]{--tw-leading:20px;line-height:20px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.font-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.text-\[\#1b1b18\]{color:#1b1b18}.text-\[\#706f6c\]{color:#706f6c}.text-\[\#F53003\],.text-\[\#f53003\]{color:#f53003}.text-amber-900{color:var(--color-amber-900)}.text-blue-500{color:var(--color-blue-500)}.text-blue-900{color:var(--color-blue-900)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-900{color:var(--color-emerald-900)}.text-gray-200{color:var(--color-gray-200)}.text-gray-300{color:var(--color-gray-300)}.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-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-neutral-100{color:var(--color-neutral-100)}.text-neutral-400{color:var(--color-neutral-400)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-500\!{color:var(--color-neutral-500)!important}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-800{color:var(--color-neutral-800)}.text-neutral-900{color:var(--color-neutral-900)}.text-neutral-950{color:var(--color-neutral-950)}.text-rose-900{color:var(--color-rose-900)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-neutral-400{-webkit-text-decoration-color:var(--color-neutral-400);text-decoration-color:var(--color-neutral-400)}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.scheme-light-dark{color-scheme:light dark}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0px_0px_1px_0px_rgba\(0\,0\,0\,0\.03\)\,0px_1px_2px_0px_rgba\(0\,0\,0\,0\.06\)\]{--tw-shadow:0px 0px 1px 0px var(--tw-shadow-color,#00000008), 0px 1px 2px 0px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0px_0px_0px_1px_rgba\(26\,26\,0\,0\.16\)\]{--tw-shadow:inset 0px 0px 0px 1px var(--tw-shadow-color,#1a1a0029);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-gray-300{--tw-ring-color:var(--color-gray-300)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.invert{--tw-invert:invert(100%);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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-300{transition-delay:.3s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-750{--tw-duration:.75s;transition-duration:.75s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.not-has-\[nav\]\:hidden:not(:has(:is(nav))){display:none}@media(hover:hover){.group-hover\:text-blue-500:is(:where(.group):hover *){color:var(--color-blue-500)}}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-0:before{content:var(--tw-content);top:calc(var(--spacing) * 0)}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:bottom-0:before{content:var(--tw-content);bottom:calc(var(--spacing) * 0)}.before\:bottom-1\/2:before{content:var(--tw-content);bottom:50%}.before\:left-\[0\.4rem\]:before{content:var(--tw-content);left:.4rem}.before\:border-l:before{content:var(--tw-content);border-left-style:var(--tw-border-style);border-left-width:1px}.before\:border-\[\#e3e3e0\]:before{content:var(--tw-content);border-color:#e3e3e0}.odd\:bg-white\/2:nth-child(odd){background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.odd\:bg-white\/2:nth-child(odd){background-color:color-mix(in oklab,var(--color-white) 2%,transparent)}}.even\:bg-white:nth-child(2n){background-color:var(--color-white)}@media(hover:hover){.hover\:border-\[\#1915014a\]:hover{border-color:#1915014a}.hover\:border-\[\#19140035\]:hover{border-color:#19140035}.hover\:border-black:hover{border-color:var(--color-black)}.hover\:bg-black:hover{background-color:var(--color-black)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-neutral-100:hover{background-color:var(--color-neutral-100)}.hover\:bg-neutral-200:hover{background-color:var(--color-neutral-200)}.hover\:bg-white\/50:hover{background-color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/50:hover{background-color:color-mix(in oklab,var(--color-white) 50%,transparent)}}.hover\:text-gray-400:hover{color:var(--color-gray-400)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-blue-300:focus{border-color:var(--color-blue-300)}.focus\:ring:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:bg-gray-100:active{background-color:var(--color-gray-100)}.active\:text-gray-500:active{color:var(--color-gray-500)}.active\:text-gray-700:active{color:var(--color-gray-700)}.active\:text-gray-800:active{color:var(--color-gray-800)}@media(min-width:40rem){.sm\:mb-16{margin-bottom:calc(var(--spacing) * 16)}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:flex-1{flex:1}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-start{justify-content:flex-start}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:p-14{padding:calc(var(--spacing) * 14)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:py-0{padding-block:calc(var(--spacing) * 0)}.sm\:pt-0{padding-top:calc(var(--spacing) * 0)}.sm\:pt-16{padding-top:calc(var(--spacing) * 16)}.sm\:pb-0{padding-bottom:calc(var(--spacing) * 0)}}@media(min-width:64rem){.lg\:-mt-\[6\.6rem\]{margin-top:-6.6rem}.lg\:mb-0{margin-bottom:calc(var(--spacing) * 0)}.lg\:mb-6{margin-bottom:calc(var(--spacing) * 6)}.lg\:-ml-px{margin-left:-1px}.lg\:ml-0{margin-left:calc(var(--spacing) * 0)}.lg\:block{display:block}.lg\:aspect-auto{aspect-ratio:auto}.lg\:w-\[438px\]{width:438px}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:grow{flex-grow:1}.lg\:flex-row{flex-direction:row}.lg\:justify-center{justify-content:center}.lg\:rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.lg\:rounded-tl-lg{border-top-left-radius:var(--radius-lg)}.lg\:rounded-r-lg{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.lg\:rounded-br-none{border-bottom-right-radius:0}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:p-20{padding:calc(var(--spacing) * 20)}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}.rtl\:flex-row-reverse:where(:dir(rtl),[dir=rtl],[dir=rtl] *){flex-direction:row-reverse}@media(prefers-color-scheme:dark){.dark\:block{display:block}.dark\:hidden{display:none}:where(.dark\:divide-white\/5>:not(:last-child)){border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){:where(.dark\:divide-white\/5>:not(:last-child)){border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}:where(.dark\:divide-white\/10>:not(:last-child)){border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){:where(.dark\:divide-white\/10>:not(:last-child)){border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:border{border-style:var(--tw-border-style);border-width:1px}.dark\:border-none{--tw-border-style:none;border-style:none}.dark\:border-\[\#3E3E3A\]{border-color:#3e3e3a}.dark\:border-\[\#eeeeec\]{border-color:#eeeeec}.dark\:border-amber-500{border-color:var(--color-amber-500)}.dark\:border-amber-800{border-color:var(--color-amber-800)}.dark\:border-blue-600{border-color:var(--color-blue-600)}.dark\:border-blue-800{border-color:var(--color-blue-800)}.dark\:border-emerald-500{border-color:var(--color-emerald-500)}.dark\:border-emerald-600{border-color:var(--color-emerald-600)}.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:border-neutral-500{border-color:var(--color-neutral-500)}.dark\:border-neutral-700{border-color:var(--color-neutral-700)}.dark\:border-neutral-800{border-color:var(--color-neutral-800)}.dark\:border-rose-500{border-color:var(--color-rose-500)}.dark\:border-rose-900{border-color:var(--color-rose-900)}.dark\:border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/5{border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:border-white\/8{border-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/8{border-color:color-mix(in oklab,var(--color-white) 8%,transparent)}}.dark\:border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/20{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.dark\:border-white\/\[9\%\]{border-color:#ffffff17}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/\[9\%\]{border-color:color-mix(in oklab,var(--color-white) 9%,transparent)}}.dark\:bg-\[\#0a0a0a\]{background-color:#0a0a0a}.dark\:bg-\[\#1D0002\]{background-color:#1d0002}.dark\:bg-\[\#1a1a1a\]{background-color:#1a1a1a}.dark\:bg-\[\#3E3E3A\]{background-color:#3e3e3a}.dark\:bg-\[\#161615\]{background-color:#161615}.dark\:bg-\[\#eeeeec\]{background-color:#eeeeec}.dark\:bg-amber-600{background-color:var(--color-amber-600)}.dark\:bg-amber-950{background-color:var(--color-amber-950)}.dark\:bg-blue-700{background-color:var(--color-blue-700)}.dark\:bg-blue-950{background-color:var(--color-blue-950)}.dark\:bg-emerald-600{background-color:var(--color-emerald-600)}.dark\:bg-emerald-900\/70{background-color:#004e3bb3}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-900\/70{background-color:color-mix(in oklab,var(--color-emerald-900) 70%,transparent)}}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:bg-neutral-400{background-color:var(--color-neutral-400)}.dark\:bg-neutral-600{background-color:var(--color-neutral-600)}.dark\:bg-neutral-700{background-color:var(--color-neutral-700)}.dark\:bg-neutral-800{background-color:var(--color-neutral-800)}.dark\:bg-neutral-900{background-color:var(--color-neutral-900)}.dark\:bg-rose-600{background-color:var(--color-rose-600)}.dark\:bg-rose-900\!{background-color:var(--color-rose-900)!important}.dark\:bg-rose-950{background-color:var(--color-rose-950)}.dark\:bg-transparent{background-color:#0000}.dark\:bg-white{background-color:var(--color-white)}.dark\:bg-white\/1{background-color:#ffffff03}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/1{background-color:color-mix(in oklab,var(--color-white) 1%,transparent)}}.dark\:bg-white\/3{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/3{background-color:color-mix(in oklab,var(--color-white) 3%,transparent)}}.dark\:bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/5{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:bg-white\/\[2\%\]{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/\[2\%\]{background-color:color-mix(in oklab,var(--color-white) 2%,transparent)}}.dark\:bg-white\/\[3\%\]{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/\[3\%\]{background-color:color-mix(in oklab,var(--color-white) 3%,transparent)}}.dark\:text-\[\#1C1C1A\]{color:#1c1c1a}.dark\:text-\[\#A1A09A\]{color:#a1a09a}.dark\:text-\[\#EDEDEC\]{color:#ededec}.dark\:text-\[\#F61500\]{color:#f61500}.dark\:text-\[\#FF4433\]{color:#f43}.dark\:text-amber-300{color:var(--color-amber-300)}.dark\:text-blue-300{color:var(--color-blue-300)}.dark\:text-emerald-400{color:var(--color-emerald-400)}.dark\:text-emerald-500{color:var(--color-emerald-500)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-gray-600{color:var(--color-gray-600)}.dark\:text-neutral-100{color:var(--color-neutral-100)}.dark\:text-neutral-200{color:var(--color-neutral-200)}.dark\:text-neutral-300{color:var(--color-neutral-300)}.dark\:text-neutral-400{color:var(--color-neutral-400)}.dark\:text-neutral-500{color:var(--color-neutral-500)}.dark\:text-neutral-600{color:var(--color-neutral-600)}.dark\:text-neutral-600\!{color:var(--color-neutral-600)!important}.dark\:text-neutral-900{color:var(--color-neutral-900)}.dark\:text-rose-100{color:var(--color-rose-100)}.dark\:text-white{color:var(--color-white)}.dark\:text-white\!{color:var(--color-white)!important}.dark\:shadow-\[inset_0px_0px_0px_1px_\#fffaed2d\]{--tw-shadow:inset 0px 0px 0px 1px var(--tw-shadow-color,#fffaed2d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(hover:hover){@media(prefers-color-scheme:dark){.group-hover\:dark\:text-emerald-500:is(:where(.group):hover *){color:var(--color-emerald-500)}}}@media(prefers-color-scheme:dark){.dark\:before\:border-\[\#3E3E3A\]:before{content:var(--tw-content);border-color:#3e3e3a}.odd\:dark\:bg-white\/4:nth-child(odd){background-color:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.odd\:dark\:bg-white\/4:nth-child(odd){background-color:color-mix(in oklab,var(--color-white) 4%,transparent)}}.even\:dark\:bg-white\/2:nth-child(2n){background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.even\:dark\:bg-white\/2:nth-child(2n){background-color:color-mix(in oklab,var(--color-white) 2%,transparent)}}@media(hover:hover){.dark\:hover\:border-\[\#3E3E3A\]:hover{border-color:#3e3e3a}.dark\:hover\:border-\[\#62605b\]:hover{border-color:#62605b}.dark\:hover\:border-white:hover{border-color:var(--color-white)}.dark\:hover\:bg-gray-900:hover{background-color:var(--color-gray-900)}.dark\:hover\:bg-white:hover{background-color:var(--color-white)}.dark\:hover\:bg-white\/2:hover{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-white\/2:hover{background-color:color-mix(in oklab,var(--color-white) 2%,transparent)}}.dark\:hover\:bg-white\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-white\/5:hover{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}}}@media(hover:hover){@media(prefers-color-scheme:dark){.hover\:dark\:bg-white\/5:hover{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.hover\:dark\:bg-white\/5:hover{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}}}@media(prefers-color-scheme:dark){@media(hover:hover){.dark\:hover\:text-gray-200:hover{color:var(--color-gray-200)}.dark\:hover\:text-gray-300:hover{color:var(--color-gray-300)}}}@media(hover:hover){@media(prefers-color-scheme:dark){.hover\:dark\:text-white:hover{color:var(--color-white)}}}@media(prefers-color-scheme:dark){.dark\:focus\:border-blue-700:focus{border-color:var(--color-blue-700)}.dark\:focus\:border-blue-800:focus{border-color:var(--color-blue-800)}.dark\:active\:bg-gray-700:active{background-color:var(--color-gray-700)}.dark\:active\:text-gray-300:active{color:var(--color-gray-300)}}@starting-style{.starting\:translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}}@starting-style{.starting\:translate-y-6{--tw-translate-y:calc(var(--spacing) * 6);translate:var(--tw-translate-x) var(--tw-translate-y)}}@starting-style{.starting\:opacity-0{opacity:0}}.\[\&_svg\]\:size-2\.5 svg{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.\[\&_svg\]\:\!text-white svg{color:var(--color-white)!important}@media(hover:hover){.hover\:\[\&_svg\]\:stroke-emerald-500:hover svg{stroke:var(--color-emerald-500)}}@media(prefers-color-scheme:dark){.dark\:\[\&_svg\]\:\!text-white svg{color:var(--color-white)!important}}}:root{--bg:#080c10;--surface:#0e1318;--surface-2:#141b22;--surface-3:#1a2330;--border:#ffffff0f;--border-hover:#ffffff1f;--accent:#00e5a0;--accent-dim:#00e5a01a;--accent-glow:#00e5a047;--danger:#ff4d6d;--danger-dim:#ff4d6d1a;--warn:#ffb703;--warn-dim:#ffb7031a;--info:#38bdf8;--info-dim:#38bdf81a;--violet:#a78bfa;--violet-dim:#a78bfa1a;--text-primary:#f0f4f8;--text-secondary:#7a8fa6;--text-muted:#3d5166;--radius:30px;--radius-sm:15px;--nav-h:68px;--nav-bar-h:68px;--transition:.22s cubic-bezier(.4,0,.2,1);--tr:.22s cubic-bezier(.4,0,.2,1);--nav-bg:#080c10d9}body{zoom:1!important}html[data-theme=light]{--bg:#eef2f7;--surface:#fff;--surface-2:#e8eef4;--surface-3:#dce4ec;--border:#00000012;--border-hover:#0000001f;--accent:#1abc9c;--accent-dim:#00a8781f;--accent-glow:#00a87847;--danger:#e63950;--danger-dim:#e639501a;--warn:#d4a000;--warn-dim:#d4a0001f;--info:#0ea5e9;--info-dim:#0ea5e91f;--violet:#8b5cf6;--violet-dim:#8b5cf61f;--text-primary:#0e1318;--text-secondary:#3d5166;--text-muted:#6b7c8f;--nav-bg:#ffffffe0;--accent-gradient:linear-gradient(143deg, #016567, #d8edad);--control-background:#fff}html[data-theme=light] body:before{opacity:.35}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:DM Sans,sans-serif;overflow-x:hidden}body:before{content:"";z-index:0;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}nav{z-index:100;height:var(--nav-bar-h);background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);align-items:center;padding:0 28px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.logo-mark{background:var(--surface-2);border-radius:9px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.logo-mark svg{fill:#080c10;width:21px;height:21px}.logo-img{object-fit:contain;border-radius:9px;max-height:40px;display:block}.logo-img.logo-light,html[data-theme=light] .logo-img.logo-dark{display:none}html[data-theme=light] .logo-img.logo-light{display:block}.logo-text{letter-spacing:.08em;color:var(--text-primary);font-family:Syne,sans-serif;font-size:17px;font-weight:800}.nav-links{align-items:center;gap:4px;margin-left:auto;list-style:none;display:flex}.nav-links a{color:var(--text-secondary);border-radius:var(--radius);transition:all var(--transition);letter-spacing:.01em;border:1px solid #0000;align-items:center;gap:7px;padding:8px 16px;font-family:DM Sans,sans-serif;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.nav-links a:hover{color:var(--text-primary);background:var(--surface-2);border-color:var(--border)}.nav-links a.active{background:var(--accent-gradient);color:#fff;border-color:#b4f9d2}.nav-links a svg{width:15px;height:15px}.nav-pin-wrap{pointer-events:auto;margin-left:8px;position:relative}.nav-pin-btn{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;width:38px;height:38px;color:var(--text-secondary);transition:all var(--transition);border-radius:10px;place-items:center;padding:0;display:grid}.nav-pin-btn:hover{border-color:var(--border-hover);color:var(--text-primary)}.nav-pin-btn[aria-pressed=false]{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.nav-pin-btn[aria-pressed=false]{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.nav-pin-btn[aria-pressed=false]{background:var(--accent-dim)}.nav-pin-icon{width:17px;height:17px}.nav-pin-btn[aria-pressed=true] .nav-pin-icon--unpinned,.nav-pin-btn[aria-pressed=false] .nav-pin-icon--pinned{display:none}.nav-pin-btn[aria-pressed=false] .nav-pin-icon--unpinned{display:block}.nav-reveal-strip{z-index:101;pointer-events:auto;height:16px;position:fixed;top:0;left:0;right:0}html[data-nav-unpinned="1"]{--nav-h:0px}html[data-nav-unpinned="1"] #appNav{transform:translateY(calc(-1 * var(--nav-bar-h)));pointer-events:none;transition:transform .28s}html[data-nav-unpinned="1"] #appNav.nav--revealed{pointer-events:auto;transform:translateY(0);box-shadow:0 10px 32px #00000038}.nav-settings-wrap{flex-shrink:0;margin-left:8px;position:relative}.nav-settings{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;width:38px;height:38px;color:var(--text-secondary);transition:all var(--transition);border-radius:10px;place-items:center;display:grid}.nav-settings:hover{border-color:var(--border-hover);color:var(--text-primary)}.nav-settings-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);opacity:0;visibility:hidden;min-width:220px;transition:opacity var(--transition),transform var(--transition),visibility var(--transition);z-index:200;padding:8px;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-8px);box-shadow:0 12px 40px #00000059}html[data-theme=light] .nav-settings-dropdown{box-shadow:0 12px 40px #0000001f}.nav-settings-wrap.open .nav-settings-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.nav-settings-dropdown a{color:var(--text-primary);border-radius:var(--radius-sm);transition:all var(--transition);align-items:center;gap:10px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.nav-settings-dropdown a:hover{background:var(--surface-2);color:var(--accent)}.nav-settings-dropdown a svg{width:16px;height:16px;color:var(--text-muted)}.nav-settings-dropdown a:hover svg{color:var(--accent)}.alert-success{border-radius:var(--radius);background:var(--accent-dim);color:var(--accent);border:1px solid #00e5a040;padding:14px 20px;font-weight:500}.alert-danger{border-radius:var(--radius);background:var(--danger-dim);color:var(--danger);border:1px solid #ff4d6d40;padding:14px 20px;font-weight:500}.nav-user{flex-shrink:0;margin-left:8px;position:relative}.nav-user-btn{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;width:40px;height:40px;color:var(--text-secondary);transition:all var(--transition);border-radius:50%;place-items:center;display:grid}.nav-user-btn:hover{border-color:var(--border-hover);color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim)}.nav-user-btn svg{width:18px;height:18px}.nav-user-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);opacity:0;visibility:hidden;min-width:220px;transition:opacity var(--transition),transform var(--transition),visibility var(--transition);z-index:200;padding:8px;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-8px);box-shadow:0 12px 40px #00000059}html[data-theme=light] .nav-user-dropdown{box-shadow:0 12px 40px #0000001f}.nav-user.open .nav-user-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.nav-user-dropdown a,.nav-user-dropdown .dropdown-item{color:var(--text-primary);border-radius:var(--radius-sm);transition:all var(--transition);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;text-decoration:none;display:flex}.nav-user-dropdown a:hover,.nav-user-dropdown .dropdown-item:hover{background:var(--surface-2);color:var(--accent)}.nav-user-dropdown .dropdown-item svg,.nav-user-dropdown a svg{width:16px;height:16px;color:var(--text-muted)}.nav-user-dropdown .dropdown-item:hover svg,.nav-user-dropdown a:hover svg{color:var(--accent)}.nav-user-dropdown .dropdown-divider{background:var(--border);height:1px;margin:6px 0}.theme-toggle-wrap{justify-content:space-between;align-items:center;gap:12px;padding:8px 14px 4px;display:flex}.theme-toggle-label{color:var(--text-secondary);font-size:13px;font-weight:500}.theme-toggle{background:var(--surface-3);border:1px solid var(--border);cursor:pointer;width:48px;height:26px;transition:all var(--transition);border-radius:100px;flex-shrink:0;position:relative}.theme-toggle:hover{border-color:var(--border-hover)}.theme-toggle:before{content:"";background:var(--accent);width:18px;height:18px;box-shadow:0 2px 8px var(--accent-glow);transition:transform var(--transition);border-radius:50%;position:absolute;top:3px;left:3px}html[data-theme=light] .theme-toggle:before{background:var(--accent);transform:translate(22px)}.theme-toggle-icon{pointer-events:none;width:14px;height:14px;position:absolute;top:50%;transform:translateY(-50%)}.theme-toggle-icon.sun{opacity:.5;left:7px}.theme-toggle-icon.moon{opacity:.7;right:7px}html[data-theme=light] .theme-toggle-icon.sun{opacity:.9}html[data-theme=light] .theme-toggle-icon.moon{opacity:.35}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;margin-left:auto;padding:4px;display:none}.hamburger span{background:var(--text-secondary);width:22px;height:2px;transition:all var(--transition);border-radius:2px;display:block}main{padding-top:calc(var(--nav-h) + 25px);z-index:1;max-width:1160px;margin:0 auto;padding-bottom:60px;padding-left:24px;padding-right:24px;transition:padding-top .28s;position:relative}.leaflet-tooltip-top:before{margin-bottom:-6px!important}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-header-actions{align-items:center;gap:12px;display:flex}.vehicles-page-search{width:min(360px,72vw);min-width:200px;max-width:100%}.page-title{color:var(--text-primary);letter-spacing:-.02em;font-family:Syne,sans-serif;font-size:28px;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:4px;font-size:14px;font-weight:300}.back-link{color:var(--text-muted);transition:color var(--transition);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.back-link svg{width:18px;height:18px}.page-badge{background:var(--danger-dim);color:var(--danger);letter-spacing:.04em;border:1px solid #ff4d6d40;border-radius:100px;align-items:center;gap:6px;padding:6px 12px;font-family:Syne,sans-serif;font-size:12px;font-weight:600;display:inline-flex}.page-badge:before{content:"";background:var(--danger);border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.5}}.stats-bar{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px;display:grid}.stat-card:after{content:"";background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:0;height:2px;transition:opacity var(--transition);position:absolute;top:0;left:0;right:0}.stat-card:hover:after{opacity:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;font-family:Syne,sans-serif;font-size:11px;font-weight:600}.stat-value{color:var(--text-primary);font-family:Syne,sans-serif;font-size:26px;font-weight:700;line-height:1}.stat-value.danger{color:var(--danger)}.stat-value.accent{color:var(--accent)}.stat-value.warn{color:var(--warn)}.stat-delta{color:var(--text-muted);margin-top:6px;font-size:12px}.filters-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;padding:20px 24px;display:flex}.filter-group{flex-direction:column;flex:1;gap:6px;min-width:140px;display:flex}.filter-group-date{flex:1.6;min-width:190px}.filter-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-family:Syne,sans-serif;font-size:11px;font-weight:600}.filter-select,.filter-input{appearance:none;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);transition:all var(--transition);outline:none;width:100%;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px}.filter-select{cursor:pointer;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='%237a8fa6' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.filter-select:focus,.filter-input:focus{box-shadow:0 0 0 3px var(--accent-dim);background:var(--surface-3);border-color:#00e5a066}.filter-input::placeholder{color:var(--text-muted)}.filter-select option{background:var(--surface-2)}.filter-select optgroup{color:var(--text-primary);padding:6px 0 2px 8px;font-weight:600}.filter-select option.filter-source-sub{color:var(--text-secondary);padding-left:1.2em;font-weight:400}.filter-input-date.flatpickr-input{cursor:pointer}.filters-panel .flatpickr-calendar{z-index:120}.flatpickr-calendar{background:var(--surface-2)!important;border:1px solid var(--border)!important;box-shadow:0 10px 40px #00000059!important}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{border-bottom-color:var(--surface-2)!important}.flatpickr-months .flatpickr-month,.flatpickr-current-month .flatpickr-monthDropdown-months{background:var(--surface-2)!important;color:var(--text-primary)!important}.flatpickr-weekdays{background:var(--surface-2)!important}span.flatpickr-weekday{color:var(--text-muted)!important}.flatpickr-days{background:var(--surface-2)!important;border-color:var(--border)!important}.dayContainer .flatpickr-day{color:var(--text-primary)!important;border-color:var(--border)!important}.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover{background:var(--surface-3)!important;border-color:var(--surface-3)!important}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--bg)!important}.flatpickr-day.inRange{background:var(--accent-dim)!important;border-color:var(--accent-dim)!important;box-shadow:none!important}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:var(--accent)!important}.flatpickr-monthDropdown-months,.flatpickr-monthSelect-month{background:var(--surface-2)!important;color:var(--text-primary)!important}.filter-actions{flex-shrink:0;align-items:flex-end;gap:10px;margin-left:auto;display:flex}.filters-panel .ms-parent{outline:none;width:100%;max-width:100%}.filters-panel .ms-choice{border-radius:var(--radius-sm);min-height:42px;transition:border-color var(--transition),box-shadow var(--transition);font-family:DM Sans,sans-serif;font-size:14px;background:var(--surface-2)!important;border:1px solid var(--border)!important;color:var(--text-primary)!important;padding:10px 10px 10px 14px!important}.filters-panel .ms-choice:hover{border-color:#00e5a059!important}.filters-panel .ms-choice:focus,.filters-panel .ms-choice.ms-open{box-shadow:0 0 0 3px var(--accent-dim)!important;background:var(--surface-3)!important;border-color:#00e5a066!important}.filters-panel .ms-choice>span{color:var(--text-secondary)!important}.filters-panel .ms-choice>.ms-placeholder{color:var(--text-muted)!important}.filters-panel .ms-drop{border-radius:var(--radius-sm);box-shadow:0 10px 40px #00000040;background:var(--surface-2)!important;border:1px solid var(--border)!important}.filters-panel .ms-drop ul>li label{font-family:DM Sans,sans-serif;color:var(--text-primary)!important}.filters-panel .ms-drop ul>li:hover,.filters-panel .ms-drop ul>li.focused{background:var(--surface-3)!important}.filters-panel .ms-drop ul>li.selected label{color:var(--accent)!important}.filters-panel .ms-drop input[type=checkbox]:checked+label,.filters-panel .ms-drop .ms-select-all label{color:var(--accent)}.filters-panel .ms-drop .ms-select-all{border-bottom:1px solid var(--border);background:var(--surface-3);padding:8px 12px}.filters-panel .ms-choice>div{color:var(--text-primary)}.filters-panel .ms-drop ul li input[type=checkbox]{accent-color:var(--accent)}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);white-space:nowrap;letter-spacing:.01em;border:none;outline:none;align-items:center;gap:8px;padding:10px 20px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;background:#fff;transition:opacity .1s;position:absolute;inset:0}.btn:active:after{opacity:.07}.btn-primary{--button-background:var(--accent-gradient);--button-color:#fff;--button-background-hover:#77777752;background:var(--accent-gradient);color:#fff;box-shadow:0 0 0 0 var(--accent-glow);font-weight:600}.btn-primary:hover{background:linear-gradient(0deg,var(--button-background-hover),var(--button-background-hover)),var(--button-background);box-shadow:0 4px 14px var(--accent-glow);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn.btn-loading{pointer-events:none;text-shadow:none;position:relative;color:#0000!important}.btn.btn-loading:before{content:"";z-index:2;border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;margin:-10px 0 0 -10px;animation:.72s linear infinite alarms-results-spin;position:absolute;top:50%;left:50%}.btn-ghost{background:var(--surface-2);color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover{background:var(--surface-3);border-color:var(--border-hover);color:var(--text-primary)}.btn-danger{background:var(--danger-dim);color:var(--danger);border:1px solid #ff4d6d33}.btn-danger:hover{background:#ff4d6d33;border-color:#ff4d6d66}.btn-danger-soft{background:var(--danger-dim);color:var(--danger);border:1px solid #ff4d6d33}.btn-danger-soft:hover{color:var(--danger);background:#ff4d6d33;border-color:#ff4d6d66}.flex{align-items:center;gap:8px;display:flex}.btn-icon{border-radius:var(--radius-sm);place-items:center;width:38px;height:38px;padding:0;display:grid}.btn svg{flex-shrink:0;width:16px;height:16px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.view-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);gap:2px;padding:3px;display:flex}.view-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;display:flex}.view-btn.active{background:var(--surface-3);color:var(--text-primary);border:1px solid var(--border-hover)}.view-btn svg{width:14px;height:14px}.btn-download{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;width:38px;height:38px;transition:all var(--transition);box-shadow:0 2px 12px var(--accent-glow);border:none;place-items:center;display:grid}.btn-download:hover{box-shadow:0 4px 20px var(--accent-glow);background:#00ffb3;transform:translateY(-1px)}.btn-download svg{width:16px;height:16px}.sessions{flex-direction:column;gap:10px;display:flex}.session-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);cursor:pointer;overflow:hidden}.session-card:hover{border-color:var(--border-hover);background:var(--surface-2);transform:translateY(-1px);box-shadow:0 8px 12px #0000001a}.session-card.expanded{background:var(--surface-2);border-color:#00e5a033;box-shadow:0 0 0 1px #00e5a014}.session-header{align-items:center;gap:16px;padding:16px 20px;display:flex}.session-thumb{background:var(--surface-3);border:1px solid var(--border);border-radius:9px;flex-shrink:0;width:80px;height:58px;position:relative;overflow:hidden}.session-thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb-placeholder{place-items:center;width:100%;height:100%;display:grid}.thumb-placeholder svg{width:24px;height:24px;color:var(--text-muted)}.cam-badge{border:1px solid var(--border);color:var(--accent);letter-spacing:.05em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080c10cc;border-radius:4px;padding:2px 5px;font-family:Syne,sans-serif;font-size:9px;font-weight:700;position:absolute;top:5px;left:5px}.session-info{flex:1;min-width:0}.session-title{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:4px;font-family:Syne,sans-serif;font-size:15px;font-weight:700}.session-id{color:var(--accent);opacity:.8;font-weight:600}.session-time{color:var(--text-secondary);align-items:center;gap:5px;margin-bottom:10px;font-size:12.5px;font-weight:300;display:flex}.session-time svg{opacity:.5;width:12px;height:12px}.session-meta{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.meta-chip{border-radius:100px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.meta-chip svg{width:12px;height:12px}.meta-duration{background:var(--surface-3);border:1px solid var(--border);color:var(--text-secondary)}.meta-alerts{background:var(--danger-dim);color:var(--danger);border:1px solid #ff4d6d33}.meta-alerts-warn{color:var(--warn);background:#ffb7031a;border:1px solid #ffb70333}.meta-ok{background:var(--accent-dim);color:var(--accent);border:1px solid #00e5a033}.session-caret{background:var(--surface-2);border:1px solid var(--border);width:32px;height:32px;color:var(--text-muted);transition:all var(--transition);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.session-card:hover .session-caret{border-color:var(--border-hover);color:var(--text-secondary)}.session-card.expanded .session-caret{background:var(--accent-dim);color:var(--accent);border-color:#00e5a04d;transform:rotate(180deg)}.session-caret svg{width:14px;height:14px}.session-events{border-top:1px solid var(--border);padding:0 20px 16px;animation:.25s slideDown;display:none}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.session-card.expanded .session-events{display:block}.events-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;padding:14px 0 10px;font-family:Syne,sans-serif;font-size:11px;font-weight:700}.event-row{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);transition:all var(--transition);align-items:center;gap:12px;margin-bottom:6px;padding:10px 12px;display:flex}.event-row:hover{border-color:var(--border-hover)}.event-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dot-danger{background:var(--danger);box-shadow:0 0 8px #ff4d6d80}.dot-warn{background:var(--warn);box-shadow:0 0 8px #ffb70380}.dot-ok{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.event-name{color:var(--text-primary);flex:1;font-size:13.5px;font-weight:500}.event-time{color:var(--text-muted);letter-spacing:.03em;font-family:Syne,sans-serif;font-size:12px}.chart-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:24px;display:none}.chart-panel.visible{animation:.3s slideDown;display:block}.chart-title{color:var(--text-primary);align-items:center;gap:8px;margin-bottom:20px;font-family:Syne,sans-serif;font-size:15px;font-weight:700;display:flex}.chart-area{align-items:flex-end;gap:6px;height:140px;display:flex}.chart-bar{background:var(--accent-dim);transition:all var(--transition);border:1px solid #00e5a026;border-bottom:none;border-radius:4px 4px 0 0;flex:1;min-height:4px;position:relative}.chart-bar:hover{background:var(--accent)}.chart-bar.has-alerts{background:#ff4d6d26;border-color:#ff4d6d33}.chart-bar.has-alerts:hover{background:var(--danger)}.chart-labels{gap:6px;margin-top:8px;display:flex}.chart-label{text-align:center;color:var(--text-muted);flex:1;font-family:Syne,sans-serif;font-size:10px}.empty-state{text-align:center;color:var(--text-muted);padding:60px 20px}.empty-state svg{opacity:.3;width:48px;height:48px;margin:0 auto 16px;display:block}.empty-state p{font-size:15px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}@media(max-width:768px){:root{--nav-h:60px;--nav-bar-h:60px}nav{padding:0 16px}.logo-text{font-size:15px}.nav-links{top:var(--nav-bar-h);background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding:12px 16px 20px;display:none;position:fixed;left:0;right:0}.nav-links.open{display:flex}.nav-links a{width:100%;padding:12px 16px;font-size:15px}.nav-settings-wrap{display:none}.nav-user-dropdown{min-width:260px;left:auto;right:0}html[data-nav-unpinned="1"]{--nav-h:var(--nav-bar-h)}html[data-nav-unpinned="1"] #appNav{pointer-events:auto;box-shadow:none;transform:none}.nav-reveal-strip{display:none!important}.hamburger{display:flex}.hamburger.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}main{padding-top:calc(var(--nav-h) + 20px);padding-left:16px;padding-right:16px}.stats-bar{grid-template-columns:repeat(2,1fr)}.page-header{flex-direction:column;align-items:flex-start;gap:10px}.page-header-actions{width:100%}.vehicles-page-search{width:100%;min-width:0}.filters-panel{flex-direction:column;gap:12px}.filter-group{min-width:100%}.filter-actions{flex-direction:row;width:100%}.filter-actions .btn{flex:1;justify-content:center}.toolbar{gap:10px}.session-header{gap:12px;padding:12px 14px}.session-thumb{width:64px;height:48px}.session-title{font-size:13.5px}.session-time{font-size:11.5px}.session-meta{gap:8px}.page-title{font-size:22px}.source-type-section .source-type-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.stats-bar{grid-template-columns:1fr 1fr}.stat-value{font-size:22px}.session-thumb,.view-toggle span{display:none}.source-type-section .source-type-cards{grid-template-columns:1fr}.form-row{flex-direction:column}}.session-card{animation:.4s both cardIn}.session-card:first-child{animation-delay:50ms}.session-card:nth-child(2){animation-delay:.1s}.session-card:nth-child(3){animation-delay:.15s}.session-card:nth-child(4){animation-delay:.2s}@keyframes cardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stat-card{animation:.4s both cardIn}.stat-card:first-child{animation-delay:0s}.stat-card:nth-child(2){animation-delay:70ms}.stat-card:nth-child(3){animation-delay:.14s}.stat-card:nth-child(4){animation-delay:.21s}.settings-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:28px;padding:24px 28px}.settings-panel h2{color:var(--text-primary);letter-spacing:-.01em;margin-bottom:20px;font-family:Syne,sans-serif;font-size:18px;font-weight:700}.settings-panel-desc{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.5}.settings-panel-desc a{color:var(--accent);text-decoration:none}.settings-panel-desc a:hover{text-decoration:underline}.form-group{margin-bottom:18px}.form-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.form-group label.required:after{content:" *";color:var(--danger);font-weight:700}.form-group .form-error{color:var(--danger);margin-top:6px;font-size:12px}.form-group input.is-invalid,.form-group textarea.is-invalid{box-shadow:0 0 0 2px var(--danger-dim);border-color:#ff4d6d80}.form-group .label-optional{color:var(--text-muted);text-transform:none;letter-spacing:0;font-weight:400}.form-group input[type=text],.form-group input[type=email],.form-group input[type=url],.form-group input[type=number],.form-group input[type=password],.form-group input[type=file],.form-group textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;max-width:400px;color:var(--text-primary);transition:all var(--transition);outline:none;padding:10px 14px;font-family:DM Sans,sans-serif;font-size:14px;line-height:1.45}.form-group textarea{resize:vertical;max-width:520px;min-height:100px;display:block}.form-group select{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;max-width:400px;color:var(--text-primary);transition:all var(--transition);appearance:none;cursor:pointer;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='%237a8fa6' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;padding:10px 36px 10px 14px;font-family:DM Sans,sans-serif;font-size:14px}.form-group select option{background:var(--surface-2);color:var(--text-primary)}.form-group input[type=file]{cursor:pointer}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 3px var(--accent-dim);border-color:#00e5a066}.form-group select.is-invalid{box-shadow:0 0 0 2px var(--danger-dim);border-color:#ff4d6d80}.form-group .form-check{align-items:center;gap:10px;margin-top:8px;display:flex}.form-group .form-check input{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.form-row{flex-wrap:wrap;gap:20px;display:flex}.form-row-2{max-width:520px}.form-row .form-group{flex:1;min-width:0}.form-row .form-group input{max-width:none}.form-actions{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}@media(max-width:800px){.permission-grid{grid-template-columns:1fr}}.permission-item{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:flex-start;gap:8px;padding:8px 10px;font-size:13px;display:flex}.permission-item input[type=checkbox]{accent-color:var(--accent);margin-top:2px}.permission-name{color:var(--text-primary);font-weight:600}.permission-desc{color:var(--text-secondary);font-size:12px;display:block}.source-type-section .source-type-cards{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:8px;display:grid}.source-type-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);text-align:left;flex-direction:column;align-items:flex-start;gap:10px;padding:18px 16px;font-family:DM Sans,sans-serif;display:flex;position:relative;overflow:hidden}.source-type-card:hover{border-color:var(--border-hover);background:var(--surface-3);transform:translateY(-2px);box-shadow:0 8px 16px #0000001f}.source-type-card.selected{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 1px #00e5a033}.source-type-card-bar{border-radius:var(--radius) var(--radius) 0 0;height:3px;position:absolute;top:0;left:0;right:0}.source-type-card-icon{border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.source-type-card-icon svg{width:20px;height:20px}.source-type-card-label{color:var(--text-primary);letter-spacing:-.01em;font-family:Syne,sans-serif;font-size:15px;font-weight:700}.source-type-card-desc{color:var(--text-muted);font-size:12px;line-height:1.35}.source-fields-wrap{margin-top:-8px}.source-fields-panel h2{margin-bottom:20px}.data-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:14px 18px}.data-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:var(--surface-2);font-family:Syne,sans-serif;font-size:11px;font-weight:600}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--surface-2)}.data-table .badge-on{color:var(--accent)}.data-table .badge-off{color:var(--text-muted)}.data-table-detectors .col-icon{text-align:center;width:72px}.data-table-detectors .cell-icon{text-align:center;vertical-align:middle}.detector-icon-large{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:48px;height:48px;color:var(--text-primary);justify-content:center;align-items:center;font-size:24px;display:inline-flex}.detector-icon-large i{font-size:1em}.detector-icon-placeholder{color:var(--text-muted);font-size:14px}.data-table-detectors .detector-code{font-size:12px}.data-table-detectors .col-classes{width:140px}.cell-classes{vertical-align:middle}.classes-badge-btn{background:var(--violet-dim);color:var(--violet);cursor:pointer;transition:all var(--transition);white-space:nowrap;border:1px solid #a78bfa40;border-radius:100px;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.classes-badge-btn:hover{background:#a78bfa33;border-color:#a78bfa66}.classes-badge-btn.empty{background:var(--surface-2);color:var(--text-muted);border-color:var(--border);cursor:default}.classes-badge-btn.open .classes-chevron{transform:rotate(180deg)}.classes-chevron{transition:transform var(--transition);flex-shrink:0}.detector-classes-row .cell-classes-list{background:var(--surface-2);border-bottom:1px solid var(--border);vertical-align:top;padding:12px 18px 16px}.classes-list{padding-left:0}.classes-list-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:600}.classes-list-ul{color:var(--text-secondary);margin:0;padding-left:20px;font-size:13px;line-height:1.7}.classes-list-ul code{color:var(--violet);font-size:12px}.class-level-list{flex-direction:column;gap:10px;padding-left:0;list-style:none;display:flex}.class-level-row{flex-wrap:wrap;align-items:center;gap:12px;padding:4px 0;display:flex}.class-level-name{min-width:0;color:var(--text-secondary);flex:1;font-size:13px}.class-level-name code{color:var(--violet);font-size:12px}.class-level-select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:120px;min-width:120px;color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%237a8fa6' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;flex-shrink:0;padding:6px 28px 6px 10px;font-family:inherit;font-size:12px}.class-level-select:focus{box-shadow:0 0 0 2px var(--accent-dim);border-color:#00e5a066;outline:none}.class-level-select.class-level-low{color:#0ea5e9;background-color:#38bdf81f;border-color:#38bdf880}.class-level-select.class-level-medium{color:#ca8a04;background-color:#eab3081f;border-color:#eab30880}.class-level-select.class-level-high{color:#16a34a;background-color:#22c55e1f;border-color:#22c55e80}[data-theme=light] .class-level-select.class-level-low{color:#0369a1}[data-theme=light] .class-level-select.class-level-medium{color:#a16207}[data-theme=light] .class-level-select.class-level-high{color:#15803d}.alarms-results-block{margin-top:8px}.alarms-table-panel{position:relative}.alarms-results-loading{z-index:10;background:var(--surface-0,#0a0d12);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.alarms-results-loading{background:color-mix(in srgb,var(--surface-0,#0a0d12) 22%,transparent)}}.alarms-results-loading{-webkit-backdrop-filter:blur(8px);border-radius:var(--radius,10px);pointer-events:none;transition:opacity .15s}.alarms-results-loading[hidden]{display:none!important}.alarms-results-loading-spinner{border:3px solid #ffffff1f;border-top-color:var(--accent,#00e5a0);border-radius:50%;width:38px;height:38px;animation:.72s linear infinite alarms-results-spin}@keyframes alarms-results-spin{to{transform:rotate(360deg)}}.alarms-table-wrap{margin-top:0}.alarms-pagination-wrap{box-sizing:border-box;flex-flow:wrap;justify-content:space-between;align-items:center;gap:12px 20px;width:100%;margin-top:20px;display:flex}.alarms-pagination-meta{color:var(--text-muted);white-space:nowrap;flex-shrink:0;margin:0;font-size:13px}.alarms-pagination-nav{z-index:auto;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:8px;min-width:min(100%,280px);height:auto;margin:0;padding:0;display:flex;position:static;inset:auto}.alarms-pagination-link{border:1px solid var(--border);background:var(--surface-2);min-width:40px;min-height:40px;color:var(--text-primary);border-radius:9px;justify-content:center;align-items:center;padding:8px 14px;font-size:14px;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}a.alarms-pagination-link:hover{background:var(--surface-1);border-color:var(--border-hover)}.alarms-pagination-link.is-active{background:var(--accent-gradient);color:#fff;border-color:#0000;font-weight:600}.alarms-pagination-link.is-disabled{opacity:.45;cursor:default;pointer-events:none}.alarms-pagination-ellipsis{color:var(--text-muted);padding:0 4px;font-size:14px}.dispatcher-panel-alarms-table th,.dispatcher-panel-alarms-table td,.alarms-table th,.alarms-table td{padding:6px 10px}.alarms-table th{font-size:10px}.alarms-table-desc-col{min-width:100px;max-width:220px}.alarms-table-desc-cell{max-width:280px;color:var(--text-secondary);word-break:break-word;font-size:12px;line-height:1.45}.alarms-table .alarm-row.alarm-row-new{background:#00e5a024}.alarms-table .alarm-row.alarm-row-new:hover{background:#00e5a033}.alarms-table .alarm-row.alarm-row-fade{animation:.34s ease-out alarmRowAppear,3.8s ease-out forwards alarmRowHighlightFade}.alarms-table .alarm-row.alarm-row-level-high>td{background:#ef444421}.alarms-table .alarm-row.alarm-row-level-medium>td{background:#eab3080a}.alarms-table .alarm-row.alarm-row-level-low>td{background:#38bdf809}.alarms-table .alarm-row.alarm-row-level-high:hover>td{background:#ef44441f}.alarms-table .alarm-row.alarm-row-level-medium:hover>td{background:#eab30811}.alarms-table .alarm-row.alarm-row-level-low:hover>td{background:#38bdf80e}@keyframes alarmRowAppear{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes alarmRowHighlightFade{0%,35%{background:#00e5a024}to{background:0 0}}.alarms-table .col-thumb{width:92px}.alarm-thumb{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;justify-content:center;align-items:center;width:72px;height:46px;display:flex;overflow:hidden}.alarm-thumb img{object-fit:cover;width:100%;height:100%;display:block}.alarm-thumb-wrap{display:inline-block;position:relative}.no-group-badges .alarm-group-badge{display:none!important}.alarm-group-badge{background:var(--accent,#10b981);color:#fff;text-align:center;pointer-events:none;z-index:1;border-radius:10px;min-width:16px;padding:3px 5px;font-size:10px;font-weight:700;line-height:1;position:absolute;top:-5px;right:-5px}.quick-filters{flex-wrap:wrap;align-items:center;gap:12px;margin:10px 0 12px;display:flex}.pill-group{border:1px solid var(--border);background:var(--surface);border-radius:6px;display:inline-flex;overflow:hidden}.pill-btn{border:none;border-right:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;padding:3px 10px;font-size:11px;font-weight:500;line-height:1.5;transition:background .12s,color .12s}.pill-btn:last-child{border-right:none}.pill-btn:hover{background:var(--surface-2);color:var(--text-primary)}.pill-btn.active{background:var(--accent-gradient);color:#fff;border-color:#b4f9d2;font-weight:500}.cell-main{color:var(--text-primary);font-size:13px}.cell-sub{color:var(--text-muted);margin-top:1px;font-size:11px}.cell-main--alarm-type{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.alarm-type-dispatch-icon-wrap{color:#60a5fa;cursor:help;flex-shrink:0;align-items:center;display:inline-flex}[data-theme=light] .alarm-type-dispatch-icon-wrap{color:#2563eb}.alarm-type-dispatch-icon{display:block}.alarm-conf{font-weight:600}.alarm-conf-low{color:var(--danger)}.alarm-conf-mid{color:var(--warn)}.alarm-conf-high{color:var(--accent)}.event-level{margin-top:2px;font-size:11px;font-weight:600;display:block}.event-level-high{color:var(--danger)}.event-level-medium{color:var(--warn)}.event-level-low{color:var(--info)}.alarm-status{font-size:12px;font-weight:500}.alarms-table .alarm-row.alarm-row-level-low .alarm-status{color:var(--info)}.btn-ghost.btn-compact{padding:5px 8px;font-size:12px}.alarm-modal-backdrop{z-index:1000;background:#000000b3;justify-content:center;align-items:flex-start;padding:20px;display:none;position:fixed;inset:0;overflow-y:auto}.alarm-modal-backdrop.open{display:flex}body.modal-open{overflow:hidden}body.modal-open nav{z-index:0}.alarm-modal{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);width:100%;max-width:980px;min-height:520px;margin:auto;position:relative;box-shadow:0 22px 80px #0009}.alarm-modal-body{grid-template-columns:minmax(0,1.4fr) minmax(0,1.1fr);gap:22px;padding:20px 22px 22px;display:grid}.alarm-modal-media-col{flex-direction:column;gap:14px;min-width:0;display:flex}.alarm-modal-map-wrap{border-radius:calc(var(--radius) - 6px);border:1px solid var(--border);background:var(--surface-2);overflow:hidden}.alarm-modal-map-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:8px 10px 0;font-size:11px;font-weight:600}.alarm-modal-map{z-index:0;width:100%;height:220px}.alarm-modal-map .leaflet-container{font-family:inherit}.alarm-modal-image-wrap{background:var(--surface-2);border-radius:calc(var(--radius) - 6px);border:1px solid var(--border);min-height:200px;position:relative;overflow:hidden}.alarm-modal-media-loading{min-height:200px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;font-size:13px;display:flex}.alarm-modal-media-loading-spinner{border:3px solid #ffffff1f;border-top-color:var(--accent,#00e5a0);border-radius:50%;width:32px;height:32px;animation:.72s linear infinite alarms-results-spin}.alarm-modal-media-content{flex-direction:column;gap:10px;display:flex}.alarm-modal-media-preview{background:#0a0c10;justify-content:center;align-items:center;min-height:220px;display:flex}.alarm-modal-media-preview img,.alarm-modal-media-preview video{object-fit:contain;width:100%;max-height:420px;display:block}.alarm-modal-media-thumbs{flex-wrap:wrap;gap:8px;max-height:120px;padding:0 10px 10px;display:flex;overflow-y:auto}.alarm-modal-thumb{cursor:pointer;background:var(--surface-1);border:2px solid #0000;border-radius:8px;flex-shrink:0;width:72px;height:48px;padding:0;overflow:hidden}.alarm-modal-thumb.is-active{border-color:var(--accent,#00e5a0)}.alarm-modal-thumb img{object-fit:cover;width:100%;height:100%;display:block}.alarm-modal-thumb-video{background:var(--surface-2);width:100%;height:100%;min-height:48px;position:relative}.alarm-modal-thumb-video img{object-fit:cover;width:100%;height:100%}.alarm-modal-thumb-play{filter:drop-shadow(0 1px 2px #00000080);pointer-events:none;border:8px solid #0000;border-left:14px solid #fffffff2;border-right-width:0;width:0;height:0;margin:auto;position:absolute;inset:50% 0 0 50%;transform:translate(-35%,-50%)}.alarm-modal-placeholder--media{flex-direction:column;justify-content:center;align-items:center;min-height:200px;display:flex}.alarm-modal-full-image-wrap{border-top:1px solid var(--border);margin-top:0}.alarm-modal-full-image-wrap img{object-fit:contain;background:#000;width:100%;max-height:320px;display:block}.alarm-modal-info h2{margin-bottom:14px;font-family:Syne,sans-serif;font-size:18px}.alarm-modal-meta{margin:5px 0 0}.alarm-modal-meta .meta-row{align-items:baseline;gap:12px;padding:4px 0;font-size:14px;display:flex}.alarm-modal-meta dt{min-width:120px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-family:Syne,sans-serif;font-size:12px}.alarm-modal-meta dd{margin:0}.alarm-modal-close{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:all var(--transition);border-radius:999px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.alarm-modal-close:hover{color:var(--text-primary);border-color:var(--border-hover)}.alarm-modal-close svg{width:16px;height:16px}.alarm-modal-image-wrap--placeholder{justify-content:center;align-items:center;min-height:200px;display:flex}.alarm-modal-placeholder{text-align:center;color:var(--text-muted);padding:24px}.alarm-modal-placeholder svg{opacity:.5;width:48px;height:48px;margin:0 auto 12px;display:block}.alarm-modal-placeholder p{margin:0;font-size:13px}.alarm-modal-guid{word-break:break-word;font-family:ui-monospace,monospace;font-size:12px}.alarm-view-btn{align-items:center;gap:6px;display:inline-flex}.alarm-view-btn svg{flex-shrink:0}@media(max-width:900px){.alarm-modal-body{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.alarm-modal{padding-top:28px}.alarm-modal-body{padding:16px}}.detector-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}@media(max-width:920px){.detector-cards{grid-template-columns:1fr}}.detector-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;opacity:.6;transition:all var(--transition);grid-template-rows:auto auto;grid-template-columns:auto 58px 1fr auto;align-items:start;gap:10px 12px;padding:12px 14px;display:grid}.detector-card:hover{border-color:var(--border-hover);background:var(--surface-3)}.detector-card.selected{border-color:var(--accent);background:var(--surface-3);box-shadow:0 4px 16px var(--accent-glow);opacity:1}.detector-card.selected .detector-card-title{color:var(--accent)}.detector-card.selected .detector-icon-large{background:var(--surface-2);border-color:var(--accent);color:var(--accent)}.detector-card.selected .detector-icon-large i{color:inherit}.detector-card.selected .detector-icon-placeholder{color:var(--accent)}.detector-card-checkbox{cursor:pointer;flex-shrink:0;grid-area:1/1;width:12px;height:12px;margin:2px 0 0}.detector-card-checkbox:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.detector-card-icon{grid-area:1/2;justify-content:center;align-items:center;display:flex}.detector-card-body{grid-area:1/3;min-width:0}.detector-card-title{letter-spacing:.02em;font-family:Syne,sans-serif;font-weight:700}.detector-card-desc{color:var(--text-secondary);margin-top:4px;font-size:13px;line-height:1.45}.detector-card-classes{grid-area:1/4;align-self:start}.detector-card-classes .classes-badge-btn{margin:0}.detector-card-classes-list{grid-area:2/1/auto/-1;padding:0 2px 2px}.source-detectors-panel .btn.btn-sm{padding:8px 14px}.settings-tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);gap:4px;margin-bottom:20px;padding:4px;display:flex}.settings-tab-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:6px;flex:none;padding:10px 18px;font-family:DM Sans,sans-serif;font-size:14px;font-weight:500}.settings-tab-btn:hover{color:var(--text-primary)}.settings-tab-btn.active{background:var(--surface-3);color:var(--accent);border:1px solid var(--border-hover)}.settings-tab-panel{display:none}.settings-tab-panel.active{display:block}.stat-strip{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:28px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--tr);cursor:default;padding:18px 20px;position:relative;overflow:hidden}.stat-card:before{content:"";opacity:0;height:2px;transition:opacity var(--tr);position:absolute;top:0;left:0;right:0}.stat-card.c-dir:before{background:linear-gradient(90deg,transparent,var(--warn),transparent)}.stat-card.c-ftp:before{background:linear-gradient(90deg,transparent,var(--info),transparent)}.stat-card.c-cam:before{background:linear-gradient(90deg,transparent,var(--accent),transparent)}.stat-card.c-rtsp:before{background:linear-gradient(90deg,transparent,var(--violet),transparent)}.stat-card:hover{border-color:var(--border-hover);transform:translateY(-2px)}.stat-card:hover:before{opacity:1}.stat-icon{border-radius:9px;place-items:center;width:36px;height:36px;margin-bottom:14px;display:grid}.stat-icon svg{width:18px;height:18px}.si-dir{background:var(--warn-dim);color:var(--warn)}.si-ftp{background:var(--info-dim);color:var(--info)}.si-cam{background:var(--accent-dim);color:var(--accent)}.si-rtsp{background:var(--violet-dim);color:var(--violet)}.stat-num{color:var(--text-primary);font-family:Syne,sans-serif;font-size:30px;font-weight:700;line-height:1}.stat-lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-top:6px;font-family:Syne,sans-serif;font-size:12px;font-weight:500}.stat-sub{color:var(--text-secondary);margin-top:4px;font-size:12px}.online-dot{vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.dot-on{background:var(--accent);box-shadow:0 0 6px var(--accent-glow);animation:2s ease-in-out infinite blip}.dot-off{background:var(--text-muted)}.dot-warn{background:var(--warn);animation:2s ease-in-out infinite blip;box-shadow:0 0 6px #ffb70380}@keyframes blip{0%,to{opacity:1}50%{opacity:.4}}.section-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;display:flex}.section-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:10px;font-family:Syne,sans-serif;font-size:13px;font-weight:700;display:flex}.section-label-bar{border-radius:2px;width:3px;height:16px}.bar-dir{background:var(--warn)}.bar-ftp{background:var(--info)}.bar-cam{background:var(--accent)}.bar-rtsp{background:var(--violet)}.section-count{letter-spacing:.05em;border-radius:100px;padding:3px 8px;font-family:Syne,sans-serif;font-size:11px;font-weight:700}.sc-dir{background:var(--warn-dim);color:var(--warn);border:1px solid #ffb70333}.sc-ftp{background:var(--info-dim);color:var(--info);border:1px solid #38bdf833}.sc-cam{background:var(--accent-dim);color:var(--accent);border:1px solid #00e5a033}.sc-rtsp{background:var(--violet-dim);color:var(--violet);border:1px solid #a78bfa33}.sources-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px;margin-bottom:32px;display:grid}.src-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--tr);position:relative;overflow:hidden}.src-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 8px 12px #0000001a}.src-card.status-error{border-color:#ff4d6d2e}.src-card.status-warn{border-color:#ffb70326}.src-type-stripe{width:100%;height:3px}.stripe-dir{background:linear-gradient(90deg,var(--warn),#ffb7034d)}.stripe-ftp{background:linear-gradient(90deg,var(--info),#38bdf84d)}.stripe-cam{background:linear-gradient(90deg,var(--accent),#00e5a04d)}.stripe-rtsp{background:linear-gradient(90deg,var(--violet),#a78bfa4d)}.src-body{padding:18px 18px 14px}.src-top{align-items:flex-start;gap:13px;margin-bottom:14px;display:flex}.src-ico{border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid;position:relative}.src-ico svg{width:20px;height:20px}.ico-dir{background:var(--warn-dim);color:var(--warn);border:1px solid #ffb70326}.ico-ftp{background:var(--info-dim);color:var(--info);border:1px solid #38bdf826}.ico-cam{background:var(--accent-dim);color:var(--accent);border:1px solid #00e5a026}.ico-rtsp{background:var(--violet-dim);color:var(--violet);border:1px solid #a78bfa26}.src-info{flex:1;min-width:0}.src-name-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.src-name{color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-family:Syne,sans-serif;font-size:14.5px;font-weight:700;overflow:hidden}.src-toggle-btn{border:1px solid var(--border);background:var(--surface-2);width:18px;height:18px;color:var(--text-secondary);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;transition:all .15s;display:grid;position:relative;top:-5px}.src-toggle-btn svg{width:10px;height:10px}.src-toggle-btn.is-on{color:#22c55e;background:#22c55e24;border-color:#22c55e59}.src-toggle-btn.is-off{color:var(--text-muted);background:#94a3b81a;border-color:#94a3b859}.src-toggle-btn[disabled]{opacity:.6;cursor:wait}.src-path{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-family:JetBrains Mono,monospace;font-size:11px;overflow:hidden}.src-status{letter-spacing:.03em;border-radius:100px;flex-shrink:0;align-items:center;gap:5px;margin-top:4px;padding:4px 9px;font-family:Syne,sans-serif;font-size:10.5px;font-weight:600;display:inline-flex}.src-status-sub{color:var(--text-muted);margin-top:4px;font-size:11px}.st-online{background:var(--accent-dim);color:var(--accent);border:1px solid #00e5a033}.st-offline{background:var(--surface-3);color:var(--text-muted);border:1px solid var(--border)}.st-error{background:var(--danger-dim);color:var(--danger);border:1px solid #ff4d6d33}.st-scan{background:var(--warn-dim);color:var(--warn);border:1px solid #ffb70333}.st-streaming{background:var(--info-dim);color:var(--info);border:1px solid #38bdf833}.src-metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.metric{background:var(--surface-2);border:1px solid var(--border);text-align:center;border-radius:8px;padding:10px 12px}.metric-val{color:var(--text-primary);font-family:Syne,sans-serif;font-size:12px;font-weight:700;line-height:1}.metric-lbl{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-family:Syne,sans-serif;font-size:10px}.src-progress-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.prog-label{color:var(--text-secondary);font-size:11.5px;font-weight:500}.prog-pct{color:var(--text-primary);font-family:Syne,sans-serif;font-size:11.5px;font-weight:700}.prog-bar{background:var(--surface-3);border-radius:2px;height:4px;margin-bottom:14px;overflow:hidden}.prog-fill{border-radius:2px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1)}.fill-dir{background:linear-gradient(90deg,var(--warn),#ffb70399)}.fill-ftp{background:linear-gradient(90deg,var(--info),#38bdf899)}.fill-cam{background:linear-gradient(90deg,var(--accent),#00e5a080)}.fill-rtsp{background:linear-gradient(90deg,var(--violet),#a78bfa80)}.src-footer{border-top:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:center;padding:11px 18px;display:flex}.src-ts{color:var(--text-muted);align-items:center;gap:5px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.src-ts svg{opacity:.4;width:11px;height:11px}.src-actions{gap:6px;display:flex}.live-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--danger);letter-spacing:.1em;background:#080c10d9;border:1px solid #ff4d6d4d;border-radius:4px;align-items:center;gap:4px;padding:3px 7px;font-family:Syne,sans-serif;font-size:9px;font-weight:800;display:flex;position:absolute;top:8px;right:8px}.live-badge:before{content:"";background:var(--danger);border-radius:50%;width:5px;height:5px;animation:1s ease-in-out infinite blip}.add-card{border:1.5px dashed var(--border);border-radius:var(--radius);cursor:pointer;min-height:220px;transition:all var(--tr);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:10px;text-decoration:none;display:flex}.add-card:hover{background:var(--accent-dim);border-color:#00e5a059;transform:translateY(-2px)}.add-icon{background:var(--surface-2);border:1px solid var(--border);width:44px;height:44px;color:var(--text-muted);transition:all var(--tr);border-radius:12px;place-items:center;display:grid}.add-card:hover .add-icon{background:var(--accent-dim);color:var(--accent);border-color:#00e5a04d}.add-card:hover .add-icon svg{color:var(--accent)}.add-icon svg{width:20px;height:20px}.add-label{color:var(--text-muted);letter-spacing:.02em;transition:color var(--tr);font-family:Syne,sans-serif;font-size:13px;font-weight:700}.add-card:hover .add-label{color:var(--accent)}.add-sub{color:var(--text-muted);transition:color var(--tr);font-size:12px}.add-card:hover .add-sub{color:var(--text-secondary)}.alarm-decision-block{border:1px solid var(--border);border-radius:8px;margin-top:16px;overflow:hidden}.alarm-decision-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:10px 14px 6px;font-size:11px;font-weight:700}.alarm-decision-pills{flex-wrap:wrap;gap:6px;padding:0 14px 10px;display:flex}.alarm-decision-pill{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:100px;padding:4px 11px;font-size:12px;font-weight:600;transition:background .13s,border-color .13s,color .13s}.alarm-decision-pill:hover{background:var(--surface-1)}.alarm-decision-pill.is-active{background:var(--accent-gradient);color:#fff;border-color:#b4f9d2}.alarm-decision-textarea{box-sizing:border-box;border:none;border-top:1px solid var(--border);resize:vertical;width:100%;color:var(--text-primary);background:0 0;outline:none;min-height:70px;padding:8px 14px;font-family:inherit;font-size:13px;display:block}.alarm-decision-textarea:focus{background:var(--surface-1)}.alarm-decision-actions{border-top:1px solid var(--border);background:var(--surface-1);align-items:center;gap:10px;padding:8px 14px 10px;display:flex}.alarm-decision-saving{color:var(--text-muted);font-size:12px}.alarm-decision-view.decision-reviewing{background:#3b82f612;border-color:#3b82f640}.alarm-decision-view.decision-reviewing .alarm-decision-view-header{background:#3b82f61a;border-color:#3b82f640}.alarm-decision-view.decision-confirmed{background:#ef44440f;border-color:#ef444438}.alarm-decision-view.decision-confirmed .alarm-decision-view-header{background:#ef444417;border-color:#ef444438}.alarm-decision-view.decision-rejected{background:#64748b12;border-color:#64748b38}.alarm-decision-view.decision-rejected .alarm-decision-view-header{background:#64748b1a;border-color:#64748b38}.alarm-decision-view-header{border-bottom:1px solid var(--border);background:var(--surface-1);justify-content:space-between;align-items:center;padding:9px 14px 6px;display:flex}.alarm-decision-view-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:700}.alarm-decision-edit-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;align-items:center;padding:3px;transition:color .13s,background .13s;display:flex}.alarm-decision-edit-btn:hover{color:var(--accent);background:var(--surface-2)}.alarm-decision-edit-btn svg{width:14px;height:14px}.alarm-decision-view-body{padding:10px 14px 12px}.alarm-decision-view-status{color:var(--text-primary);margin-bottom:4px;font-size:13px;font-weight:700}.alarm-decision-view-comment{color:var(--text-secondary);white-space:pre-wrap;margin-bottom:6px;font-size:13px}.alarm-decision-view-meta{color:var(--text-muted);font-size:11px}.alarm-modal-info-header{justify-content:start;align-items:center;gap:25px;margin-bottom:2px;padding-top:0;display:flex}.alarm-modal-info-header h2{margin:0}.alarm-group-panel{flex-shrink:0}.alarm-group-panel-toggle{color:#1d4ed8;cursor:pointer;white-space:nowrap;background:#dbeafe;border:1px solid #bfdbfe;border-radius:100px;align-items:center;gap:5px;padding:4px 10px 4px 12px;font-size:12px;font-weight:600;transition:background .13s,border-color .13s;display:inline-flex}.alarm-group-panel-toggle:hover{background:#bfdbfe;border-color:#93c5fd}.alarm-group-panel-chevron{flex-shrink:0;width:14px;height:14px;transition:transform .2s}.alarm-group-panel.is-open .alarm-group-panel-chevron{transform:rotate(180deg)}.alarm-group-panel-body{border:1px solid var(--border);border-radius:6px;max-height:220px;margin-top:10px;margin-bottom:10px;overflow:hidden auto}.alarm-group-list{border-collapse:collapse;width:100%;font-size:11.5px}.alarm-group-list th{background:var(--surface-1,#f5f5f5);text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:5px 8px;font-weight:600;position:sticky;top:0}.alarm-group-list td{border-bottom:1px solid var(--border);vertical-align:middle;padding:4px 8px}.alarm-group-list tr:last-child td{border-bottom:none}.alarm-group-list tr{cursor:pointer;transition:background .12s}.alarm-group-list tr:hover{background:var(--surface-1,#f8f8f8)}.alarm-group-list tr.is-active{background:var(--accent-bg,#e8f5e9)}.alarm-group-thumb{object-fit:cover;border-radius:4px;width:44px;height:36px;display:block}.alarm-group-root-badge{background:var(--accent,#10b981);color:#fff;vertical-align:middle;border-radius:4px;margin-left:4px;padding:1px 4px;font-size:9px;font-weight:700;display:inline-block}.online-modal-backdrop{z-index:1000;background:#000000b3;justify-content:center;align-items:flex-start;padding:20px;display:none;position:fixed;inset:0;overflow-y:auto}.online-modal-backdrop.open{display:flex}.online-modal{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);width:100%;max-width:920px;margin:auto;padding:20px 22px 18px;position:relative;box-shadow:0 22px 80px #0009}.online-modal-title{margin:0 40px 16px 0;font-family:Syne,sans-serif;font-size:18px}.online-modal-search-row{margin-bottom:12px}.online-modal-search-input{width:100%;max-width:none}.online-player-demo-section{margin-top:28px;margin-bottom:28px}.online-player-demo-heading{color:var(--text-primary);letter-spacing:-.01em;margin:0 0 16px;font-family:Syne,sans-serif;font-size:18px;font-weight:700}.online-player-demo-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;max-width:720px;overflow:visible;box-shadow:0 4px 24px #0000000f}.online-player-demo-video-wrap{background:var(--surface-2,#0000000a);border-radius:12px 12px 0 0;overflow:hidden}.online-player-demo-placeholder{aspect-ratio:16/9;background:linear-gradient(145deg,var(--surface-2,#f1f5f9) 0%,var(--surface,#fff) 100%);color:var(--text-muted);border-bottom:1px solid var(--border);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}html[data-theme=dark] .online-player-demo-placeholder{background:linear-gradient(145deg,#ffffff0f,#ffffff05)}.online-player-demo-placeholder-icon{opacity:.45}.online-player-demo-placeholder-label{letter-spacing:.02em;font-size:13px;font-weight:500}.online-player-demo-footer{background:var(--surface-2);z-index:2;border-radius:0 0 12px 12px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:3px 14px;display:flex;position:absolute;bottom:0;overflow:visible}.online-player-demo-meta{align-items:center;gap:10px;min-width:0;display:flex}.online-player-demo-meta-icon{flex-shrink:0;width:auto;max-height:26px}.online-player-demo-meta-text{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.online-player-demo-actions{flex-shrink:0;position:relative}.online-player-demo-dropdown{position:relative}.online-player-demo-dropdown-summary{align-items:center;gap:6px;list-style:none;display:inline-flex}.online-player-demo-dropdown-summary::-webkit-details-marker{display:none}.online-player-demo-dropdown-summary:after{content:"";opacity:0;border:5px solid #0000;border-top:none;border-bottom-color:currentColor;width:0;height:0}.online-player-demo-menu{background:var(--surface);border:1px solid var(--border);z-index:100;border-radius:10px;min-width:280px;max-width:min(320px,92vw);max-height:min(70vh,480px);padding:8px 0;position:absolute;top:auto;bottom:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 -8px 32px #00000024,0 4px 16px #00000014}html[data-theme=dark] .online-player-demo-menu{box-shadow:0 -8px 32px #00000080,0 4px 16px #0000004d}.online-player-demo-menu-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid #ddd;align-items:center;gap:8px;padding:12px 14px 6px;font-size:11px;font-weight:700;display:flex}.online-player-demo-menu-heading:first-child{padding-top:0!important}.online-player-demo-menu-heading img{opacity:.9;flex-shrink:0}.online-player-demo-menu-item{color:var(--text-primary);align-items:center;gap:10px;padding:6px 14px;font-size:13px;text-decoration:none;transition:background .15s;display:flex}.online-player-demo-menu-item:hover{background:var(--surface-2,#0000000a)}.online-player-demo-menu-item img{flex-shrink:0;height:14px}.vehicle-select-online-seg{gap:4px;padding:6px 0 0;display:flex}.vehicle-select-seg-btn{border:1px solid var(--border);background:var(--surface-2);min-width:0;color:var(--text-secondary);cursor:pointer;border-radius:6px;flex:1;padding:4px 6px;font-size:11px;font-weight:500;line-height:1.2;transition:background .12s,border-color .12s,color .12s}.vehicle-select-seg-btn:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.vehicle-select-seg-btn:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}}.vehicle-select-seg-btn:hover{color:var(--text-primary)}.vehicle-select-seg-btn.active{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.vehicle-select-seg-btn.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface-2))}}.vehicle-select-seg-btn.active{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.vehicle-select-seg-btn.active{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.vehicle-select-seg-btn.active{color:var(--text-primary);font-weight:600}.vehicle-select-seg-num{font-variant-numeric:tabular-nums;opacity:.88;color:var(--text-muted);margin-left:2px;font-size:10px;font-weight:700;display:inline-block}.vehicle-select-seg-btn.active .vehicle-select-seg-num{color:inherit;opacity:.95}.online-modal-filter-empty{color:var(--text-muted);text-align:center;background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--radius-sm);margin:20px 0;padding:10px 12px;font-size:13px}.online-modal-close{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;width:32px;height:32px;color:var(--text-secondary);transition:all var(--transition);border-radius:999px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.online-modal-close:hover{color:var(--text-primary);border-color:var(--border-hover)}.online-modal-close svg{width:16px;height:16px}.online-vehicle-grid{flex-direction:column;gap:12px;max-height:min(60vh,520px);padding:2px 0 8px;display:flex;overflow-y:auto}.online-vehicle-group-head{color:var(--text-muted);letter-spacing:.03em;border-bottom:1px solid var(--border);margin:0;padding:6px 0 8px;font-size:11px;font-weight:700}.online-vehicle-group-inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:8px;display:grid}@media(max-width:900px){.online-vehicle-group-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.online-vehicle-group-inner{grid-template-columns:1fr}}.online-vehicle-card{cursor:pointer;margin:0;display:block;position:relative}.online-vehicle-check{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.online-vehicle-card-inner{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);align-items:center;gap:8px;min-height:44px;padding:10px 12px;display:flex;position:relative}.online-vehicle-card:hover .online-vehicle-card-inner{border-color:var(--border-hover);background:var(--surface-3)}.online-vehicle-check:focus-visible+.online-vehicle-card-inner{outline:2px solid var(--accent);outline-offset:2px}.online-vehicle-check:checked+.online-vehicle-card-inner{border-color:var(--accent);background:linear-gradient(135deg,#00e5a038 0%,#00e5a012 55%,var(--surface-2) 100%);box-shadow:0 0 0 4px var(--accent-dim),0 6px 22px #00e5a038,inset 0 1px #ffffff0f;border-width:2px;padding-right:38px}.online-vehicle-check:checked+.online-vehicle-card-inner:before{content:"";background:var(--accent);border-radius:0 4px 4px 0;width:4px;position:absolute;top:8px;bottom:8px;left:0;box-shadow:0 0 12px #00e5a099}.online-vehicle-check:checked+.online-vehicle-card-inner:after{content:"";background-color:var(--accent);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:12px 12px;border-radius:50%;width:22px;height:22px;position:absolute;top:50%;right:8px;transform:translateY(-50%);box-shadow:0 2px 10px #00e5a080}.online-status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.online-status-dot.is-online{background:#22c55e;box-shadow:0 0 0 2px #22c55e40}.online-status-dot.is-offline{background:var(--text-muted);opacity:.55}.online-vehicle-plate{flex:1;min-width:0;font-size:13px;font-weight:600}.online-modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:16px;padding-top:14px;display:flex}.alarm-reaction-backdrop{z-index:11000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000b8;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.alarm-reaction-backdrop.open{display:flex}.alarm-reaction-dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;max-width:960px;max-height:min(92vh,720px);display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #0000008c}.alarm-reaction-layout{flex:1;grid-template-columns:minmax(240px,1fr) minmax(280px,1.1fr);align-items:stretch;gap:0;min-height:0;display:grid}@media(max-width:720px){.alarm-reaction-layout{grid-template-columns:1fr;max-height:min(90vh,720px);overflow-y:auto}.alarm-reaction-media{order:-1;min-height:200px;max-height:40vh}}.alarm-reaction-media{border-right:1px solid var(--border);background:#eee;flex-direction:column;min-height:0;display:flex;overflow:hidden}.alarm-reaction-media-fetch{min-height:160px;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:13px;display:flex}.alarm-reaction-media-fetch-spinner{border:3px solid #ffffff1f;border-top-color:var(--accent,#00e5a0);border-radius:50%;width:32px;height:32px;animation:.72s linear infinite alarms-results-spin}.alarm-reaction-map-wrap{border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0}.alarm-reaction-map-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:8px 10px 0;font-size:11px;font-weight:600}.alarm-reaction-map{z-index:0;width:100%;height:200px}.alarm-reaction-map .leaflet-container{font-family:inherit}.alarm-reaction-media-inner{flex:1;justify-content:center;align-items:center;min-width:0;min-height:200px;padding:12px;display:flex}.alarm-reaction-media-inner .alarm-reaction-img,.alarm-reaction-media-inner .alarm-reaction-video{object-fit:contain;border-radius:calc(var(--radius-sm) - 2px);width:100%;max-height:min(52vh,420px)}.alarm-reaction-media-inner .alarm-reaction-video{background:#000}.alarm-reaction-media-placeholder{text-align:center;color:var(--text-muted);padding:24px 16px;font-size:13px;line-height:1.45}.alarm-reaction-media-placeholder svg{opacity:.45;width:48px;height:48px;margin:0 auto 12px;display:block}.alarm-reaction-thumbs{scrollbar-width:thin;scrollbar-color:#aaa transparent;border-top:1px solid #ffffff14;flex-flow:row;flex-shrink:0;gap:6px;padding:8px 10px 10px;display:flex;overflow:auto hidden}.alarm-reaction-thumbs::-webkit-scrollbar{height:4px}.alarm-reaction-thumbs::-webkit-scrollbar-thumb{background:#aaa;border-radius:4px}.alarm-reaction-thumb{cursor:pointer;background:#141418;border:2px solid #0000;border-radius:4px;flex:none;width:52px;height:36px;margin:0;padding:0;transition:border-color .15s,opacity .15s;overflow:hidden}.alarm-reaction-thumb:hover{border-color:#ffffff40}.alarm-reaction-thumb.is-active{border-color:var(--accent,#6b8cff)}.alarm-reaction-thumb:focus-visible{outline:2px solid var(--accent,#6b8cff);outline-offset:2px}.alarm-reaction-thumb-img{object-fit:cover;width:100%;height:100%;display:block}.alarm-reaction-thumb-video-wrap{background:#0d0d10;width:100%;height:100%;position:relative}.alarm-reaction-thumb-video-el{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.alarm-reaction-thumb-play{color:#ffffffd9;pointer-events:none;background:linear-gradient(#0000 45%,#00000073);place-items:center;display:grid;position:absolute;inset:0}.alarm-reaction-thumb-play svg{filter:drop-shadow(0 1px 2px #0009);width:18px;height:18px}.alarm-reaction-main{flex-direction:column;min-height:520px;padding:20px 20px 16px;display:flex;overflow:auto}.alarm-reaction-main-pane{flex-direction:column;flex:1;min-height:0;display:flex}.alarm-reaction-reject-pane{flex-direction:column;flex:1;gap:12px;min-height:0;padding-top:4px;display:flex}.alarm-reaction-reject-back{color:var(--text-secondary);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-self:flex-start;align-items:center;gap:6px;margin:0 0 4px;padding:6px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.alarm-reaction-reject-back:hover{background:var(--surface-3);color:var(--text-primary);border-color:var(--border-hover)}.alarm-reaction-reject-back__icon{opacity:.85;font-size:14px;line-height:1}.alarm-reaction-reject-title{color:var(--text-primary);margin:0;font-family:Syne,sans-serif;font-size:16px;font-weight:700}.alarm-reaction-reject-hint{color:var(--text-muted);margin:-4px 0 0;font-size:12px;line-height:1.4}.alarm-reaction-reject-options{flex-direction:column;flex:1;gap:6px;min-height:0;padding-right:2px;display:flex;overflow:auto}.alarm-reaction-reject-option{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;align-items:flex-start;gap:10px;padding:10px 12px;transition:background .15s,border-color .15s;display:flex}.alarm-reaction-reject-option:hover{background:var(--surface-3);border-color:var(--border-hover)}.alarm-reaction-reject-radio{accent-color:var(--text-muted);flex-shrink:0;margin:2px 0 0}.alarm-reaction-reject-option__text{color:var(--text-primary);font-size:13px;line-height:1.35}.alarm-reaction-reject-other-wrap{flex-direction:column;gap:6px;display:flex}.alarm-reaction-reject-other-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:11px;font-weight:600}.alarm-reaction-reject-other-text{box-sizing:border-box;width:100%;min-height:88px;color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);resize:vertical;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.4}.alarm-reaction-reject-other-text:focus{border-color:var(--border-hover);outline:none}.alarm-reaction-reject-footer{flex-shrink:0;margin-top:auto;padding-top:8px}.alarm-reaction-btn-reject-save{background:#8b95a6}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject-save{background:color-mix(in srgb,#8b95a6 7%,var(--surface-2))}}.alarm-reaction-btn-reject-save{border-color:#7a8494}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject-save{border-color:color-mix(in srgb,#7a8494 14%,var(--border))}}.alarm-reaction-btn-reject-save{color:var(--text-secondary)}.alarm-reaction-btn-reject-save:hover{background:#8b95a6}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject-save:hover{background:color-mix(in srgb,#8b95a6 11%,var(--surface-3))}}.alarm-reaction-btn-reject-save:hover{border-color:#7a8494}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject-save:hover{border-color:color-mix(in srgb,#7a8494 22%,var(--border-hover))}}.alarm-reaction-btn-reject-save:hover{color:var(--text-primary)}.alarm-reaction-heading{color:var(--text-primary);margin:0 36px 12px 0;font-family:Syne,sans-serif;font-size:20px;font-weight:700}.alarm-reaction-close{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition);border-radius:999px;place-items:center;display:grid;position:absolute;top:10px;right:10px}.alarm-reaction-close:hover{color:var(--text-primary);border-color:var(--border-hover)}.alarm-reaction-body{margin-bottom:6px}.alarm-reaction-meta{margin:0;font-size:13px}.alarm-reaction-meta-row{border-bottom:1px solid var(--border);grid-template-columns:110px 1fr;gap:8px 12px;padding:3px 0;display:grid}.alarm-reaction-meta-row:last-child{border-bottom:0}.alarm-reaction-meta dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0;font-family:Syne,sans-serif;font-size:11px}.alarm-reaction-meta dd{word-break:break-word;color:var(--text-primary);margin:0}.alarm-reaction-vehicle-status{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.alarm-reaction-vehicle-status-label{font-weight:500}.alarm-reaction-vehicle-status-last{color:var(--muted);font-size:13px}.alarm-reaction-ts-online{vertical-align:middle;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-left:0;display:inline-block}.alarm-reaction-ts-online--on{background:#22c55e;box-shadow:0 0 0 2px #22c55e59}.alarm-reaction-ts-online--off{background:#94a3b8;box-shadow:0 0 0 2px #94a3b84d}.alarm-reaction-actions-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;gap:10px;min-height:150px;margin-top:6px;margin-bottom:6px;padding:12px;display:flex}.alarm-reaction-actions-panel--notify{border-color:var(--border-hover)}.alarm-reaction-actions-panel--notify .alarm-reaction-actions{flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;width:100%}.alarm-reaction-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.alarm-reaction-notify-cancel{background:#9a9190;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-notify-cancel{background:color-mix(in srgb,#9a9190 8%,var(--surface-2))}}.alarm-reaction-notify-cancel{border-color:#7d7574}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-notify-cancel{border-color:color-mix(in srgb,#7d7574 16%,var(--border))}}.alarm-reaction-notify-cancel{color:var(--text-secondary)}.alarm-reaction-notify-cancel__icon{opacity:.9;flex-shrink:0}.alarm-reaction-notify-cancel__label{line-height:1.25}.alarm-reaction-notify-cancel:hover{background:#9a9190}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-notify-cancel:hover{background:color-mix(in srgb,#9a9190 12%,var(--surface-3))}}.alarm-reaction-notify-cancel:hover{border-color:#7d7574}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-notify-cancel:hover{border-color:color-mix(in srgb,#7d7574 24%,var(--border-hover))}}.alarm-reaction-notify-cancel:hover{color:var(--text-primary)}.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active{background:#8b95a6}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active{background:color-mix(in srgb,#8b95a6 28%,var(--surface-3))}}.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active{border-color:#5a6a82}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active{border-color:color-mix(in srgb,#5a6a82 42%,var(--border))}}.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active{color:var(--text-primary);font-weight:600;box-shadow:inset 0 0 0 1px #5a6a8240}.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active{background:#8a968e}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active{background:color-mix(in srgb,#8a968e 28%,var(--surface-3))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active{border-color:#5d6b62}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active{border-color:color-mix(in srgb,#5d6b62 40%,var(--border))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active{color:var(--text-primary);font-weight:600;box-shadow:inset 0 0 0 1px #5d6b6238}.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active:hover{background:#8b95a6}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active:hover{background:color-mix(in srgb,#8b95a6 34%,var(--surface-3))}}.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active:hover{border-color:#5a6a82}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active:hover{border-color:color-mix(in srgb,#5a6a82 48%,var(--border-hover))}}.alarm-reaction-btn-phone.alarm-reaction-btn--notify-active:hover{color:var(--text-primary)}.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active:hover{background:#8a968e}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active:hover{background:color-mix(in srgb,#8a968e 34%,var(--surface-3))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active:hover{border-color:#5d6b62}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active:hover{border-color:color-mix(in srgb,#5d6b62 46%,var(--border-hover))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--notify-active:hover{color:var(--text-primary)}.alarm-reaction-btn{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;justify-content:flex-start;align-items:center;gap:8px;min-height:34px;padding:6px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.alarm-reaction-btn__icon{opacity:.88;flex-shrink:0}.alarm-reaction-btn__label{line-height:1.25}.alarm-reaction-btn--soft{background:var(--surface-2);color:var(--text-secondary);box-shadow:none}.alarm-reaction-btn--soft:hover{background:var(--surface-3);color:var(--text-primary);border-color:var(--border-hover)}.alarm-reaction-btn--soft:active{background:var(--text-primary)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn--soft:active{background:color-mix(in srgb,var(--text-primary) 6%,var(--surface-2))}}.alarm-reaction-btn-reject.alarm-reaction-btn--soft{background:var(--text-danger)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject.alarm-reaction-btn--soft{background:color-mix(in srgb,var(--text-danger) 10%,var(--surface-2))}}.alarm-reaction-btn-reject.alarm-reaction-btn--soft{border-color:var(--text-danger)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject.alarm-reaction-btn--soft{border-color:color-mix(in srgb,var(--text-danger) 22%,var(--border))}}.alarm-reaction-btn-reject.alarm-reaction-btn--soft{color:var(--text-danger)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject.alarm-reaction-btn--soft{color:color-mix(in srgb,var(--text-danger) 55%,var(--text-secondary))}}.alarm-reaction-btn-reject.alarm-reaction-btn--soft:hover{background:var(--text-danger)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject.alarm-reaction-btn--soft:hover{background:color-mix(in srgb,var(--text-danger) 14%,var(--surface-3))}}.alarm-reaction-btn-reject.alarm-reaction-btn--soft:hover{border-color:var(--text-danger)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject.alarm-reaction-btn--soft:hover{border-color:color-mix(in srgb,var(--text-danger) 32%,var(--border-hover))}}.alarm-reaction-btn-reject.alarm-reaction-btn--soft:hover{color:var(--text-danger)}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-reject.alarm-reaction-btn--soft:hover{color:color-mix(in srgb,var(--text-danger) 75%,var(--text-primary))}}.alarm-reaction-btn-phone.alarm-reaction-btn--soft{background:#8b95a6}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--soft{background:color-mix(in srgb,#8b95a6 7%,var(--surface-2))}}.alarm-reaction-btn-phone.alarm-reaction-btn--soft{border-color:#7a8494}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--soft{border-color:color-mix(in srgb,#7a8494 14%,var(--border))}}.alarm-reaction-btn-phone.alarm-reaction-btn--soft:hover{background:#8b95a6}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--soft:hover{background:color-mix(in srgb,#8b95a6 11%,var(--surface-3))}}.alarm-reaction-btn-phone.alarm-reaction-btn--soft:hover{border-color:#7a8494}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-phone.alarm-reaction-btn--soft:hover{border-color:color-mix(in srgb,#7a8494 22%,var(--border-hover))}}.alarm-reaction-btn-phone.alarm-reaction-btn--soft:hover{color:var(--text-primary)}.alarm-reaction-btn-recorder.alarm-reaction-btn--soft{background:#8a968e}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--soft{background:color-mix(in srgb,#8a968e 7%,var(--surface-2))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--soft{border-color:#75827a}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--soft{border-color:color-mix(in srgb,#75827a 14%,var(--border))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--soft:hover{background:#8a968e}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--soft:hover{background:color-mix(in srgb,#8a968e 11%,var(--surface-3))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--soft:hover{border-color:#75827a}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-btn-recorder.alarm-reaction-btn--soft:hover{border-color:color-mix(in srgb,#75827a 22%,var(--border-hover))}}.alarm-reaction-btn-recorder.alarm-reaction-btn--soft:hover{color:var(--text-primary)}.alarm-reaction-actions-panel .alarm-reaction-contact-stack{border-top:none;margin-top:0;padding-top:0}.alarm-reaction-actions-panel .alarm-reaction-contact-stack:not([hidden]){border-top:1px solid var(--border);padding-top:10px}.alarm-reaction-contact-details{color:var(--text-primary);word-break:break-word;font-size:12px;line-height:1.45}.alarm-reaction-contact-details--pre{white-space:pre-wrap;word-break:break-word}.alarm-reaction-contact-details--error{color:var(--text-danger)}.alarm-reaction-contact-details-link{color:inherit;text-underline-offset:2px;text-decoration:underline}.alarm-reaction-contact-details-link:hover{text-decoration-thickness:2px}.alarm-reaction-phone-outcome{margin-top:10px}.alarm-reaction-phone-outcome-btns{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.alarm-reaction-outcome-btn{border-radius:var(--radius-sm);cursor:pointer;min-height:32px;color:var(--text-secondary);background:#8b9a94;justify-content:center;align-items:center;padding:5px 10px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-outcome-btn{background:color-mix(in srgb,#8b9a94 8%,var(--surface-2))}}.alarm-reaction-outcome-btn{border:1px solid #6f7d78}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-outcome-btn{border:1px solid color-mix(in srgb,#6f7d78 16%,var(--border))}}.alarm-reaction-outcome-btn:hover{background:#8b9a94}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-outcome-btn:hover{background:color-mix(in srgb,#8b9a94 12%,var(--surface-3))}}.alarm-reaction-outcome-btn:hover{border-color:#6f7d78}@supports (color:color-mix(in lab,red,red)){.alarm-reaction-outcome-btn:hover{border-color:color-mix(in srgb,#6f7d78 24%,var(--border-hover))}}.alarm-reaction-outcome-btn:hover{color:var(--text-primary)}.alarm-reaction-outcome-btn--single{width:100%;max-width:280px}.alarm-reaction-actions-panel .alarm-reaction-recorder-connect:not([hidden]){border-top:1px solid var(--border);margin-top:4px;padding-top:14px}.alarm-reaction-recorder-connect{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.alarm-reaction-recorder-connect__hint{color:var(--text-muted);margin:0;font-size:12px;line-height:1.4}.alarm-reaction-recorder-done-btn{width:100%;max-width:280px}@keyframes alarm-reaction-wave-pulse{0%,to{opacity:.45;transform:scaleY(.32)}50%{opacity:1;transform:scaleY(1)}}.alarm-reaction-wave{height:40px;color:var(--text-secondary);justify-content:center;align-items:flex-end;gap:5px;display:flex}.alarm-reaction-wave__bar{transform-origin:bottom;background:currentColor;border-radius:3px;width:5px;height:28px;animation:.85s ease-in-out infinite alarm-reaction-wave-pulse}.alarm-reaction-wave__bar:first-child{animation-delay:0s}.alarm-reaction-wave__bar:nth-child(2){animation-delay:.1s}.alarm-reaction-wave__bar:nth-child(3){animation-delay:.2s}.alarm-reaction-wave__bar:nth-child(4){animation-delay:.3s}.alarm-reaction-wave__bar:nth-child(5){animation-delay:.4s}.alarm-reaction-btn.is-disabled{background:var(--surface-3)!important;color:var(--text-muted)!important;border-color:var(--border)!important;box-shadow:none!important;cursor:not-allowed!important;opacity:.55!important}.alarm-reaction-btn.is-disabled:hover{background:var(--surface-3)!important;border-color:var(--border)!important;color:var(--text-muted)!important}.map-page-outer{width:calc(100% + 48px);max-width:none;margin-left:-24px;margin-right:-24px}@media(max-width:720px){.map-page-outer{width:calc(100% + 32px);margin-left:-16px;margin-right:-16px}}.map-page{height:calc(100vh - var(--nav-h) - 48px);flex-direction:column;min-height:420px;display:flex}.map-page-toolbar{flex-shrink:0;padding:0 0 12px}.map-toolbar-row{width:100%}.map-toolbar-row-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.map-toolbar-page-title{flex-shrink:0;align-self:center;margin:0;padding-right:8px;font-size:28px;line-height:1.25}.map-toolbar-row-pills{margin-top:10px}.map-period-pill{border:1px solid var(--border);background:var(--surface-2);transition:border-color var(--transition),box-shadow var(--transition);box-sizing:border-box;border-radius:999px;flex-wrap:wrap;align-items:center;gap:2px 4px;min-height:42px;padding:4px 12px 4px 10px;display:inline-flex;position:relative}.map-period-pill>input.flatpickr-input{top:0;left:0;opacity:0!important;pointer-events:none!important;border:0!important;width:0!important;min-width:0!important;height:0!important;margin:0!important;padding:0!important;position:absolute!important;overflow:hidden!important}.map-period-pill:focus-within{box-shadow:0 0 0 3px var(--accent-dim);border-color:#00e5a066}.map-period-pill-icon{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0 2px 0 0;padding:2px;line-height:0;display:flex}.map-period-pill-icon:hover{color:var(--text-primary);background:var(--border)}@supports (color:color-mix(in lab,red,red)){.map-period-pill-icon:hover{background:color-mix(in srgb,var(--border) 40%,transparent)}}.map-period-pill-icon:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.map-period-pill-icon svg{display:block}.map-period-divider{background:var(--border);opacity:.85;flex-shrink:0;align-self:stretch;width:1px;min-height:22px;margin:0 6px}.map-period-pill .map-period-field,.map-period-pill input.flatpickr-alt-input{min-width:0;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;width:auto!important;padding:6px 4px!important}.map-period-pill .map-period-field:focus,.map-period-pill input.flatpickr-alt-input:focus{box-shadow:none!important;background:0 0!important;border:none!important}.map-period-pill .map-time-select{cursor:pointer;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='%237a8fa6' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important;background-position:right 4px center!important;background-repeat:no-repeat!important;padding-right:28px!important}.map-page-toolbar .flatpickr-calendar{z-index:1200}.map-date-input{box-sizing:border-box;width:118px;min-width:108px}.map-period-pill .map-date-input,.map-period-pill input.flatpickr-alt-input{width:auto;min-width:96px;max-width:118px}.map-time-select{min-width:80px}.map-select-ts-btn{flex-shrink:0}.map-vehicle-pills{flex-wrap:wrap;align-items:center;gap:8px;width:100%;min-width:0;display:flex}.map-v-pill{border:1px solid var(--map-pill-color,var(--accent));border-radius:999px;align-items:center;gap:6px;padding:3px 4px 3px 8px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.map-v-pill{border:1px solid color-mix(in srgb,var(--map-pill-color,var(--accent)) 45%,var(--border))}}.map-v-pill{background:var(--map-pill-color,var(--accent))}@supports (color:color-mix(in lab,red,red)){.map-v-pill{background:color-mix(in srgb,var(--map-pill-color,var(--accent)) 12%,var(--surface))}}.map-v-pill{font-size:12px;line-height:1.2}.map-v-pill--no-route{opacity:.58;filter:grayscale(.72)}.map-v-pill--no-route .map-v-pill-check-label{cursor:default}.map-v-pill--no-route .map-v-pill-plate{cursor:default;color:var(--text-muted)}.map-v-pill--no-route .map-v-pill-plate:hover{color:var(--text-muted);text-decoration:none}.map-v-pill-check-label{cursor:pointer;align-items:center;margin:0;display:inline-flex}.map-v-pill-check{width:14px;height:14px;accent-color:var(--map-pill-color,var(--accent));cursor:pointer;margin:0}.map-v-pill-plate{color:var(--text-primary);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:2px 8px 2px 0;font-family:DM Sans,ui-monospace,monospace;font-size:12px;font-weight:600}.map-v-pill-plate:hover{color:var(--map-pill-color,var(--accent));text-decoration:underline}.map-leaflet-wrap{flex-direction:column;flex:1;width:100%;min-height:0;display:flex;position:relative}.map-routes-loading{z-index:500;border:1px solid var(--border);background:var(--surface);border-radius:999px;flex-direction:row;align-items:center;gap:10px;max-width:min(280px,100% - 24px);padding:8px 14px;display:flex;position:absolute;inset:12px 12px auto auto}@supports (color:color-mix(in lab,red,red)){.map-routes-loading{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.map-routes-loading{box-shadow:0 4px 16px var(--text-primary)}@supports (color:color-mix(in lab,red,red)){.map-routes-loading{box-shadow:0 4px 16px color-mix(in srgb,var(--text-primary) 10%,transparent)}}.map-routes-loading{-webkit-backdrop-filter:blur(8px);pointer-events:none;transition:opacity .15s}.map-routes-loading[hidden]{display:none!important}.map-routes-loading-spinner{border:2px solid var(--border);flex-shrink:0;width:18px;height:18px}@supports (color:color-mix(in lab,red,red)){.map-routes-loading-spinner{border:2px solid color-mix(in srgb,var(--border) 70%,var(--text-muted))}}.map-routes-loading-spinner{border-top-color:var(--accent,#00e5a0);border-radius:50%;animation:.72s linear infinite map-routes-spin}.map-routes-loading-text{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.25;overflow:hidden}@keyframes map-routes-spin{to{transform:rotate(360deg)}}.map-leaflet-container{border-radius:var(--radius);border:1px solid var(--border);flex:1;width:100%;min-height:0;overflow:hidden;box-shadow:0 1px #0000000a}.map-leaflet-container .leaflet-container{background:var(--surface-2);font-family:DM Sans,sans-serif}.map-route-start-label{background:0 0!important;border:none!important}.map-route-start-label-wrap{pointer-events:none;white-space:nowrap;position:relative;transform:translate(-50%,calc(-100% - 12px))}.map-route-start-label-inner{letter-spacing:.02em;color:var(--text-primary);background:var(--label-line,var(--accent));border-radius:6px;padding:4px 9px;font-family:DM Sans,ui-monospace,monospace;font-size:11px;font-weight:700;display:inline-block}@supports (color:color-mix(in lab,red,red)){.map-route-start-label-inner{background:color-mix(in srgb,var(--label-line,var(--accent)) 18%,var(--surface))}}.map-route-start-label-inner{border:1px solid var(--label-line,var(--accent))}@supports (color:color-mix(in lab,red,red)){.map-route-start-label-inner{border:1px solid color-mix(in srgb,var(--label-line,var(--accent)) 55%,var(--border))}}.map-route-start-label-inner{box-shadow:0 2px 10px #0000001f}.map-route-arrow{background:0 0!important;border:none!important}.map-route-arrow-inner{width:26px;height:26px;transform:rotate(var(--arrow-rotate,0deg));filter:drop-shadow(0 0 1px #00000059);place-items:center;font-size:15px;line-height:1;display:grid}.map-point-tooltip-wrap{box-shadow:none!important;background:0 0!important;border:none!important}.map-point-tooltip-wrap .leaflet-tooltip-content{margin:0!important}.map-point-popup .leaflet-popup-content-wrapper{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:0;overflow:hidden;box-shadow:0 8px 28px #0000002e}.map-point-popup .leaflet-popup-content{margin:0;line-height:1.35}.map-point-popup .leaflet-popup-tip{background:var(--surface);border:1px solid var(--border);box-shadow:none}.map-point-popup .leaflet-popup-close-button{width:28px;height:28px;color:var(--text-muted);border-radius:6px;padding:0;font-size:22px;font-weight:600;line-height:26px;text-decoration:none;transition:color .15s,background .15s;top:4px;right:4px}.map-point-popup .leaflet-popup-close-button:hover{color:var(--text-primary);background:var(--text-primary)}@supports (color:color-mix(in lab,red,red)){.map-point-popup .leaflet-popup-close-button:hover{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}}.map-point-tooltip-inner{background:var(--surface);min-width:180px;color:var(--text-primary);border:1px solid var(--border);padding:8px 10px;font-size:12px;box-shadow:0 8px 28px #0000002e}.map-point-tooltip-title{color:var(--text-primary);margin-bottom:6px;font-family:Syne,sans-serif;font-weight:700}.map-point-tooltip-row{border-top:0px solid var(--border);justify-content:space-between;gap:12px;padding:2px 0;line-height:1;display:flex}.map-point-tooltip-row:first-of-type{border-top:0}.map-point-tooltip-row span:first-child{color:var(--text-muted);font-size:11px}.map-point-tooltip-row--muted span:last-child{color:var(--text-secondary);font-size:12px}.archive-page-outer{width:calc(100% + 48px);max-width:none;margin-left:-24px;margin-right:-24px}@media(max-width:720px){.archive-page-outer{width:calc(100% + 32px);margin-left:-16px;margin-right:-16px}}.archive-page-header{margin-bottom:22px}.archive-layout{grid-template-columns:minmax(220px,25%) 1fr;align-items:start;gap:24px;display:grid}@media(max-width:960px){.archive-layout{grid-template-columns:1fr}}.archive-sidebar{top:calc(var(--nav-h) + 16px);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);padding:18px 16px;position:sticky;box-shadow:0 1px #0000000a}.archive-sidebar-title{color:var(--text-primary);margin:0 0 16px;font-family:Syne,sans-serif;font-size:15px;font-weight:700}.archive-filters{flex-direction:column;gap:16px;display:flex}.archive-field{flex-direction:column;gap:8px;display:flex}.data-table.archive-table th,.data-table.archive-table td{padding:6px 18px}.archive-label{color:var(--text-secondary);letter-spacing:.02em;font-size:12px;font-weight:600}.archive-hint{color:var(--text-muted);margin:0;font-size:11px;line-height:1.45}.archive-vehicle-combo{width:100%}.archive-vehicle-combo-box{width:100%;position:relative}.archive-vehicle-input{width:100%}.archive-field.archive-field--invalid .archive-vehicle-combo-box{border-radius:var(--radius-sm);outline-offset:2px;outline:2px solid #dc2626}.archive-field.archive-field--invalid .archive-vehicle-input.filter-input{border-color:#dc2626!important}.archive-vehicle-list{z-index:40;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);max-height:240px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 40px #0000002e}.archive-vehicle-item{cursor:pointer;color:var(--text-primary);border-radius:6px;padding:8px 10px;font-size:13px}.archive-vehicle-item:hover,.archive-vehicle-item:focus{background:var(--surface-2);outline:none}.archive-vehicle-item-empty{cursor:default;color:var(--text-muted);font-size:12px}.archive-vehicle-item-empty:hover{background:0 0}.archive-calendar-host{flex-direction:column;gap:8px;display:flex}.archive-calendar-host.archive-calendar-host--invalid{border-radius:var(--radius-sm);outline-offset:2px;outline:2px solid #dc2626}.archive-cal-toolbar{justify-content:space-between;align-items:center;gap:8px;display:flex}.archive-cal-nav{border:1px solid var(--border);background:var(--surface-2);width:32px;height:32px;color:var(--text-primary);cursor:pointer;border-radius:8px;place-items:center;font-size:18px;line-height:1;transition:background .15s,border-color .15s;display:grid}.archive-cal-nav:hover{background:var(--surface-1);border-color:var(--border-hover)}.archive-cal-nav:disabled{opacity:.35;cursor:not-allowed;pointer-events:none}.archive-cal-title{color:var(--text-primary);font-family:Syne,sans-serif;font-size:13px;font-weight:600}.archive-cal-weekdays{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;grid-template-columns:repeat(7,1fr);gap:2px;font-size:10px;font-weight:600;display:grid}.archive-cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.archive-cal-day{aspect-ratio:1;background:var(--surface-2);min-height:30px;color:var(--text-primary);cursor:pointer;border:1px solid #0000;border-radius:8px;font-size:12px;font-weight:500;transition:background .12s,border-color .12s,color .12s}.archive-cal-day:hover:not(.is-muted):not(.is-edge){background:var(--surface-1);border-color:var(--border-hover)}.archive-cal-day.is-in-range:not(.is-edge):hover:not(.is-muted){background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-in-range:not(.is-edge):hover:not(.is-muted){background:color-mix(in srgb,var(--accent) 52%,var(--surface-1))}}.archive-cal-day.is-in-range:not(.is-edge):hover:not(.is-muted){border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-in-range:not(.is-edge):hover:not(.is-muted){border-color:color-mix(in srgb,var(--accent) 60%,var(--border-hover))}}.archive-cal-day.is-in-range:not(.is-edge):hover:not(.is-muted){color:var(--text-primary)}.archive-cal-day.is-muted{opacity:.35;cursor:default;pointer-events:none}.archive-cal-day.is-today:not(.is-edge):not(.is-muted){box-shadow:0 0 0 2px var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-today:not(.is-edge):not(.is-muted){box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 48%,transparent)}}.archive-cal-day.is-today:not(.is-edge):not(.is-muted){font-weight:700}.archive-cal-day.is-in-range:not(.is-edge){background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-in-range:not(.is-edge){background:color-mix(in srgb,var(--accent) 42%,var(--surface-2))}}.archive-cal-day.is-in-range:not(.is-edge){border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-in-range:not(.is-edge){border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}}.archive-cal-day.is-in-range:not(.is-edge){color:var(--text-primary);font-weight:600}.archive-cal-day.is-edge{background:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-edge{border-color:color-mix(in srgb,var(--accent) 70%,#000)}}.archive-cal-day.is-edge{color:#fff;box-shadow:0 0 0 2px var(--accent),0 4px 12px var(--accent);font-weight:800}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-edge{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,var(--surface)),0 4px 12px color-mix(in srgb,var(--accent) 55%,transparent)}}.archive-cal-day.is-edge:hover:not(.is-muted){background:var(--accent);color:#fff;filter:brightness(1.08);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-cal-day.is-edge:hover:not(.is-muted){border-color:color-mix(in srgb,var(--accent) 55%,#000)}}.archive-range-display{color:var(--text-secondary);min-height:2em;font-size:12px;line-height:1.4}.archive-apply-btn{justify-content:center;align-items:center;gap:10px;width:100%;min-height:40px;margin-top:4px;display:inline-flex}.archive-apply-btn-spinner{border:2px solid #ffffff59;border-top-color:currentColor;border-radius:50%;flex-shrink:0;width:1em;height:1em;animation:.65s linear infinite archive-apply-spin;display:none}.archive-apply-btn--loading .archive-apply-btn-spinner{display:block}.archive-apply-btn--loading .archive-apply-btn-text{opacity:.92}.archive-apply-btn:disabled{cursor:not-allowed;opacity:.95}@keyframes archive-apply-spin{to{transform:rotate(360deg)}}.archive-filters--loading{pointer-events:none;opacity:.92;transition:opacity .15s}.archive-main{flex-direction:column;gap:20px;min-width:0;display:flex}.archive-player-wrap{flex-direction:column;align-items:center;gap:10px;scroll-margin-top:88px;display:flex}.archive-video{border-radius:var(--radius);border:1px solid var(--border);background:#0a0a0c;width:100%;max-width:560px;min-height:300px;max-height:min(42vh,360px);box-shadow:0 8px 32px #0003}.archive-player-caption{color:var(--text-muted);text-align:center;max-width:560px;margin:0;font-size:12px}.archive-table-wrap{overflow-x:auto}.data-table.archive-table tbody tr.archive-row-alarm td:not(.archive-col-actions){color:#f87171}html[data-theme=light] .data-table.archive-table tbody tr.archive-row-alarm td:not(.archive-col-actions){color:#b91c1c}.data-table.archive-table tbody tr.archive-row-active td{background:#3b82f6}@supports (color:color-mix(in lab,red,red)){.data-table.archive-table tbody tr.archive-row-active td{background:color-mix(in srgb,#3b82f6 22%,var(--surface-2))}}html[data-theme=light] .data-table.archive-table tbody tr.archive-row-active td{background:#e0e9fc}.archive-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 16px;padding:12px 0 4px;display:flex}.archive-pagination-info{color:var(--text-secondary);text-align:center;min-width:12rem;font-size:13px}.archive-pagination-btn:disabled{opacity:.45;cursor:not-allowed}.archive-table{font-size:13px}.archive-table-wrap .archive-period-sep{color:var(--text-muted)}.archive-col-actions{white-space:nowrap;width:1%}.archive-row-actions{align-items:center;gap:6px;display:flex}.archive-table-loading,.archive-table-empty{text-align:center;color:var(--text-muted);font-size:13px;padding:28px 16px!important}.archive-table-loading-row .archive-table-loading{border-bottom:none!important}.archive-icon-btn{border-radius:calc(var(--radius-sm) - 2px);border:1px solid var(--border);background:var(--surface-2);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.archive-icon-btn:hover{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-icon-btn:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.archive-icon-btn:hover{background:var(--surface-1)}.archive-icon-btn:focus-visible{outline:2px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.archive-icon-btn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent)}}.archive-icon-btn:focus-visible{outline-offset:2px}.archive-icon-btn-download:hover{color:var(--text-primary)}.role-matrix-wrap{margin-top:8px}.role-matrix-table{border-collapse:collapse;width:100%;margin-bottom:20px;font-size:13px}.role-matrix-table th,.role-matrix-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:7px 12px}.role-matrix-table thead th{text-align:center;background:var(--surface-2);font-weight:600}.role-matrix-th-section{width:32%;text-align:left!important}.role-matrix-row-label{text-align:left;color:var(--text-primary);font-weight:500}.role-matrix-cell{text-align:center}.role-matrix-na{color:var(--text-muted);opacity:.55}.role-matrix-legend{letter-spacing:.02em;text-transform:uppercase;font-size:11px;font-weight:700;display:inline-block}.role-matrix-legend--read{color:#22c55e}.role-matrix-legend--mid{color:#3b82f6}.role-matrix-legend--admin{color:#f87171}.role-matrix-mid-hint{color:var(--text-muted);max-width:120px;margin-left:auto;margin-right:auto;font-size:10px;line-height:1.2;display:block}.role-switch{cursor:pointer;justify-content:center;align-items:center;display:inline-flex;position:relative}.role-switch input{opacity:0;width:0;height:0;position:absolute}.role-switch-ui{background:var(--surface-3);border:1px solid var(--border);border-radius:999px;width:44px;height:24px;transition:background .15s,border-color .15s,box-shadow .15s;display:block;position:relative}.role-switch-ui:after{content:"";background:var(--text-muted);border-radius:50%;width:18px;height:18px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.role-switch input:checked+.role-switch-ui:after{transform:translate(20px)}.role-switch--read input:checked+.role-switch-ui{background:#22c55e}@supports (color:color-mix(in lab,red,red)){.role-switch--read input:checked+.role-switch-ui{background:color-mix(in srgb,#22c55e 28%,var(--surface-2))}}.role-switch--read input:checked+.role-switch-ui{border-color:#22c55e}@supports (color:color-mix(in lab,red,red)){.role-switch--read input:checked+.role-switch-ui{border-color:color-mix(in srgb,#22c55e 55%,var(--border))}}.role-switch--read input:checked+.role-switch-ui{box-shadow:0 0 0 3px #22c55e26}.role-switch--read input:checked+.role-switch-ui:after{background:#22c55e}.role-switch--mid input:checked+.role-switch-ui{background:#3b82f6}@supports (color:color-mix(in lab,red,red)){.role-switch--mid input:checked+.role-switch-ui{background:color-mix(in srgb,#3b82f6 28%,var(--surface-2))}}.role-switch--mid input:checked+.role-switch-ui{border-color:#3b82f6}@supports (color:color-mix(in lab,red,red)){.role-switch--mid input:checked+.role-switch-ui{border-color:color-mix(in srgb,#3b82f6 55%,var(--border))}}.role-switch--mid input:checked+.role-switch-ui{box-shadow:0 0 0 3px #3b82f626}.role-switch--mid input:checked+.role-switch-ui:after{background:#3b82f6}.role-switch--admin input:checked+.role-switch-ui{background:#f87171}@supports (color:color-mix(in lab,red,red)){.role-switch--admin input:checked+.role-switch-ui{background:color-mix(in srgb,#f87171 28%,var(--surface-2))}}.role-switch--admin input:checked+.role-switch-ui{border-color:#f87171}@supports (color:color-mix(in lab,red,red)){.role-switch--admin input:checked+.role-switch-ui{border-color:color-mix(in srgb,#f87171 55%,var(--border))}}.role-switch--admin input:checked+.role-switch-ui{box-shadow:0 0 0 3px #f8717126}.role-switch--admin input:checked+.role-switch-ui:after{background:#ef4444}.role-matrix-system-admin-toggle{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:fit-content;margin:16px 0 20px;padding:14px 16px}.role-system-admin-label{cursor:pointer;align-items:center;gap:10px;font-weight:600;display:inline-flex}.role-system-admin-label input{width:18px;height:18px;accent-color:var(--accent)}.role-matrix-extended{margin-top:8px}.role-matrix-extended-title{color:var(--text-primary);margin:0 0 12px;font-size:15px}@media(max-width:900px){.role-matrix-wrap{overflow-x:auto}.role-matrix-table{min-width:520px}}.roles-list-cell{color:var(--text-secondary);max-width:420px;font-size:13px;line-height:1.45}.roles-list-more{color:var(--text-muted);white-space:nowrap;font-weight:700}.roles-list-empty{color:var(--text-muted)}.roles-description-cell{white-space:pre-wrap;word-break:break-word;max-width:280px}.role-name-cell{align-items:center;gap:8px;display:inline-flex}.role-sysadmin-icon{color:var(--accent);opacity:.95;filter:drop-shadow(0 0 6px var(--accent));flex-shrink:0;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.role-sysadmin-icon{filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 35%,transparent))}}main:has(>.dispatcher-panel-outer){max-width:none;margin:0;padding-bottom:0;padding-left:0;padding-right:0}.dispatcher-panel-outer{width:100%}.dispatcher-panel-shell{width:100%;height:calc(100vh - var(--nav-h) - 0px);min-height:calc(100vh - var(--nav-h) - 0px);align-items:stretch;display:flex}.dispatcher-panel-sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:0 0 180px;width:180px;min-height:0;display:flex;overflow:hidden}.dispatcher-panel-sidebar-filters{border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:10px 8px;display:flex}.dispatcher-panel-filter-input,.dispatcher-panel-filter-select{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-2);width:100%;max-width:100%;color:var(--text-primary);border-radius:8px;padding:6px 8px;font-size:11px}.dispatcher-panel-filter-input::placeholder{color:var(--text-muted)}.dispatcher-panel-filter-select{cursor:pointer;padding-right:6px}.dispatcher-panel-filter-tracked{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:5px;margin-top:0;font-size:10px;font-weight:500;display:flex}.dispatcher-panel-filter-tracked input{width:12px;height:12px;accent-color:var(--accent,#00e5a0);cursor:pointer;flex-shrink:0;margin:0}.dispatcher-panel-filter-tracked span{line-height:1.2}.dp-vehicle--untracked .dp-vehicle-main{opacity:.78;font-style:italic}.dp-vehicle--untracked.dp-vehicle--selected .dp-vehicle-main{opacity:1}.dispatcher-panel-alarm-plate-wrap{align-items:center;gap:5px;min-width:0;display:inline-flex}.dispatcher-panel-alarm-plate-dot{flex-shrink:0}.dispatcher-panel-alarm-plate-text{min-width:0}button.dispatcher-panel-alarm-plate-btn.dispatcher-panel-alarm-plate-text{font:inherit;color:inherit;cursor:pointer;text-align:left;text-underline-offset:2px;background:0 0;border:none;margin:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}button.dispatcher-panel-alarm-plate-btn.dispatcher-panel-alarm-plate-text:hover{color:var(--accent)}.dispatcher-panel-alarm-plate--untracked .dispatcher-panel-alarm-plate-text{opacity:.78;font-style:italic}.dispatcher-panel-list{flex:1;min-height:0;padding:8px 0 16px;overflow:hidden auto}.dp-org--empty{display:none}.dp-org-header{box-sizing:border-box;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition);border:0;border-top:1px solid var(--border);background:0 0;border-radius:8px;align-items:flex-start;gap:4px;margin:0;padding:8px 6px 6px;display:flex}.dp-org:first-child .dp-org-header{border-top:0}.dp-org-header:hover{background:var(--surface-2)}.dp-org-chevron{width:12px;height:12px;color:var(--text-muted);transition:transform var(--transition);flex-shrink:0;place-items:center;margin-top:1px;display:grid}.dp-org--collapsed .dp-org-chevron{transform:rotate(-90deg)}.dp-org-title-text{letter-spacing:.04em;text-transform:uppercase;min-width:0;color:var(--text-muted);word-break:break-word;flex:1;font-size:10px;font-weight:700;line-height:1.25}.dp-org-count{font-variant-numeric:tabular-nums;color:var(--text-secondary);flex-shrink:0;padding-left:2px;font-size:10px;font-weight:700}.dp-org-vehicles{flex-direction:column;gap:2px;padding:0 6px 8px;display:flex}.dp-org--collapsed .dp-org-vehicles{display:none}.dp-vehicle{color:var(--text-primary);cursor:default;border-radius:8px;justify-content:space-between;align-items:center;gap:4px;min-width:0;padding:5px 4px 5px 6px;font-size:11px;line-height:1.2;display:flex}.dp-vehicle-main{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.dp-vehicle:hover{background:var(--surface-2)}.dp-vehicle-settings-btn{width:24px;height:24px;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s ease,background var(--transition),color var(--transition);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.dp-vehicle:hover .dp-vehicle-settings-btn,.dp-vehicle-settings-btn:focus-visible{opacity:1}.dp-vehicle-settings-btn:hover{background:var(--surface-3);color:var(--accent)}.dp-vehicle--selected{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dp-vehicle--selected{background:color-mix(in srgb,var(--accent) 14%,var(--surface-2))}}.dp-vehicle--selected{outline:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.dp-vehicle--selected{outline:1px solid color-mix(in srgb,var(--accent) 38%,transparent)}}.dp-vehicle-name[data-dp-vehicle-select]{cursor:pointer;text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.dp-vehicle-name[data-dp-vehicle-select]:hover{color:var(--accent)}.dp-vehicle--hidden{display:none!important}.dp-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.dp-status-dot--on{box-shadow:0 0 0 2px var(--accent-dim);background:#22c55e}.dp-status-dot--off{background:var(--text-muted);opacity:.65}.dp-vehicle-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dispatcher-panel-workspace{background:var(--bg);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.dispatcher-panel-workspace-grid{flex:1;grid-template-columns:minmax(0,3fr) minmax(0,1fr);align-items:stretch;gap:0;min-height:0;display:grid}.dispatcher-panel-center{border-right:1px solid var(--border);flex-direction:column;gap:0;min-width:0;min-height:0;display:flex;overflow:hidden}.dispatcher-panel-center-head{box-sizing:border-box;border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px 20px;min-height:58px;padding:9px 20px;display:flex}.dispatcher-panel-center-title{letter-spacing:-.02em;color:var(--text-primary);min-width:0;margin:0;font-family:Syne,sans-serif;font-size:22px;font-weight:700;line-height:1.2}.dp-selection-reset-btn{white-space:nowrap;flex-shrink:0;align-items:stretch;gap:0;padding:0;font-size:12px;font-weight:600;display:inline-flex;overflow:hidden}.dp-selection-reset-btn__progress{z-index:0;pointer-events:none;border-radius:inherit;background:var(--accent);width:0;position:absolute;top:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.dp-selection-reset-btn__progress{background:color-mix(in srgb,var(--accent) 26%,var(--surface-2))}}.dp-selection-reset-btn__row{z-index:1;align-items:center;gap:6px;min-height:100%;padding:6px 12px;display:inline-flex;position:relative}.dp-selection-reset-btn__x{opacity:.85;flex-shrink:0}.dp-selection-reset-btn__label{flex-shrink:0}.dp-selection-reset-btn__time{font-variant-numeric:tabular-nums;text-align:right;min-width:3.2em;color:var(--text-muted);flex-shrink:0}.dispatcher-panel-scope-wrap{flex-direction:column;gap:6px;min-width:200px;max-width:min(520px,100%);display:flex}.dispatcher-panel-scope-label{color:var(--text-secondary);font-size:11px;font-weight:600}.dispatcher-panel-scope-select{box-sizing:border-box;border:1px solid var(--border);background:var(--surface-2);width:100%;max-height:120px;color:var(--text-primary);border-radius:10px;padding:6px 8px;font-size:12px}.dispatcher-panel-scope-hint{color:var(--text-muted);margin:0;font-size:10px;line-height:1.35}.dispatcher-panel-section{flex-direction:column;flex:7;min-height:0;padding:12px 20px 14px;display:flex;overflow:hidden}.dispatcher-panel-section:nth-of-type(2){flex:3;padding-top:6px}.dispatcher-panel-center--no-journal .dispatcher-panel-section:first-of-type{flex:1 1 0;min-height:0}.dispatcher-panel-center--no-journal .dispatcher-panel-section:first-of-type .dispatcher-panel-section-body--scroll,.dispatcher-panel-center--no-journal [data-dp-alarms-mount],.dispatcher-panel-center--no-journal .dispatcher-panel-table-wrap{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.dispatcher-panel-center--no-journal .dispatcher-panel-alarms-scroll{flex:1 1 0;min-height:0;max-height:none;overflow:auto}.dispatcher-panel-section-title{color:var(--text-secondary);flex-shrink:0;margin:0 0 8px;font-size:13px;font-weight:700}.dispatcher-panel-section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.dispatcher-panel-section-head-left{align-items:center;gap:10px;min-width:0;display:inline-flex}.dispatcher-panel-section-head .dispatcher-panel-section-title{margin:0}.dp-logs-section-head{flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.dp-logs-section-head .dispatcher-panel-section-title{margin:0}.dp-logs-all-link{color:var(--accent,#00e5a0);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:500;text-decoration:none}.dp-logs-all-link:hover{text-decoration:underline}.dp-sound-btn{border:1px solid var(--border,#e2e8f0);background:var(--surface-2,#f8fafc);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.dp-sound-btn:hover{border-color:var(--accent,#00e5a0);color:var(--text-primary)}.dp-sound-modal-backdrop{z-index:2000;background:#0a0e1a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.dp-sound-modal-backdrop[hidden]{display:none!important}.dp-sound-modal{background:var(--surface-2);border:1px solid var(--border);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:380px;padding:32px 40px 36px;display:flex;position:relative;box-shadow:0 24px 64px #0006}.dp-sound-modal-close{cursor:pointer;width:28px;height:28px;color:var(--text-muted);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:flex;position:absolute;top:12px;right:12px}.dp-sound-modal-close:hover{background:var(--surface-3);color:var(--text-primary)}#dpSoundModalBtn{background:var(--accent-gradient,var(--accent,#00e5a0));box-shadow:0 0 0 0 var(--accent-glow);font-weight:600}.dp-sound-modal-icon{background:var(--accent,#00e5a0);border-radius:50%;width:52px;height:52px}@supports (color:color-mix(in lab,red,red)){.dp-sound-modal-icon{background:color-mix(in srgb,var(--accent,#00e5a0) 16%,var(--surface-2,#f1f5f9))}}.dp-sound-modal-icon{color:var(--accent,#00e5a0);justify-content:center;align-items:center;display:flex}.dp-sound-modal-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:700}.dp-sound-modal-desc{color:var(--text-muted);margin:-8px 0 0;font-size:13px;line-height:1.5}.dispatcher-panel-alarms-controls{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.dispatcher-panel-alarms-scope-switch .pill-btn{padding:3px 8px}.dispatcher-panel-alarms-pagination-block{flex-wrap:wrap;align-items:center;gap:8px;margin-left:2px;display:inline-flex}.dispatcher-panel-alarms-pagination-nav{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.dispatcher-panel-alarms-page-btn{border:1px solid var(--border);background:var(--surface);min-width:22px;height:22px;color:var(--text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0 4px;font-family:inherit;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.dispatcher-panel-alarms-page-btn--num{min-width:22px;padding:0 5px}.dispatcher-panel-alarms-page-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text-primary)}.dispatcher-panel-alarms-page-btn:disabled{opacity:.45;cursor:default}.dispatcher-panel-alarms-page-indicator{min-width:22px;height:22px;color:var(--text-muted);text-align:center;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.dispatcher-panel-alarms-page-indicator--active{border:1px solid var(--accent);background:var(--accent);border-radius:6px}@supports (color:color-mix(in lab,red,red)){.dispatcher-panel-alarms-page-indicator--active{background:color-mix(in srgb,var(--accent) 12%,var(--surface))}}.dispatcher-panel-alarms-page-indicator--active{color:var(--text-primary);font-weight:700}.dispatcher-panel-alarms-page-ellipsis{min-width:14px;color:var(--text-muted);text-align:center;font-size:11px;font-weight:600;line-height:22px}.dispatcher-panel-count-badge{color:var(--text-muted);font-variant-numeric:tabular-nums;font-weight:600}.dispatcher-panel-section-body{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.dispatcher-panel-logs-scroll{border-radius:inherit;max-height:min(42vh,360px);overflow:auto}.dispatcher-panel-section-body--logs{flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.dispatcher-panel-section-body--logs .dispatcher-panel-table-wrap{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.dispatcher-panel-section-body--logs .dispatcher-panel-logs-scroll{flex:1 1 0;min-height:0;max-height:none}.dispatcher-panel-logs-table{border-collapse:collapse;width:100%}.dispatcher-panel-logs-table thead th{z-index:2;background:var(--surface);box-shadow:0 1px 0 var(--border);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:11px;position:sticky;top:0}.dispatcher-panel-section-body--scroll{flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.dispatcher-panel-loading{color:var(--text-muted);margin:0;font-size:13px}[data-dp-alarms-mount],[data-dp-logs-mount]{position:relative}[data-dp-alarms-mount].dispatcher-panel-mount--busy:before,[data-dp-logs-mount].dispatcher-panel-mount--busy:before{content:"";z-index:8;background:var(--surface);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){[data-dp-alarms-mount].dispatcher-panel-mount--busy:before,[data-dp-logs-mount].dispatcher-panel-mount--busy:before{background:color-mix(in srgb,var(--surface) 58%,transparent)}}[data-dp-alarms-mount].dispatcher-panel-mount--busy:before,[data-dp-logs-mount].dispatcher-panel-mount--busy:before{-webkit-backdrop-filter:blur(4px);border-radius:inherit;pointer-events:none}[data-dp-alarms-mount].dispatcher-panel-mount--busy:after,[data-dp-logs-mount].dispatcher-panel-mount--busy:after{content:"";z-index:9;box-sizing:border-box;border:3px solid var(--border);width:34px;height:34px;margin:-17px 0 0 -17px;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab,red,red)){[data-dp-alarms-mount].dispatcher-panel-mount--busy:after,[data-dp-logs-mount].dispatcher-panel-mount--busy:after{border:3px solid color-mix(in srgb,var(--border) 75%,transparent)}}[data-dp-alarms-mount].dispatcher-panel-mount--busy:after,[data-dp-logs-mount].dispatcher-panel-mount--busy:after{border-top-color:var(--accent,#00e5a0);pointer-events:none;border-radius:50%;animation:.72s linear infinite dispatcher-panel-fetch-spin}@keyframes dispatcher-panel-fetch-spin{to{transform:rotate(360deg)}}.dispatcher-panel-table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:12px;overflow:auto}.dispatcher-panel-table-wrap:has(>.dispatcher-panel-alarms-scroll),.dispatcher-panel-table-wrap:has(>.dispatcher-panel-logs-scroll){overflow:hidden}.dispatcher-panel-alarms-scroll{border-radius:inherit;max-height:min(32vh,280px);overflow:auto}.dispatcher-panel-center:not(.dispatcher-panel-center--no-journal) [data-dp-alarms-mount] .dispatcher-panel-table-wrap{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.dispatcher-panel-center:not(.dispatcher-panel-center--no-journal) .dispatcher-panel-alarms-scroll{flex:1 1 0;min-height:0;max-height:none}.dispatcher-panel-alarms-table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.2}.dispatcher-panel-alarms-table thead th{z-index:2;background:var(--surface);box-shadow:0 1px 0 var(--border);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:10px;position:sticky;top:0}.dispatcher-panel-alarms-table th.dispatcher-panel-alarm-new-col,.dispatcher-panel-alarms-table td.dispatcher-panel-alarm-new-col{text-align:center;vertical-align:middle;box-sizing:border-box;width:1px;min-width:0;max-width:22px;padding:8px 4px}.dispatcher-panel-alarms-table th.dispatcher-panel-alarm-new-col{text-transform:none;letter-spacing:0}.dispatcher-panel-alarm-new-dot{background:var(--text-danger,#ef4444);width:9px;height:9px;box-shadow:0 0 0 2px var(--text-danger,#ef4444);display:inline-block}@supports (color:color-mix(in lab,red,red)){.dispatcher-panel-alarm-new-dot{box-shadow:0 0 0 2px color-mix(in srgb,var(--text-danger,#ef4444) 28%,transparent)}}.dispatcher-panel-alarm-new-dot{vertical-align:middle}.dispatcher-panel-alarm-row--resolved td{color:var(--text-muted);opacity:.68}.dispatcher-panel-empty-cell{text-align:center;color:var(--text-muted);padding:20px!important}.dispatcher-panel-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:10px;display:flex}.dispatcher-panel-pager-btn{border:1px solid var(--border);background:var(--surface-2);color:var(--text-primary);cursor:pointer;transition:background var(--transition),border-color var(--transition);border-radius:8px;padding:6px 12px;font-size:12px}.dispatcher-panel-pager-btn:hover:not(.dispatcher-panel-pager-btn--disabled){border-color:var(--border-hover);background:var(--surface-3)}.dispatcher-panel-pager-btn--disabled{opacity:.45;cursor:not-allowed}.dispatcher-panel-pager-meta{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.dispatcher-panel-right{background:var(--surface);flex-direction:column;gap:0;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden}.dispatcher-panel-right-head{box-sizing:border-box;border-bottom:1px solid var(--border);background:var(--surface);flex-direction:row;flex-shrink:0;align-items:center;gap:8px;min-height:52px;padding:8px 12px 10px;display:flex}.dispatcher-panel-map-scope-arrow{border:1px solid var(--border);background:var(--surface-2);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;transition:background .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex}.dispatcher-panel-map-scope-arrow:hover:not(:disabled):not(.dispatcher-panel-map-scope-arrow--disabled){border-color:var(--accent,#00e5a0)}@supports (color:color-mix(in lab,red,red)){.dispatcher-panel-map-scope-arrow:hover:not(:disabled):not(.dispatcher-panel-map-scope-arrow--disabled){border-color:color-mix(in srgb,var(--accent,#00e5a0) 35%,var(--border))}}.dispatcher-panel-map-scope-arrow:hover:not(:disabled):not(.dispatcher-panel-map-scope-arrow--disabled){color:var(--text-primary);background:var(--surface-3)}.dispatcher-panel-map-scope-arrow--disabled,.dispatcher-panel-map-scope-arrow:disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.dispatcher-panel-right-scope{flex:1;justify-content:center;min-width:0;display:flex}.dispatcher-panel-right-scope-btn{justify-content:space-between;align-items:center;gap:8px;width:100%;min-width:0;max-width:100%;font-size:12px;font-weight:500;display:inline-flex}.dispatcher-panel-right-scope-text{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.dispatcher-panel-right-scope-caret{opacity:.75;flex-shrink:0;font-size:10px}.dispatcher-panel-right-body{flex-direction:column;flex:1;gap:0;min-height:0;padding:12px 14px 16px;display:flex;overflow:auto}.dispatcher-panel-right-body-stack{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.dispatcher-panel-right-body-inner{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.dispatcher-panel-contact-block{flex-direction:column;flex-shrink:0;gap:4px;min-width:0;display:flex}.dispatcher-panel-contact-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.dispatcher-panel-contact-body{white-space:pre-wrap;word-break:break-word;max-height:76px;color:var(--text-primary);background:var(--surface-2);border:1px solid var(--border);box-sizing:border-box;border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.45;overflow-y:auto}.dispatcher-panel-right-body-inner .dispatcher-panel-map{height:min(36vh,300px);min-height:220px}.dispatcher-panel-right-lock{z-index:101;background:var(--bg,#0a0d12);position:absolute}@supports (color:color-mix(in lab,red,red)){.dispatcher-panel-right-lock{background:color-mix(in srgb,var(--bg,#0a0d12) 76%,transparent)}}.dispatcher-panel-right-lock{pointer-events:auto;inset:-12% -5%}.dispatcher-panel-right-lock[hidden]{display:none!important}.dp-vehicle-settings-dialog-body{padding:12px 16px 16px}.dp-vehicle-settings-dialog-body .form-group{margin-bottom:14px}.dp-vehicle-settings-dialog-body .form-group:last-child{margin-bottom:0}.dp-vehicle-settings-footer{border-top:1px solid var(--border,#e2e8f0);flex-wrap:wrap;align-items:center;gap:10px;display:flex;margin-top:4px!important;padding-top:8px!important}.dp-vehicle-settings-read-value,.dp-vehicle-settings-read-contact{color:var(--text-primary);margin:0;font-size:13px}.dp-vehicle-settings-read-contact{white-space:pre-wrap;word-break:break-word}.dp-vehicle-settings-save-status{color:var(--text-muted);font-size:12px}.dispatcher-panel-map-wrap{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.dispatcher-panel-map-label,.dispatcher-panel-media-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-top:10px;font-size:11px;font-weight:700}.dispatcher-panel-media-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-top:5px;display:flex}.dispatcher-panel-media-head .dispatcher-panel-media-label{flex:1;min-width:0;margin-top:0}.dispatcher-panel-media-head-arrows{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.dispatcher-panel-map-scope-arrow--media{width:30px;height:30px}.dispatcher-panel-map{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;width:100%;height:min(42vh,360px);min-height:280px;overflow:hidden}.dispatcher-panel-map .leaflet-container{font-family:inherit}.leaflet-pane{z-index:100!important}.leaflet-touch .leaflet-bar a{width:20px!important;height:20px!important;line-height:20px!important}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:16px!important}.leaflet-top,.leaflet-bottom{z-index:100!important}.dispatcher-panel-media{flex-direction:column;flex:1;gap:6px;min-height:100px;display:flex}.dispatcher-panel-media-placeholder{min-height:100px}@media(max-width:960px){.dispatcher-panel-workspace-grid{grid-template-columns:1fr}.dispatcher-panel-center{border-right:none;border-bottom:1px solid var(--border)}.dispatcher-panel-right{flex-flow:column}.dispatcher-panel-right-body{flex-direction:column}.dispatcher-panel-map-wrap,.dispatcher-panel-media{flex:auto;min-width:0}}.dp-sidebar-toggle{display:none}@media(max-width:768px){.dp-sidebar-toggle{z-index:310;background:var(--surface-1,#fff);border:1px solid var(--border,#e2e8f0);color:var(--text-primary);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:8px 14px 8px 10px;font-size:13px;font-weight:500;line-height:1;display:inline-flex;position:fixed;bottom:16px;left:16px;box-shadow:0 2px 12px #0000001f}.dp-sidebar-toggle:hover{background:var(--surface-2,#f1f5f9)}.dp-sidebar-toggle[aria-expanded=true]{background:var(--accent,#00e5a0);color:#000;border-color:var(--accent,#00e5a0)}.dispatcher-panel-sidebar{top:var(--nav-h,60px);z-index:300;flex:0 0 240px;width:240px;transition:transform .22s;position:fixed;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:4px 0 20px #0000001f}.dispatcher-panel-sidebar.dp-sidebar--open{transform:translate(0)}.dp-sidebar-backdrop{z-index:299;background:#00000059;display:none;position:fixed;inset:0}.dp-sidebar-backdrop.dp-sidebar--open{display:block}.dispatcher-panel-shell{height:auto;min-height:calc(100dvh - var(--nav-h,60px));overflow:visible}.dispatcher-panel-workspace{padding-bottom:64px;overflow:visible}.dispatcher-panel-workspace-grid{flex-direction:column;height:auto;display:flex;overflow:visible}.dispatcher-panel-center{overflow:visible}.dispatcher-panel-alarms-scroll{min-height:160px;max-height:55vh;overflow-y:auto}.dispatcher-panel-center--no-journal .dispatcher-panel-alarms-scroll{flex:none;min-height:160px;max-height:55vh}.dispatcher-panel-center--no-journal [data-dp-alarms-mount],.dispatcher-panel-center--no-journal .dispatcher-panel-table-wrap,.dispatcher-panel-center--no-journal .dispatcher-panel-section:first-of-type,.dispatcher-panel-center--no-journal .dispatcher-panel-section:first-of-type .dispatcher-panel-section-body--scroll{flex:none;display:block;overflow:visible}}#__vconsole{display:none!important}.video-toorbar{bottom:48px!important}.alarm-card-footer{background:var(--control-background);border-radius:0 0 12px 12px;width:100%;position:absolute;bottom:0;left:0}.alarm-card-footer .button{border-radius:0 0 10px}.alarm-card-footer-actions__label{border-radius:0}#cmsv6flash,#cmsv6flash>div{background:0 0!important}#cmsv6flash>div{gap:3px;padding:2px}#cmsv6flash>div>div{border-radius:12px;border-width:3px!important}#cmsv6flash>div>div>div{border:1px solid #ddd}#cmsv6flash[data-num="6"]>div>div{min-height:270px}#cmsv6flash[data-num="6"]>div>div:first-child{min-height:540px}#cmsv6flash[data-num="9"]>div>div{min-height:290px}#cmsv6flash[data-num="16"]>div>div{min-height:250px}#cmsv6flash[data-num="6"]>div>div:nth-child(3){margin-top:1px}#cmsv6flash>div>div>div:first-child{overflow:hidden;border-radius:12px!important}#alarm-map-container>div{background:#fff;border-radius:22px;padding:10px}.leaflet-control-attribution{display:none}.dark-theme #alarm-map-container>div{background:#ffffff1a}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
