@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/inter-latin-300-normal-BVlfKGgI.woff2) format("woff2"),url(/assets/inter-latin-300-normal-i8F0SvXL.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/inter-latin-800-normal-BYj_oED-.woff2) format("woff2"),url(/assets/inter-latin-800-normal-D1mf63XC.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/inter-latin-900-normal-D4nM5aha.woff2) format("woff2"),url(/assets/inter-latin-900-normal-EUCDUbiG.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2) format("woff2"),url(/assets/space-grotesk-latin-400-normal-BnQMeOim.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2) format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2) format("woff2"),url(/assets/space-grotesk-latin-600-normal-BflQw4A9.woff) format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2) format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/barlow-condensed-latin-300-normal-Cnd1AN-G.woff2) format("woff2"),url(/assets/barlow-condensed-latin-300-normal-C2BQdy7F.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-condensed-latin-400-normal-Dc2u_eUW.woff2) format("woff2"),url(/assets/barlow-condensed-latin-400-normal-BXL2z6Kg.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-500-normal-BgYH2mbd.woff2) format("woff2"),url(/assets/barlow-condensed-latin-500-normal-HIEiP5Ov.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2) format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:200;src:url(/assets/oswald-latin-200-normal-36LDsJsv.woff2) format("woff2"),url(/assets/oswald-latin-200-normal-BZgFm0UA.woff) format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-latin-300-normal-Cl0rPaJv.woff2) format("woff2"),url(/assets/oswald-latin-300-normal-DLdBc7-y.woff) format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-latin-400-normal-BAFo8sP8.woff2) format("woff2"),url(/assets/oswald-latin-400-normal-D1wpMXgf.woff) format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-latin-500-normal-B-eyT0Dw.woff2) format("woff2"),url(/assets/oswald-latin-500-normal-DM85Di4w.woff) format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-latin-600-normal-plFmSr5g.woff2) format("woff2"),url(/assets/oswald-latin-600-normal-DRToI_2E.woff) format("woff")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/oswald-latin-700-normal-vy6hmKSr.woff2) format("woff2"),url(/assets/oswald-latin-700-normal-UmC9Ev9x.woff) format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/nunito-sans-latin-300-normal-CsNJZAKg.woff2) format("woff2"),url(/assets/nunito-sans-latin-300-normal-BiOXx06f.woff) format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-sans-latin-400-normal-AkRraKH2.woff2) format("woff2"),url(/assets/nunito-sans-latin-400-normal-DY9yCUyQ.woff) format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/nunito-sans-latin-500-normal-DlmaWqTx.woff2) format("woff2"),url(/assets/nunito-sans-latin-500-normal-BkymD7ni.woff) format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-sans-latin-600-normal-BtVRvDNj.woff2) format("woff2"),url(/assets/nunito-sans-latin-600-normal-DLks-Kj1.woff) format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-sans-latin-700-normal-CICRJDmU.woff2) format("woff2"),url(/assets/nunito-sans-latin-700-normal-CLVG92B9.woff) format("woff")}@font-face{font-family:Nunito Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-sans-latin-800-normal-MgCk9Q3Y.woff2) format("woff2"),url(/assets/nunito-sans-latin-800-normal-DOf_K5Iw.woff) format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/sora-latin-300-normal-cp3Vmaam.woff2) format("woff2"),url(/assets/sora-latin-300-normal-CYw8U7ew.woff) format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sora-latin-400-normal-CRt88UEn.woff2) format("woff2"),url(/assets/sora-latin-400-normal-OW7qkl5a.woff) format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-500-normal-01eiPEn0.woff2) format("woff2"),url(/assets/sora-latin-500-normal-w58xtEt9.woff) format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2) format("woff2"),url(/assets/sora-latin-600-normal-1_7fyUAY.woff) format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-700-normal-9waGdLWo.woff2) format("woff2"),url(/assets/sora-latin-700-normal-BKPfQAnC.woff) format("woff")}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sora-latin-800-normal-2tKLL3qT.woff2) format("woff2"),url(/assets/sora-latin-800-normal-c3Huklug.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/fira-sans-latin-300-normal-B2LrTgQS.woff2) format("woff2"),url(/assets/fira-sans-latin-300-normal-Dwkm-oZ7.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-latin-400-normal-a0AnQzuD.woff2) format("woff2"),url(/assets/fira-sans-latin-400-normal-66xCkunx.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-latin-500-normal-Bvbxc8ch.woff2) format("woff2"),url(/assets/fira-sans-latin-500-normal-Bkfzcwmr.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-latin-600-normal-CXKlxLG9.woff2) format("woff2"),url(/assets/fira-sans-latin-600-normal-DtSgd811.woff) format("woff")}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-latin-700-normal-CRhwpWTq.woff2) format("woff2"),url(/assets/fira-sans-latin-700-normal-DgqLm3Fi.woff) format("woff")}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/roboto-mono-latin-400-normal-GekRknry.woff2) format("woff2"),url(/assets/roboto-mono-latin-400-normal-DBZPkcnn.woff) format("woff")}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-mono-latin-500-normal-pxIOXZmA.woff2) format("woff2"),url(/assets/roboto-mono-latin-500-normal-D6j6AMzd.woff) format("woff")}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/roboto-mono-latin-700-normal-foxDnrFi.woff2) format("woff2"),url(/assets/roboto-mono-latin-700-normal-CHYrj1DZ.woff) format("woff")}@font-face{font-family:Inconsolata;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inconsolata-latin-400-normal-DTZQ6lD6.woff2) format("woff2"),url(/assets/inconsolata-latin-400-normal-HYADljCo.woff) format("woff")}@font-face{font-family:Inconsolata;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inconsolata-latin-500-normal-DSRic-1t.woff2) format("woff2"),url(/assets/inconsolata-latin-500-normal-DgSXXU4V.woff) format("woff")}@font-face{font-family:Inconsolata;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inconsolata-latin-600-normal-BRgOdkP-.woff2) format("woff2"),url(/assets/inconsolata-latin-600-normal-DAg8evMl.woff) format("woff")}@font-face{font-family:Inconsolata;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inconsolata-latin-700-normal-ByjKuJjN.woff2) format("woff2"),url(/assets/inconsolata-latin-700-normal-DzgUY3Rl.woff) format("woff")}/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking: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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-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-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-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-900:oklch(37.9% .146 265.522);--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-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-2xl:42rem;--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 ;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--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%;-moz-tab-size:4;-o-tab-size:4;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}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.top-1\/2{top:50%}.right-0{right:calc(var(--spacing)*0)}.bottom-0{bottom:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.z-40{z-index:40}.z-50{z-index:50}.z-\[70\]{z-index:70}.z-\[75\]{z-index:75}.z-\[80\]{z-index:80}.z-\[85\]{z-index:85}.z-\[90\]{z-index:90}.z-\[95\]{z-index:95}.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-6{margin-inline:calc(var(--spacing)*-6)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.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)}.block{display:block}.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-square{aspect-ratio:1}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-80{max-height:calc(var(--spacing)*80)}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-9{min-height:calc(var(--spacing)*9)}.min-h-10{min-height:calc(var(--spacing)*10)}.min-h-11{min-height:calc(var(--spacing)*11)}.min-h-12{min-height:calc(var(--spacing)*12)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-20{min-height:calc(var(--spacing)*20)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-11\/12{width:91.6667%}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-7{min-width:calc(var(--spacing)*7)}.min-w-\[220px\]{min-width:220px}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;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,)}.animate-bounce{animation:var(--animate-bounce)}.animate-pulse{animation:var(--animate-pulse)}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.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-2xl{border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-blue-500{border-color:var(--color-blue-500)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-50\/60{background-color:#eff6ff99}@supports (color:color-mix(in lab,red,red)){.bg-blue-50\/60{background-color:color-mix(in oklab,var(--color-blue-50)60%,transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-600\/10{background-color:#155dfc1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-600\/10{background-color:color-mix(in oklab,var(--color-blue-600)10%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-red-600{background-color:var(--color-red-600)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-200{background-color:var(--color-slate-200)}.bg-slate-950\/80{background-color:#020618cc}@supports (color:color-mix(in lab,red,red)){.bg-slate-950\/80{background-color:color-mix(in oklab,var(--color-slate-950)80%,transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/70{background-color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.bg-white\/70{background-color:color-mix(in oklab,var(--color-white)70%,transparent)}}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-red-500{--tw-gradient-from:var(--color-red-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-slate-400{--tw-gradient-from:var(--color-slate-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-green-500{--tw-gradient-via:var(--color-green-500);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-blue-500{--tw-gradient-to:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-600{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.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-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-2{padding-right:calc(var(--spacing)*2)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pl-2{padding-left:calc(var(--spacing)*2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--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-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.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-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px 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-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-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + 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-blue-500{--tw-ring-color:var(--color-blue-500)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,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-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.group-open\:rotate-90:is(:where(.group):is([open],:popover-open,:open) *){rotate:90deg}@media (hover:hover){.group-hover\:text-blue-600:is(:where(.group):hover *){color:var(--color-blue-600)}.hover\:border-slate-300:hover{border-color:var(--color-slate-300)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-green-700:hover{background-color:var(--color-green-700)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-200:hover{background-color:var(--color-slate-200)}.hover\:bg-slate-300:hover{background-color:var(--color-slate-300)}.hover\:text-slate-900:hover{color:var(--color-slate-900)}}@media (min-width:40rem){.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:p-4{padding:calc(var(--spacing)*4)}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:mb-4{margin-bottom:calc(var(--spacing)*4)}.md\:h-6{height:calc(var(--spacing)*6)}.md\:h-12{height:calc(var(--spacing)*12)}.md\:h-14{height:calc(var(--spacing)*14)}.md\:min-h-11{min-height:calc(var(--spacing)*11)}.md\:min-h-12{min-height:calc(var(--spacing)*12)}.md\:min-h-14{min-height:calc(var(--spacing)*14)}.md\:min-h-20{min-height:calc(var(--spacing)*20)}.md\:min-h-24{min-height:calc(var(--spacing)*24)}.md\:w-6{width:calc(var(--spacing)*6)}.md\:w-12{width:calc(var(--spacing)*12)}.md\:w-24{width:calc(var(--spacing)*24)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:gap-3{gap:calc(var(--spacing)*3)}.md\:gap-4{gap:calc(var(--spacing)*4)}:where(.md\:space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.md\:space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.md\:p-3{padding:calc(var(--spacing)*3)}.md\:p-4{padding:calc(var(--spacing)*4)}.md\:p-5{padding:calc(var(--spacing)*5)}.md\:px-5{padding-inline:calc(var(--spacing)*5)}.md\:px-6{padding-inline:calc(var(--spacing)*6)}.md\:py-3{padding-block:calc(var(--spacing)*3)}.md\:py-4{padding-block:calc(var(--spacing)*4)}.md\:py-5{padding-block:calc(var(--spacing)*5)}.md\:pt-4{padding-top:calc(var(--spacing)*4)}.md\:pb-5{padding-bottom:calc(var(--spacing)*5)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (prefers-color-scheme:dark){.dark\:border-slate-600{border-color:var(--color-slate-600)}.dark\:border-slate-700{border-color:var(--color-slate-700)}.dark\:bg-blue-900{background-color:var(--color-blue-900)}.dark\:bg-blue-900\/20{background-color:#1c398e33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/20{background-color:color-mix(in oklab,var(--color-blue-900)20%,transparent)}}.dark\:bg-blue-900\/30{background-color:#1c398e4d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/30{background-color:color-mix(in oklab,var(--color-blue-900)30%,transparent)}}.dark\:bg-blue-900\/40{background-color:#1c398e66}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-900\/40{background-color:color-mix(in oklab,var(--color-blue-900)40%,transparent)}}.dark\:bg-slate-700{background-color:var(--color-slate-700)}.dark\:bg-slate-800{background-color:var(--color-slate-800)}.dark\:bg-slate-800\/50{background-color:#1d293d80}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-800\/50{background-color:color-mix(in oklab,var(--color-slate-800)50%,transparent)}}.dark\:bg-slate-800\/60{background-color:#1d293d99}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-800\/60{background-color:color-mix(in oklab,var(--color-slate-800)60%,transparent)}}.dark\:bg-slate-900{background-color:var(--color-slate-900)}.dark\:bg-slate-900\/40{background-color:#0f172b66}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-900\/40{background-color:color-mix(in oklab,var(--color-slate-900)40%,transparent)}}.dark\:bg-slate-950{background-color:var(--color-slate-950)}.dark\:text-blue-200{color:var(--color-blue-200)}.dark\:text-blue-300{color:var(--color-blue-300)}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-slate-200{color:var(--color-slate-200)}.dark\:text-slate-300{color:var(--color-slate-300)}.dark\:text-slate-400{color:var(--color-slate-400)}.dark\:text-slate-500{color:var(--color-slate-500)}.dark\:text-white{color:var(--color-white)}@media (hover:hover){.dark\:group-hover\:text-blue-400:is(:where(.group):hover *){color:var(--color-blue-400)}.dark\:hover\:border-slate-600:hover{border-color:var(--color-slate-600)}.dark\:hover\:bg-slate-600:hover{background-color:var(--color-slate-600)}.dark\:hover\:bg-slate-700:hover{background-color:var(--color-slate-700)}.dark\:hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}}}}:root{--bg:#0b0f14;--panel:#121720;--panel-2:#161c26;--card:#151b24;--text:#f5f7fb;--muted:#9aa4b2;--border:#ffffff14;--accent:#64b6ff;--accent-2:#f4b860;--accent-3:#7be3c5;--danger:#f06a6a;--shadow:0 18px 40px #0006;--radius-lg:18px;--radius-md:12px;--radius-sm:10px;--status-needs-trailer:#f97316;--status-not-arrived:#94a3b8;--status-has-eta:#f59e0b;--status-load-if-time:#facc15;--status-ready:#22c55e;--status-loaded:#38bdf8;--status-shorted:#ef4444;--status-needs-trailer-rgb:249,115,22;--status-not-arrived-rgb:148,163,184;--status-has-eta-rgb:245,158,11;--status-load-if-time-rgb:250,204,21;--status-ready-rgb:34,197,94;--status-loaded-rgb:56,189,248;--status-shorted-rgb:239,68,68;--status-opacity:.2;--status-needs-trailer-opacity:.2;--status-not-arrived-opacity:.2;--status-has-eta-opacity:.2;--status-load-if-time-opacity:.2;--status-ready-opacity:.2;--status-loaded-opacity:.2;--status-shorted-opacity:.2;--imo-rgb:251,146,60;--imo-opacity:.22;--reefer-rgb:56,189,248;--reefer-opacity:.22;--color-text-primary:#f5f7fb;--color-text-secondary:#e0e4eb;--color-text-tertiary:#c8cbd5;--color-bg-primary:#121720;--color-bg-secondary:#161c26;--color-bg-tertiary:#1a212b;--color-border:#ffffff14;--color-border-hover:#fff3;--color-primary:#64b6ff;--color-primary-light:#64b6ff26;--color-warning:#f4b860;--color-warning-bg:#f4b86026;--color-success:#22c55e;--color-danger:#f06a6a}*{box-sizing:border-box}body{color:var(--text);background:radial-gradient(1200px 700px at 10% -10%,#1a2434,#0b0f14 60%),radial-gradient(1000px 600px at 90% -20%,#112031,#0b0f14 60%);min-height:100vh;margin:0;font-family:IBM Plex Sans,sans-serif}[role=dialog],.radix-dialog-content,[data-radix-dialog-content]{z-index:61;color:var(--text)!important}[data-radix-dialog-overlay],.radix-dialog-overlay{z-index:60;position:fixed;top:0;right:0;bottom:0;left:0}[role=dialog] *,.radix-dialog-content *,[data-radix-dialog-content] *,[role=dialog] h1,[role=dialog] h2,[role=dialog] h3,[role=dialog] h4,[role=dialog] h5,[role=dialog] h6,[role=dialog] p,[role=dialog] span,[role=dialog] button,[role=dialog] label,[role=dialog] a,.quick-customize,.quick-customize *,.colors-editor,.colors-editor *,.animations-editor,.animations-editor *,.accessibility-panel,.accessibility-panel *,.effects-editor,.effects-editor *{color:var(--text)!important}#root{min-height:100vh}.app{max-width:1200px;margin:0 auto;padding:24px 18px 140px}.app.app-full{max-width:100%;margin:0;padding:24px 24px 140px}.topbar{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.topbar-left{align-items:center;gap:14px;display:flex}.topbar-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.topbar-action-btn{white-space:nowrap}.menu-button{border:1px solid var(--border);width:40px;height:40px;color:var(--text);cursor:pointer;background:#ffffff0a;border-radius:12px;font-size:18px}.menu-button:hover{border-color:#fff3}.menu-fab{border:1px solid var(--border);width:44px;height:44px;color:var(--text);cursor:pointer;box-shadow:var(--shadow);opacity:1;pointer-events:auto;z-index:25;background:#0c0e14e0;border-radius:14px;font-size:20px;transition:opacity .2s,transform .2s;position:fixed;top:18px;left:18px;transform:translateY(0)}.menu-fab.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.menu-fab:hover{border-color:#ffffff40}.menu-actions-row{gap:10px;display:flex}.app-update-banner{z-index:90;border:1px solid var(--border);box-shadow:var(--shadow);background:#121720f5;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.imo-sticker-modal{width:min(760px,100vw - 24px)}.imo-sticker-actions{flex-wrap:wrap;gap:10px;display:flex}.imo-sticker-actions .btn{min-width:130px;min-height:50px;padding:12px 20px;font-size:16px;font-weight:700;line-height:1.1}.imo-sticker-class-editor{gap:12px;display:grid}.imo-sticker-class-editor .btn.ghost.small{min-height:46px;padding:10px 14px;font-size:14px;font-weight:600}.imo-class-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.imo-class-chip{border:1px solid var(--border);color:var(--text);text-align:center;cursor:pointer;background:#ffffff0a;border-radius:10px;padding:8px 10px}.imo-class-chip.active{background:#64b6ff29;border-color:#64b6ffb3}.imo-selected-list{gap:8px;display:grid}.imo-selected-row{border:1px solid var(--border);background:#ffffff05;border-radius:10px;grid-template-columns:minmax(0,1fr) 90px auto;align-items:center;gap:8px;padding:8px;display:grid}.imo-selected-row input{border:1px solid var(--border);color:var(--text);background:#ffffff0a;border-radius:6px;padding:6px 8px;font-size:13px}@media (max-width:640px){.imo-sticker-actions .btn{flex:calc(50% - 5px);min-width:0;min-height:54px;padding:14px 16px;font-size:17px}.imo-sticker-class-editor .btn.ghost.small{width:100%;min-height:50px;font-size:15px}}.menu-actions-row .btn{flex:1}.menu-section{background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;flex-direction:column;gap:8px;padding:10px;display:flex}.menu-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid #ffffff14;padding-bottom:4px;font-size:11px;font-weight:700}.menu-toggle-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.menu-toggle-label{color:var(--text);flex:1;font-size:12px}.side-menu-divider{background:#ffffff14;height:1px;margin:8px 0}.brand-title{margin:0;font-family:Space Grotesk,sans-serif;font-size:20px;font-weight:600}.brand-sub{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-size:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bulk-actions-toolbar{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.bulk-footer .bulk-actions-toolbar{background:0 0;border:none;margin:0;padding:0}.bulk-footer .bulk-actions-controls{align-items:center}.bulk-actions-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.bulk-actions-meta{color:var(--muted);align-items:baseline;gap:6px;font-size:12px;display:flex}.bulk-actions-count{color:var(--text);font-weight:600}.bulk-actions-total{color:var(--muted);font-size:11px}.bulk-action-field{min-width:180px}.bulk-progress{color:var(--muted);font-size:11px}.bulk-preview{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel-2);padding:10px}.bulk-preview-header{color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:12px;display:flex}.bulk-preview ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.bulk-preview li{color:var(--text);align-items:center;gap:8px;font-size:12px;display:flex}.bulk-preview-unit{font-weight:600}.bulk-preview-ref,.bulk-preview-type{color:var(--muted)}.bulk-preview-more{color:var(--muted);margin-top:8px;font-size:11px}.field{gap:6px;font-size:12px;display:grid}.field label{color:var(--muted)}select,input,textarea{background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:8px 10px;font-family:inherit;font-size:13px}input::-moz-placeholder{color:var(--muted);opacity:1}input::placeholder{color:var(--muted);opacity:1}textarea{resize:vertical}button{font-family:inherit}.btn{border:1px solid var(--border);cursor:pointer;color:var(--text);background:0 0;border-radius:999px;padding:8px 14px;font-size:12px}.btn.small{padding:6px 10px;font-size:11px}.btn.primary{color:#dbeafe;background:linear-gradient(135deg,#64b6ff59,#64b6ff1a);border-color:#64b6ff73}.btn.secondary{color:#dcfce7;background:linear-gradient(135deg,#7ce3c54d,#7ce3c51a);border-color:#7ce3c580}.btn.danger{color:#fecaca;background:linear-gradient(135deg,#ff64644d,#ff64641a);border-color:#ff646480}.btn.ghost{color:var(--muted)}.btn.ghost.active-imo,.btn.ghost[aria-pressed=true].active-imo{border-color:rgba(var(--imo-rgb),.5);color:rgb(var(--imo-rgb))}.btn.ghost.active-reefer,.btn.ghost[aria-pressed=true].active-reefer{border-color:rgba(var(--reefer-rgb),.5);color:rgb(var(--reefer-rgb))}.badge{border:1px solid var(--border);color:var(--muted);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:11px;display:inline-flex}.badge.offline{color:var(--danger);border-color:#f06a6a66}.status-dot{background:#4ade80;border-radius:50%;width:8px;height:8px}.badge.offline .status-dot{background:var(--danger)}.user-pill{background:#ffffff14;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:600}.content{margin-top:20px;padding-bottom:160px}.side-menu-overlay{z-index:40;background:#0304088c;position:fixed;top:0;right:0;bottom:0;left:0}.side-menu{z-index:50;pointer-events:none;width:min(320px,90vw);height:100vh;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-110%)}.side-menu.open{pointer-events:auto;transform:translate(0)}.side-menu-panel{border-right:1px solid var(--border);background:#0c0e14fa;flex-direction:column;gap:16px;height:100%;padding:18px;display:flex;overflow-y:auto}.side-menu-header{justify-content:space-between;align-items:center;display:flex}.side-menu-title{font-size:16px;font-weight:700}.side-menu-section{flex-direction:column;gap:10px;display:flex}.menu-counts{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;padding:12px}.menu-count{justify-content:space-between;align-items:center;gap:12px;display:flex}.menu-count-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.menu-count-value{font-size:18px;font-weight:700}.menu-count-decks{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.deck-pill{background:#ffffff14;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:600}.side-menu-subtitle{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.menu-field{flex-direction:column;gap:6px;display:flex}.controls{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.admin-panel{border-radius:var(--radius-lg);background:linear-gradient(135deg,#7ce3c526,#121820e6);border:1px solid #7ce3c54d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding:14px 16px;display:flex}.admin-title{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:600}.admin-sub{color:var(--muted);font-size:12px}.admin-actions{flex-wrap:wrap;gap:8px;display:flex}.search{min-width:180px}.sticky-footer{left:50%;bottom:calc(12px + var(--keyboard-offset,0px));z-index:10;width:min(1120px,100% - 24px);transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%)}.sticky-footer.hidden{opacity:0;pointer-events:none;transform:translate(-50%)translateY(12px)}.sticky-footer .footer-controls{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f1116bf;border:1px solid #ffffff1a;border-radius:16px;grid-template-columns:1fr;gap:8px;padding:10px 12px;display:grid;box-shadow:0 16px 40px #0006}.footer-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));align-items:stretch;gap:8px;display:grid}.footer-row.main{grid-template-columns:1fr auto;overflow-x:visible}.footer-row.main.search-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;-moz-column-gap:6px;column-gap:6px;display:grid}.footer-row.main.search-row .field{min-width:0}.footer-row .field{flex:180px}.footer-row .field.grow{flex:2 260px}.footer-row.main .field{min-width:0}.sticky-footer .field{gap:4px}.sticky-footer label{font-size:10px}.sticky-footer input,.sticky-footer select{border-radius:8px;min-height:36px;padding:8px 10px;font-size:13px}.sticky-footer .btn.small{white-space:nowrap;min-height:36px;padding:8px 14px;font-size:13px;font-weight:500}.sticky-footer .filter-group{display:contents}.sticky-footer .filter-group .btn{width:100%}.filter-group{display:contents}.filter-group .btn{width:100%}.unit-list{flex-direction:column;gap:7px;margin-top:20px;display:flex}.unit-group-title{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-top:18px;font-size:11px}.admin-loaded-groups{gap:12px;margin-top:24px;display:grid}.admin-loaded-groups[data-empty=true]{visibility:hidden;min-height:163px}.unit-group.collapsed{border:1px solid var(--border);border-radius:var(--radius-lg);background:#ffffff05;padding:10px 14px}.unit-group.collapsed summary{cursor:pointer;color:var(--text);justify-content:space-between;align-items:center;font-size:12px;font-weight:600;list-style:none;display:flex}.unit-group.collapsed summary::-webkit-details-marker{display:none}.unit-group-count{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11px}.unit-group-empty{color:var(--muted);padding:10px 0 0;font-size:12px}.unit-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:left;color:inherit;padding:6px 0 4px 22px;transition:transform .2s,border-color .2s;position:relative;box-shadow:0 12px 30px #00000059}.unit-card.is-selected{border-color:#3b82f6e6;box-shadow:0 0 0 2px #3b82f659,0 12px 30px #00000059}.unit-selection{z-index:3;position:absolute;top:6px;left:6px}.unit-selection input{accent-color:#3b82f6;cursor:pointer;width:16px;height:16px}.dfds-note-dot{background:#f59e0b;border-radius:999px;width:8px;height:8px;animation:1.2s ease-in-out infinite blink-soft;position:absolute;bottom:8px;right:8px;box-shadow:0 0 0 2px #0000008c,0 0 10px #f59e0ba6}.unit-card.density-compact{padding:1px 0 1px 18px}.unit-card.density-roomy{padding:10px 0 8px 26px}.unit-card.density-compact .unit-row{gap:10px}.unit-card.density-roomy .unit-row{gap:18px}.unit-card.density-compact .unit-left{gap:0}.unit-card.density-roomy .unit-left{gap:4px}.unit-card.density-compact .unit-badges{gap:2px;margin-bottom:-1px}.unit-card.density-roomy .unit-badges{gap:6px}.unit-card.density-compact .unit-no{font-size:16px;line-height:1}.unit-card.density-roomy .unit-no{font-size:20px}.unit-card.density-compact .unit-sub{font-size:12px}.unit-card.density-roomy .unit-sub{font-size:14px}.unit-card.density-compact .unit-meta{gap:6px;margin-top:0}.unit-card.density-roomy .unit-meta{gap:12px;margin-top:6px}.unit-card.density-compact .unit-note{margin-top:1px}.unit-card.density-compact .unit-sub.carrier-block{margin-top:0}.unit-card.density-compact .unit-no-row{margin-bottom:-1px}.unit-card.density-compact .unit-stack{gap:1px;margin-top:0}.unit-card.density-compact .stack-row{gap:4px;padding:0 6px}.unit-card.density-roomy .unit-note{margin-top:6px}.unit-card.density-compact .status-pill{padding:2px 8px;font-size:10px}.unit-card.density-roomy .status-pill{padding:4px 12px;font-size:12px}.unit-card:hover{border-color:#64b6ff66;transform:translateY(-1px)}.unit-card.imo{border-color:rgba(var(--imo-rgb),.8);background:linear-gradient(135deg,rgba(var(--imo-rgb),var(--imo-card-opacity)),#12141afa);box-shadow:0 12px 28px rgba(var(--imo-rgb),.3)}.unit-card.reefer{border-color:rgba(var(--reefer-rgb),.85);background:linear-gradient(135deg,rgba(var(--reefer-rgb),var(--reefer-card-opacity)),#12141afa);box-shadow:0 12px 28px rgba(var(--reefer-rgb),.3)}.unit-card.imo.reefer{border-color:rgba(var(--imo-rgb),.9);background:linear-gradient(135deg,rgba(var(--imo-rgb),calc(var(--imo-card-opacity) + .02)),rgba(var(--reefer-rgb),calc(var(--reefer-card-opacity) - .04)),#12141afa);box-shadow:0 12px 30px rgba(var(--reefer-rgb),.3)}.unit-card.status-needs_trailer:not(.imo):not(.reefer){background:linear-gradient(135deg,rgba(var(--status-needs-trailer-card-bg-rgb),var(--status-needs-trailer-card-opacity)),#12141afa);border-color:rgba(var(--status-needs-trailer-rgb),.3);color:var(--status-needs-trailer-text)}.unit-card.status-not_arrived:not(.imo):not(.reefer){background:linear-gradient(135deg,rgba(var(--status-not-arrived-card-bg-rgb),var(--status-not-arrived-card-opacity)),#12141afa);border-color:rgba(var(--status-not-arrived-rgb),.3);color:var(--status-not-arrived-text)}.unit-card.status-has_eta:not(.imo):not(.reefer){background:linear-gradient(135deg,rgba(var(--status-has-eta-card-bg-rgb),var(--status-has-eta-card-opacity)),#12141afa);border-color:rgba(var(--status-has-eta-rgb),.3);color:var(--status-has-eta-text)}.unit-card.status-load_if_time:not(.imo):not(.reefer){background:linear-gradient(135deg,rgba(var(--status-load-if-time-card-bg-rgb),var(--status-load-if-time-card-opacity)),#12141afa);border-color:rgba(var(--status-load-if-time-rgb),.3);color:var(--status-load-if-time-text)}.unit-card.status-ready:not(.imo):not(.reefer){background:linear-gradient(135deg,rgba(var(--status-ready-card-bg-rgb),var(--status-ready-card-opacity)),#12141afa);border-color:rgba(var(--status-ready-rgb),.3);color:var(--status-ready-text)}.unit-card.status-loaded:not(.imo):not(.reefer){background:linear-gradient(135deg,rgba(var(--status-loaded-card-bg-rgb),var(--status-loaded-card-opacity)),#12141afa);border-color:rgba(var(--status-loaded-rgb),.3);color:var(--status-loaded-text)}:root[data-status-needs-trailer-texture=noise] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=noise] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=noise] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=noise] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=noise] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=noise] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' /%3E%3C/filter%3E%3Crect width='100' height='100' fill='%23fff' filter='url(%23noise)' opacity='0.05'/%3E%3C/svg%3E");background-size:50px 50px;position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-texture=grid] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=grid] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=grid] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=grid] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=grid] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=grid] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:linear-gradient(90deg,#ffffff08 1px,#0000 1px),linear-gradient(#ffffff08 1px,#0000 1px);background-size:20px 20px;position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-texture=diagonal] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=diagonal] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=diagonal] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=diagonal] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=diagonal] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=diagonal] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:repeating-linear-gradient(45deg,#0000,#0000 10px,#ffffff08 10px,#ffffff08 20px);position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-texture=crosshatch] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=crosshatch] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=crosshatch] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=crosshatch] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=crosshatch] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=crosshatch] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:repeating-linear-gradient(0deg,#0000,#0000 10px,#ffffff05 10px,#ffffff05 11px),repeating-linear-gradient(90deg,#0000,#0000 10px,#ffffff05 10px,#ffffff05 11px);position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-texture=dots] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=dots] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=dots] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=dots] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=dots] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=dots] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:radial-gradient(circle,#ffffff0d 1px,#0000 1px);background-size:15px 15px;position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-texture=waves] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=waves] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=waves] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=waves] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=waves] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=waves] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:repeating-linear-gradient(0deg,#0000,#0000 20px,#ffffff05 20px,#ffffff05 21px);position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-texture=fabric] .unit-card.status-needs_trailer:not(.imo):not(.reefer):after,:root[data-status-not-arrived-texture=fabric] .unit-card.status-not_arrived:not(.imo):not(.reefer):after,:root[data-status-has-eta-texture=fabric] .unit-card.status-has_eta:not(.imo):not(.reefer):after,:root[data-status-load-if-time-texture=fabric] .unit-card.status-load_if_time:not(.imo):not(.reefer):after,:root[data-status-ready-texture=fabric] .unit-card.status-ready:not(.imo):not(.reefer):after,:root[data-status-loaded-texture=fabric] .unit-card.status-loaded:not(.imo):not(.reefer):after{content:"";border-radius:var(--radius-lg);pointer-events:none;background-image:repeating-linear-gradient(90deg,#ffffff08 2px,#0000 2px),repeating-linear-gradient(0deg,#ffffff08 2px,#0000 2px);background-size:4px 4px;position:absolute;top:0;right:0;bottom:0;left:0}:root[data-status-needs-trailer-font-outline=thin] .unit-card.status-needs_trailer:not(.imo):not(.reefer),:root[data-status-not-arrived-font-outline=thin] .unit-card.status-not_arrived:not(.imo):not(.reefer),:root[data-status-has-eta-font-outline=thin] .unit-card.status-has_eta:not(.imo):not(.reefer),:root[data-status-load-if-time-font-outline=thin] .unit-card.status-load_if_time:not(.imo):not(.reefer),:root[data-status-ready-font-outline=thin] .unit-card.status-ready:not(.imo):not(.reefer),:root[data-status-loaded-font-outline=thin] .unit-card.status-loaded:not(.imo):not(.reefer){text-shadow:-1px -1px #00000080,1px -1px #00000080,-1px 1px #00000080,1px 1px #00000080}:root[data-status-needs-trailer-font-outline=medium] .unit-card.status-needs_trailer:not(.imo):not(.reefer),:root[data-status-not-arrived-font-outline=medium] .unit-card.status-not_arrived:not(.imo):not(.reefer),:root[data-status-has-eta-font-outline=medium] .unit-card.status-has_eta:not(.imo):not(.reefer),:root[data-status-load-if-time-font-outline=medium] .unit-card.status-load_if_time:not(.imo):not(.reefer),:root[data-status-ready-font-outline=medium] .unit-card.status-ready:not(.imo):not(.reefer),:root[data-status-loaded-font-outline=medium] .unit-card.status-loaded:not(.imo):not(.reefer){text-shadow:-2px -2px #0009,2px -2px #0009,-2px 2px #0009,2px 2px #0009,-1px -1px #0009,1px -1px #0009,-1px 1px #0009,1px 1px #0009}:root[data-status-needs-trailer-font-outline=thick] .unit-card.status-needs_trailer:not(.imo):not(.reefer),:root[data-status-not-arrived-font-outline=thick] .unit-card.status-not_arrived:not(.imo):not(.reefer),:root[data-status-has-eta-font-outline=thick] .unit-card.status-has_eta:not(.imo):not(.reefer),:root[data-status-load-if-time-font-outline=thick] .unit-card.status-load_if_time:not(.imo):not(.reefer),:root[data-status-ready-font-outline=thick] .unit-card.status-ready:not(.imo):not(.reefer),:root[data-status-loaded-font-outline=thick] .unit-card.status-loaded:not(.imo):not(.reefer){text-shadow:-3px -3px #000000b3,3px -3px #000000b3,-3px 3px #000000b3,3px 3px #000000b3,-2px -2px #000000b3,2px -2px #000000b3,-2px 2px #000000b3,2px 2px #000000b3,-1px -1px #000000b3,1px -1px #000000b3,-1px 1px #000000b3,1px 1px #000000b3}:root[data-status-needs-trailer-font-outline=glow] .unit-card.status-needs_trailer:not(.imo):not(.reefer),:root[data-status-not-arrived-font-outline=glow] .unit-card.status-not_arrived:not(.imo):not(.reefer),:root[data-status-has-eta-font-outline=glow] .unit-card.status-has_eta:not(.imo):not(.reefer),:root[data-status-load-if-time-font-outline=glow] .unit-card.status-load_if_time:not(.imo):not(.reefer),:root[data-status-ready-font-outline=glow] .unit-card.status-ready:not(.imo):not(.reefer),:root[data-status-loaded-font-outline=glow] .unit-card.status-loaded:not(.imo):not(.reefer){text-shadow:0 0 5px #ffffff80,0 0 10px #ffffff4d,-1px -1px #000c,1px -1px #000c,-1px 1px #000c,1px 1px #000c}:root[data-status-needs-trailer-font-outline=shadow] .unit-card.status-needs_trailer:not(.imo):not(.reefer),:root[data-status-not-arrived-font-outline=shadow] .unit-card.status-not_arrived:not(.imo):not(.reefer),:root[data-status-has-eta-font-outline=shadow] .unit-card.status-has_eta:not(.imo):not(.reefer),:root[data-status-load-if-time-font-outline=shadow] .unit-card.status-load_if_time:not(.imo):not(.reefer),:root[data-status-ready-font-outline=shadow] .unit-card.status-ready:not(.imo):not(.reefer),:root[data-status-loaded-font-outline=shadow] .unit-card.status-loaded:not(.imo):not(.reefer){text-shadow:3px 3px #000c,4px 4px 8px #0009}.unit-card.status-shorted{box-shadow:none;opacity:.4;background:#4c0505e6;border-color:#f8717166;text-decoration:line-through}.status-band{background:var(--status-not-arrived);border-radius:999px;width:6px;height:calc(100% - 24px);position:absolute;top:12px;left:12px}.drivers-indicator{z-index:2;color:var(--muted);opacity:.9;flex-direction:column;gap:2px;display:flex;position:absolute;top:50%;left:-24px;transform:translateY(-50%)}.driver-icon{justify-content:center;align-items:center;display:inline-flex}.driver-icon svg{color:#fff;stroke:#000;stroke-width:2px;paint-order:stroke fill;width:48px;height:48px}.status-needs_trailer{background:rgba(var(--status-needs-trailer-rgb),var(--status-needs-trailer-opacity));color:var(--status-needs-trailer-text);border-color:rgba(var(--status-needs-trailer-rgb),.4)}.status-not_arrived{background:rgba(var(--status-not-arrived-rgb),var(--status-not-arrived-opacity));color:var(--status-not-arrived-text);border-color:rgba(var(--status-not-arrived-rgb),.35)}.status-has_eta{background:rgba(var(--status-has-eta-rgb),var(--status-has-eta-opacity));color:var(--status-has-eta-text);border-color:rgba(var(--status-has-eta-rgb),.4)}.status-load_if_time{background:rgba(var(--status-load-if-time-rgb),var(--status-load-if-time-opacity));color:var(--status-load-if-time-text);border-color:rgba(var(--status-load-if-time-rgb),.4)}.status-ready{background:rgba(var(--status-ready-rgb),var(--status-ready-opacity));color:var(--status-ready-text);border-color:rgba(var(--status-ready-rgb),.4)}.status-loaded{background:rgba(var(--status-loaded-rgb),var(--status-loaded-opacity));color:var(--status-loaded-text);border-color:rgba(var(--status-loaded-rgb),.4)}.status-shorted{background:rgba(var(--status-shorted-rgb),var(--status-shorted-opacity));color:var(--status-shorted-text);border-color:rgba(var(--status-shorted-rgb),.4)}.status-band.status-needs_trailer{background:var(--status-needs-trailer)}.status-band.status-not_arrived{background:var(--status-not-arrived)}.status-band.status-has_eta{background:var(--status-has-eta)}.status-band.status-load_if_time{background:var(--status-load-if-time)}.status-band.status-ready{background:var(--status-ready)}.status-band.status-loaded{background:var(--status-loaded)}.status-band.status-shorted{background:var(--status-shorted)}.unit-row{align-items:center;gap:14px;display:flex}.unit-left{flex-direction:column;flex:1;align-items:flex-start;gap:2px;display:flex}.unit-left-row,.unit-status-row{flex-wrap:wrap;gap:6px 10px;width:100%;display:flex}.unit-status-row{justify-content:flex-end}.unit-section-cell{align-items:center;min-width:0;display:flex}.unit-no-row{align-items:center;gap:8px;width:100%;display:flex}.unit-no-row .unit-no{flex:none}.unit-sub.carrier-inline{margin-top:0;font-size:12px}.load-list-view .unit-sub.carrier-block,#unit-list .unit-sub.carrier-block,.customer-dashboard .unit-sub.carrier-block{max-width:100%}.unit-status-side{flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.unit-card.layout-multi-field-rows .unit-row{align-items:flex-start}.unit-bottom-row{flex-wrap:wrap;gap:8px 12px;width:100%;margin-top:6px;display:flex}.unit-bottom-cell{flex:220px;align-items:center;min-width:0;display:flex}.unit-badges{flex-wrap:wrap;justify-content:flex-start;gap:4px;width:100%;display:flex}.pill{letter-spacing:0;text-transform:uppercase;text-align:center;border:1px solid var(--border);background:#ffffff14;border-radius:999px;justify-content:center;align-items:center;padding:0 2px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.pill.mafi{color:#fcd34d;border-color:#fcd34d66}.pill.imo{color:rgb(var(--imo-rgb));border-color:rgba(var(--imo-rgb),.6);background:rgba(var(--imo-rgb),calc(var(--imo-opacity)*.6))}.pill.reefer{color:rgb(var(--reefer-rgb));border-color:rgba(var(--reefer-rgb),.6);background:rgba(var(--reefer-rgb),calc(var(--reefer-opacity)*.6))}.unit-no{text-align:left;z-index:3;width:100%;font-size:18px;font-weight:600;position:relative}.unit-sub{color:var(--muted);text-align:left;width:100%;max-width:50%;font-size:13px}.unit-sub.mafi-inline{max-width:100%;margin-top:4px;font-size:11px}.customer-dashboard .unit-sub.carrier-block .unit-sub-text,.load-list-view .unit-sub.carrier-block .unit-sub-text,#unit-list .unit-sub.carrier-block .unit-sub-text{white-space:normal;text-overflow:clip;min-width:0;max-width:none;display:inline;overflow:visible}@media (max-width:720px){#unit-list .unit-sub.carrier-block .unit-sub-text,.load-list-view .unit-sub.carrier-block .unit-sub-text{max-width:100%}}.unit-sub.carrier-block{margin-top:-6px}.load-list-view .unit-sub.carrier-block,#unit-list .unit-sub.carrier-block,.customer-dashboard .unit-sub.carrier-block{width:100%;max-width:100%}.unit-sub.carrier-inline,.unit-sub.carrier-block{width:auto;max-width:none}#unit-list .unit-list-header{border:1px solid var(--border);background:linear-gradient(135deg,#12141a99,#151b2466);border-radius:12px;align-items:center;gap:12px;min-height:50px;margin:0 0 16px;padding:12px 16px;display:flex;position:relative;overflow:hidden}#unit-list .unit-list-header-bg{opacity:.15;pointer-events:none;background-image:url(/icon-512.png);background-position:100%;background-repeat:no-repeat;background-size:cover;position:absolute;top:0;right:0;bottom:0;left:0}#unit-list .unit-list-header-content{z-index:1;flex-wrap:wrap;flex:1;align-items:center;gap:16px;display:flex;position:relative}#unit-list .header-stat{flex-direction:column;gap:2px;min-width:50px;display:flex}#unit-list .stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:500}#unit-list .stat-value{color:var(--text);font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700}#unit-list .header-divider{background:var(--border);width:1px;height:32px;margin:0 4px}#unit-list .header-section-title{border-left:2px solid var(--accent);min-width:auto;padding-left:12px}#unit-list .header-section-title .stat-label{color:var(--accent);font-size:11px;font-weight:600}#unit-list .header-deck-wrapper{flex-direction:column;gap:0;margin-top:4px;display:flex}#unit-list .header-deck-labels-row{align-items:flex-end;gap:12px;margin-bottom:2px;margin-left:0;padding-left:24px;display:flex}#unit-list .header-deck-label-empty{flex-shrink:0;width:120px}#unit-list .header-deck-label{text-align:center;flex-shrink:0;min-width:42px}#unit-list .header-deck-label .stat-label{font-size:9px}#unit-list .header-deck-row,#unit-list .header-hourly-row{align-items:center;gap:12px;margin-bottom:2px;display:flex}#unit-list .header-deck-row .header-section-title,#unit-list .header-hourly-row .header-section-title{white-space:nowrap;flex-shrink:0;width:120px;margin-right:8px}#unit-list .header-deck-stat,#unit-list .header-hourly-deck-stat{text-align:center;flex-shrink:0;min-width:42px}#unit-list .header-deck-row>:nth-child(2),#unit-list .header-hourly-row>:nth-child(2){margin-left:16px}#unit-list .header-deck-stat .stat-value,#unit-list .header-hourly-deck-stat .stat-value{font-size:14px}#unit-list .header-deck-values-row{gap:12px;display:flex}#unit-list .header-deck-label-row{border-left:2px solid #10b981;padding-left:12px}#unit-list .header-deck-label-row .stat-label{color:#10b981;font-size:11px;font-weight:600}#unit-list .header-deck-stat,#unit-list .header-type-stat{flex-shrink:0;min-width:42px}#unit-list .header-deck-stat .stat-label,#unit-list .header-type-stat .stat-label{font-size:9px}#unit-list .header-deck-stat .stat-value,#unit-list .header-type-stat .stat-value{font-size:14px}#unit-list .header-hourly-deck-stat{min-width:42px}#unit-list .header-hourly-deck-stat .stat-label{color:#10b981;font-size:9px}#unit-list .header-hourly-deck-stat .stat-value{color:#10b981;font-size:14px}#unit-list .header-estimate{border-left:2px solid #f59e0b;min-width:80px;padding-left:12px}#unit-list .header-estimate .stat-label{color:#f59e0b;font-size:10px;font-weight:600}#unit-list .header-estimate .stat-value{font-size:14px}.unit-sub.timestamp{opacity:.8;max-width:100%;margin-top:2px;font-size:10px}.unit-meta-inline{opacity:.85;text-align:right;flex-direction:column;gap:2px;font-size:10px;display:flex}.unit-meta-inline .mafi-inline{color:#fcd34d;font-weight:600}.unit-meta-customer{opacity:.85;text-align:right;flex-direction:column;align-items:flex-end;gap:6px;font-size:10px;display:flex;position:absolute;bottom:8px;right:8px}.unit-meta-customer .unit-meta-item{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.unit-meta-customer .unit-meta-label{font-size:10px}.unit-meta-customer .unit-meta-time{font-size:11px;font-weight:600}.unit-meta-customer .mafi-inline{color:#fcd34d;font-weight:600}.unit-sub-text{white-space:nowrap;display:block;overflow:visible}.unit-attrs{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:3px;display:flex}.unit-attrs.unit-attrs-wrap-early .unit-attr{flex:100%}.unit-attrs-inline{justify-content:flex-start;gap:4px;margin-top:0}.unit-status-side .unit-attrs{flex-direction:row;align-items:center;gap:6px;margin-top:0}.unit-attr{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;max-width:100%;font-family:ui-monospace,system-ui,sans-serif;font-size:11px;display:inline-flex}.unit-icon{color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.unit-icon svg{width:14px;height:14px}.unit-value{letter-spacing:.04em;white-space:normal;overflow-wrap:anywhere;word-break:break-word;font-size:11px;line-height:1.15}.unit-right{align-items:flex-start;display:flex}.status-pill{border:1px solid var(--border);text-transform:capitalize;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}.status-pill.compact{letter-spacing:.04em;padding:3px 8px;font-size:10px}.unit-meta{color:var(--muted);flex-wrap:wrap;justify-content:flex-start;gap:10px;margin-top:3px;font-size:12px;display:flex}.unit-flags{justify-content:flex-start;gap:8px;margin-top:3px;display:flex}.flag{border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:10px;font-weight:600}.flag.imo{color:rgb(var(--imo-rgb));border-color:rgba(var(--imo-rgb),.6)}.flag.reefer{color:rgb(var(--reefer-rgb));border-color:rgba(var(--reefer-rgb),.6)}.unit-note{color:var(--muted);word-wrap:break-word;overflow-wrap:break-word;white-space:normal;width:100%;margin-top:3px;font-size:12px;display:block}.dfds-alert{color:#fff5f5;text-align:center;letter-spacing:.02em;background:#dc262633;border:1px solid #f87171d9;border-radius:12px;gap:4px;margin-top:8px;padding:10px 12px;font-weight:700;animation:1.1s ease-in-out infinite dfds-alert-flash;display:grid}.dfds-alert-label{text-transform:uppercase;letter-spacing:.16em;font-size:10px}.dfds-alert-text{word-break:break-word}@keyframes dfds-alert-flash{0%{transform:translateY(0);box-shadow:0 0 #ef44444d}50%{transform:translateY(-2px);box-shadow:0 0 18px #ef4444a6}to{transform:translateY(0);box-shadow:0 0 #ef44444d}}.status-text.status-needs_trailer{color:rgb(var(--status-needs-trailer-rgb))}.status-text.status-not_arrived{color:rgb(var(--status-not-arrived-rgb))}.status-text.status-has_eta{color:rgb(var(--status-has-eta-rgb))}.status-text.status-load_if_time{color:rgb(var(--status-load-if-time-rgb))}.status-text.status-ready{color:rgb(var(--status-ready-rgb))}.status-text.status-loaded{color:rgb(var(--status-loaded-rgb))}.status-text.status-shorted{color:rgb(var(--status-shorted-rgb))}.unit-stack{justify-items:start;gap:6px;margin-top:3px;display:grid}.stack-row{border-radius:var(--radius-sm);background:#ffffff0a;justify-content:flex-start;align-items:center;gap:10px;padding:3px 8px;display:flex}.stack-pill{border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:10px}.stack-unit{font-size:12px}.empty{border-radius:var(--radius-lg);border:1px dashed var(--border);color:var(--muted);text-align:center;padding:18px}.modal-overlay{z-index:60;background:#070a10bf;position:fixed;top:0;right:0;bottom:0;left:0}.modal-content{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(900px,100vw - 32px);max-height:85vh;box-shadow:var(--shadow);z-index:61;padding:20px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.modal-content.wide{width:min(1100px,100vw - 32px)}.foreman-modal{width:min(1200px,100vw - 24px);max-height:92vh}.foreman-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.foreman-import-btn{align-items:center;display:inline-flex;position:relative;overflow:hidden}.foreman-import-btn input{opacity:0;cursor:pointer;position:absolute;top:0;right:0;bottom:0;left:0}.foreman-status-row{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:12px;font-size:12px;display:flex}.foreman-error{color:#fecaca;background:#f871711f;border:1px solid #f8717159;border-radius:10px;margin-bottom:12px;padding:8px 10px;font-size:12px}.foreman-sheet{color:#0f172a;box-sizing:border-box;background:#fff;border-radius:14px;width:100%;max-width:210mm;margin:0 auto;padding:10mm 12mm}.foreman-sheet.export-desktop{border-radius:0;width:186mm;max-width:186mm;margin:0 auto}.foreman-sheet.export-desktop .foreman-header{grid-template-columns:1fr 1fr!important}.foreman-sheet.export-desktop .foreman-columns{gap:6mm;grid-template-columns:1fr 1fr!important}.foreman-sheet h1{text-align:center;margin:0;font-size:11pt;font-weight:600}.foreman-sheet h2{text-align:center;margin:1mm 0 4mm;font-size:10pt;font-weight:600}.foreman-header{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:4mm;display:grid}.foreman-header-left{font-size:10pt;font-weight:700}.foreman-header-right{grid-template-columns:auto 1fr;align-items:end;gap:2mm;font-size:9pt;display:grid}.foreman-columns{grid-template-columns:1fr 1fr;gap:8mm;display:grid}.foreman-section{margin-bottom:3mm}.foreman-section-title{margin-bottom:1mm;font-size:9.5pt;font-weight:700}.foreman-row{grid-template-columns:1fr 42mm;align-items:end;gap:3mm;margin-bottom:1mm;font-size:9pt;display:grid}.foreman-long-row{margin-bottom:1.5mm;font-size:9pt}.foreman-input{resize:none;box-sizing:border-box;color:#0f172a;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;background:#f8fafc;border:1px solid #cfd8e3;border-radius:6px;outline:none;width:100%;padding:4px 6px;font-size:9.5pt;line-height:1.3em;overflow:hidden}.foreman-input:focus{background:#fff;border-color:#0f172a}.foreman-footer{text-align:center;margin-top:6mm;font-size:9pt}.location-modal{width:min(640px,100vw - 32px)}.status-modal{width:min(720px,100vw - 32px)}.modal-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.modal-eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:11px}.modal-sub{color:var(--muted);font-size:12px}.modal-body{gap:16px;display:grid}.preset-form,.preset-list,.history-list,.filter-builder{gap:12px;display:grid}.preset-item,.history-item{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.preset-name,.history-query{font-weight:700}.preset-description,.history-meta{color:var(--muted);font-size:12px}.preset-actions{align-items:center;gap:8px;display:flex}.filter-builder-header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-list{gap:10px;display:grid}.filter-row{grid-template-columns:1.2fr 1.2fr 1fr auto;align-items:center;gap:10px;display:grid}@media (max-width:640px){.filter-row{grid-template-columns:1fr}}.location-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.location-option{border:1px solid var(--border);color:var(--text);cursor:pointer;text-transform:uppercase;background:#ffffff0a;border-radius:16px;padding:22px 12px;font-size:20px;font-weight:700}.location-option:hover{background:#86b6ff1f;border-color:#86b6ff99}.location-grid.tra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-option-block{flex-direction:column;gap:10px;display:flex}.location-subrow{flex-wrap:wrap;gap:8px;display:flex}.location-option.small{text-transform:none;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:600}.location-custom{flex-direction:column;gap:12px;display:flex}.location-custom-row{align-items:center;gap:10px;display:flex}.location-custom-row input{flex:1}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.status-option{border:1px solid var(--border);cursor:pointer;border-radius:14px;padding:14px 10px;font-size:13px;font-weight:700}.status-option:hover{filter:brightness(1.05);transform:translateY(-1px)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.input-group{gap:6px;display:grid}.input-row{align-items:center;gap:8px;display:flex}.input-row input{flex:1}.input-group.full{grid-column:1/-1}.input-label{color:var(--muted);font-size:12px}.toggle-chip{min-width:72px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;padding:8px 14px;font-size:12px;font-weight:700;display:inline-flex}.toggle-chip.active{color:var(--text);background:#86b6ff2e;border-color:#86b6ff99;box-shadow:0 8px 18px #86b6ff40}.toggle-chip.imo.active{border-color:rgba(var(--imo-rgb),.8);background:rgba(var(--imo-rgb),var(--imo-opacity));box-shadow:0 8px 18px rgba(var(--imo-rgb),.25)}.toggle-chip.reefer.active{border-color:rgba(var(--reefer-rgb),.85);background:rgba(var(--reefer-rgb),var(--reefer-opacity));box-shadow:0 8px 18px rgba(var(--reefer-rgb),.25)}@keyframes blink-soft{0%{opacity:1}50%{opacity:.3}to{opacity:1}}:root[data-status-needs-trailer-blink=slow] .status-needs_trailer,:root[data-status-needs-trailer-blink=slow] .status-band.status-needs_trailer,:root[data-status-needs-trailer-blink=slow] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-blink=slow] .status-text.status-needs_trailer{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-needs-trailer-blink=fast] .status-needs_trailer,:root[data-status-needs-trailer-blink=fast] .status-band.status-needs_trailer,:root[data-status-needs-trailer-blink=fast] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-blink=fast] .status-text.status-needs_trailer{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-needs-trailer-anim~=pulse] .status-needs_trailer,:root[data-status-needs-trailer-anim~=pulse] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=pulse] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=pulse] .status-text.status-needs_trailer{animation:3s ease-in-out infinite pulse-soft}:root[data-status-needs-trailer-anim~=glow] .status-needs_trailer,:root[data-status-needs-trailer-anim~=glow] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=glow] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=glow] .status-text.status-needs_trailer{animation:3s ease-in-out infinite glow-soft}:root[data-status-needs-trailer-anim~=breathe] .status-needs_trailer,:root[data-status-needs-trailer-anim~=breathe] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=breathe] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=breathe] .status-text.status-needs_trailer{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-needs-trailer-anim~=sweep] .status-needs_trailer,:root[data-status-needs-trailer-anim~=sweep] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=sweep] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=sweep] .status-text.status-needs_trailer{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-needs-trailer-anim~=flicker] .status-needs_trailer,:root[data-status-needs-trailer-anim~=flicker] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=flicker] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=flicker] .status-text.status-needs_trailer{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-not-arrived-blink=slow] .status-not_arrived,:root[data-status-not-arrived-blink=slow] .status-band.status-not_arrived,:root[data-status-not-arrived-blink=slow] .status-pill.status-not_arrived,:root[data-status-not-arrived-blink=slow] .status-text.status-not_arrived{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-not-arrived-blink=fast] .status-not_arrived,:root[data-status-not-arrived-blink=fast] .status-band.status-not_arrived,:root[data-status-not-arrived-blink=fast] .status-pill.status-not_arrived,:root[data-status-not-arrived-blink=fast] .status-text.status-not_arrived{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-not-arrived-anim~=pulse] .status-not_arrived,:root[data-status-not-arrived-anim~=pulse] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=pulse] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=pulse] .status-text.status-not_arrived{animation:3s ease-in-out infinite pulse-soft}:root[data-status-not-arrived-anim~=glow] .status-not_arrived,:root[data-status-not-arrived-anim~=glow] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=glow] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=glow] .status-text.status-not_arrived{animation:3s ease-in-out infinite glow-soft}:root[data-status-not-arrived-anim~=breathe] .status-not_arrived,:root[data-status-not-arrived-anim~=breathe] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=breathe] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=breathe] .status-text.status-not_arrived{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-not-arrived-anim~=sweep] .status-not_arrived,:root[data-status-not-arrived-anim~=sweep] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=sweep] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=sweep] .status-text.status-not_arrived{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-not-arrived-anim~=flicker] .status-not_arrived,:root[data-status-not-arrived-anim~=flicker] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=flicker] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=flicker] .status-text.status-not_arrived{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-has-eta-blink=slow] .status-has_eta,:root[data-status-has-eta-blink=slow] .status-band.status-has_eta,:root[data-status-has-eta-blink=slow] .status-pill.status-has_eta,:root[data-status-has-eta-blink=slow] .status-text.status-has_eta{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-has-eta-blink=fast] .status-has_eta,:root[data-status-has-eta-blink=fast] .status-band.status-has_eta,:root[data-status-has-eta-blink=fast] .status-pill.status-has_eta,:root[data-status-has-eta-blink=fast] .status-text.status-has_eta{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-has-eta-anim~=pulse] .status-has_eta,:root[data-status-has-eta-anim~=pulse] .status-band.status-has_eta,:root[data-status-has-eta-anim~=pulse] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=pulse] .status-text.status-has_eta{animation:3s ease-in-out infinite pulse-soft}:root[data-status-has-eta-anim~=glow] .status-has_eta,:root[data-status-has-eta-anim~=glow] .status-band.status-has_eta,:root[data-status-has-eta-anim~=glow] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=glow] .status-text.status-has_eta{animation:3s ease-in-out infinite glow-soft}:root[data-status-has-eta-anim~=breathe] .status-has_eta,:root[data-status-has-eta-anim~=breathe] .status-band.status-has_eta,:root[data-status-has-eta-anim~=breathe] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=breathe] .status-text.status-has_eta{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-has-eta-anim~=sweep] .status-has_eta,:root[data-status-has-eta-anim~=sweep] .status-band.status-has_eta,:root[data-status-has-eta-anim~=sweep] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=sweep] .status-text.status-has_eta{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-has-eta-anim~=flicker] .status-has_eta,:root[data-status-has-eta-anim~=flicker] .status-band.status-has_eta,:root[data-status-has-eta-anim~=flicker] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=flicker] .status-text.status-has_eta{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-load-if-time-blink=slow] .status-load_if_time,:root[data-status-load-if-time-blink=slow] .status-band.status-load_if_time,:root[data-status-load-if-time-blink=slow] .status-pill.status-load_if_time,:root[data-status-load-if-time-blink=slow] .status-text.status-load_if_time{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-load-if-time-blink=fast] .status-load_if_time,:root[data-status-load-if-time-blink=fast] .status-band.status-load_if_time,:root[data-status-load-if-time-blink=fast] .status-pill.status-load_if_time,:root[data-status-load-if-time-blink=fast] .status-text.status-load_if_time{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-load-if-time-anim~=pulse] .status-load_if_time,:root[data-status-load-if-time-anim~=pulse] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=pulse] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=pulse] .status-text.status-load_if_time{animation:3s ease-in-out infinite pulse-soft}:root[data-status-load-if-time-anim~=glow] .status-load_if_time,:root[data-status-load-if-time-anim~=glow] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=glow] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=glow] .status-text.status-load_if_time{animation:3s ease-in-out infinite glow-soft}:root[data-status-load-if-time-anim~=breathe] .status-load_if_time,:root[data-status-load-if-time-anim~=breathe] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=breathe] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=breathe] .status-text.status-load_if_time{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-load-if-time-anim~=sweep] .status-load_if_time,:root[data-status-load-if-time-anim~=sweep] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=sweep] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=sweep] .status-text.status-load_if_time{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-load-if-time-anim~=flicker] .status-load_if_time,:root[data-status-load-if-time-anim~=flicker] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=flicker] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=flicker] .status-text.status-load_if_time{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-ready-blink=slow] .status-ready,:root[data-status-ready-blink=slow] .status-band.status-ready,:root[data-status-ready-blink=slow] .status-pill.status-ready,:root[data-status-ready-blink=slow] .status-text.status-ready{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-ready-blink=fast] .status-ready,:root[data-status-ready-blink=fast] .status-band.status-ready,:root[data-status-ready-blink=fast] .status-pill.status-ready,:root[data-status-ready-blink=fast] .status-text.status-ready{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-ready-anim~=pulse] .status-ready,:root[data-status-ready-anim~=pulse] .status-band.status-ready,:root[data-status-ready-anim~=pulse] .status-pill.status-ready,:root[data-status-ready-anim~=pulse] .status-text.status-ready{animation:3s ease-in-out infinite pulse-soft}:root[data-status-ready-anim~=glow] .status-ready,:root[data-status-ready-anim~=glow] .status-band.status-ready,:root[data-status-ready-anim~=glow] .status-pill.status-ready,:root[data-status-ready-anim~=glow] .status-text.status-ready{animation:3s ease-in-out infinite glow-soft}:root[data-status-ready-anim~=breathe] .status-ready,:root[data-status-ready-anim~=breathe] .status-band.status-ready,:root[data-status-ready-anim~=breathe] .status-pill.status-ready,:root[data-status-ready-anim~=breathe] .status-text.status-ready{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-ready-anim~=sweep] .status-ready,:root[data-status-ready-anim~=sweep] .status-band.status-ready,:root[data-status-ready-anim~=sweep] .status-pill.status-ready,:root[data-status-ready-anim~=sweep] .status-text.status-ready{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-ready-anim~=flicker] .status-ready,:root[data-status-ready-anim~=flicker] .status-band.status-ready,:root[data-status-ready-anim~=flicker] .status-pill.status-ready,:root[data-status-ready-anim~=flicker] .status-text.status-ready{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-loaded-blink=slow] .status-loaded,:root[data-status-loaded-blink=slow] .status-band.status-loaded,:root[data-status-loaded-blink=slow] .status-pill.status-loaded,:root[data-status-loaded-blink=slow] .status-text.status-loaded{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-loaded-blink=fast] .status-loaded,:root[data-status-loaded-blink=fast] .status-band.status-loaded,:root[data-status-loaded-blink=fast] .status-pill.status-loaded,:root[data-status-loaded-blink=fast] .status-text.status-loaded{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-loaded-anim~=pulse] .status-loaded,:root[data-status-loaded-anim~=pulse] .status-band.status-loaded,:root[data-status-loaded-anim~=pulse] .status-pill.status-loaded,:root[data-status-loaded-anim~=pulse] .status-text.status-loaded{animation:3s ease-in-out infinite pulse-soft}:root[data-status-loaded-anim~=glow] .status-loaded,:root[data-status-loaded-anim~=glow] .status-band.status-loaded,:root[data-status-loaded-anim~=glow] .status-pill.status-loaded,:root[data-status-loaded-anim~=glow] .status-text.status-loaded{animation:3s ease-in-out infinite glow-soft}:root[data-status-loaded-anim~=breathe] .status-loaded,:root[data-status-loaded-anim~=breathe] .status-band.status-loaded,:root[data-status-loaded-anim~=breathe] .status-pill.status-loaded,:root[data-status-loaded-anim~=breathe] .status-text.status-loaded{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-loaded-anim~=sweep] .status-loaded,:root[data-status-loaded-anim~=sweep] .status-band.status-loaded,:root[data-status-loaded-anim~=sweep] .status-pill.status-loaded,:root[data-status-loaded-anim~=sweep] .status-text.status-loaded{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-loaded-anim~=flicker] .status-loaded,:root[data-status-loaded-anim~=flicker] .status-band.status-loaded,:root[data-status-loaded-anim~=flicker] .status-pill.status-loaded,:root[data-status-loaded-anim~=flicker] .status-text.status-loaded{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-shorted-blink=slow] .status-shorted,:root[data-status-shorted-blink=slow] .status-band.status-shorted,:root[data-status-shorted-blink=slow] .status-pill.status-shorted,:root[data-status-shorted-blink=slow] .status-text.status-shorted{animation:2.4s ease-in-out infinite blink-soft}:root[data-status-shorted-blink=fast] .status-shorted,:root[data-status-shorted-blink=fast] .status-band.status-shorted,:root[data-status-shorted-blink=fast] .status-pill.status-shorted,:root[data-status-shorted-blink=fast] .status-text.status-shorted{animation:1.2s ease-in-out infinite blink-soft}:root[data-status-shorted-anim~=pulse] .status-shorted,:root[data-status-shorted-anim~=pulse] .status-band.status-shorted,:root[data-status-shorted-anim~=pulse] .status-pill.status-shorted,:root[data-status-shorted-anim~=pulse] .status-text.status-shorted{animation:3s ease-in-out infinite pulse-soft}:root[data-status-shorted-anim~=glow] .status-shorted,:root[data-status-shorted-anim~=glow] .status-band.status-shorted,:root[data-status-shorted-anim~=glow] .status-pill.status-shorted,:root[data-status-shorted-anim~=glow] .status-text.status-shorted{animation:3s ease-in-out infinite glow-soft}:root[data-status-shorted-anim~=breathe] .status-shorted,:root[data-status-shorted-anim~=breathe] .status-band.status-shorted,:root[data-status-shorted-anim~=breathe] .status-pill.status-shorted,:root[data-status-shorted-anim~=breathe] .status-text.status-shorted{animation:3.4s ease-in-out infinite breathe-soft}:root[data-status-shorted-anim~=sweep] .status-shorted,:root[data-status-shorted-anim~=sweep] .status-band.status-shorted,:root[data-status-shorted-anim~=sweep] .status-pill.status-shorted,:root[data-status-shorted-anim~=sweep] .status-text.status-shorted{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-status-shorted-anim~=flicker] .status-shorted,:root[data-status-shorted-anim~=flicker] .status-band.status-shorted,:root[data-status-shorted-anim~=flicker] .status-pill.status-shorted,:root[data-status-shorted-anim~=flicker] .status-text.status-shorted{animation:2.2s ease-in-out infinite flicker-soft}:root[data-status-needs-trailer-anim~=bounce] .status-needs_trailer,:root[data-status-needs-trailer-anim~=bounce] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=bounce] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=bounce] .status-text.status-needs_trailer,:root[data-status-not-arrived-anim~=bounce] .status-not_arrived,:root[data-status-not-arrived-anim~=bounce] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=bounce] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=bounce] .status-text.status-not_arrived,:root[data-status-has-eta-anim~=bounce] .status-has_eta,:root[data-status-has-eta-anim~=bounce] .status-band.status-has_eta,:root[data-status-has-eta-anim~=bounce] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=bounce] .status-text.status-has_eta,:root[data-status-load-if-time-anim~=bounce] .status-load_if_time,:root[data-status-load-if-time-anim~=bounce] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=bounce] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=bounce] .status-text.status-load_if_time,:root[data-status-ready-anim~=bounce] .status-ready,:root[data-status-ready-anim~=bounce] .status-band.status-ready,:root[data-status-ready-anim~=bounce] .status-pill.status-ready,:root[data-status-ready-anim~=bounce] .status-text.status-ready,:root[data-status-loaded-anim~=bounce] .status-loaded,:root[data-status-loaded-anim~=bounce] .status-band.status-loaded,:root[data-status-loaded-anim~=bounce] .status-pill.status-loaded,:root[data-status-loaded-anim~=bounce] .status-text.status-loaded,:root[data-status-shorted-anim~=bounce] .status-shorted,:root[data-status-shorted-anim~=bounce] .status-band.status-shorted,:root[data-status-shorted-anim~=bounce] .status-pill.status-shorted,:root[data-status-shorted-anim~=bounce] .status-text.status-shorted{animation:1s ease-in-out infinite bounce-soft}:root[data-status-needs-trailer-anim~=shimmer] .status-needs_trailer,:root[data-status-needs-trailer-anim~=shimmer] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=shimmer] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=shimmer] .status-text.status-needs_trailer,:root[data-status-not-arrived-anim~=shimmer] .status-not_arrived,:root[data-status-not-arrived-anim~=shimmer] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=shimmer] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=shimmer] .status-text.status-not_arrived,:root[data-status-has-eta-anim~=shimmer] .status-has_eta,:root[data-status-has-eta-anim~=shimmer] .status-band.status-has_eta,:root[data-status-has-eta-anim~=shimmer] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=shimmer] .status-text.status-has_eta,:root[data-status-load-if-time-anim~=shimmer] .status-load_if_time,:root[data-status-load-if-time-anim~=shimmer] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=shimmer] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=shimmer] .status-text.status-load_if_time,:root[data-status-ready-anim~=shimmer] .status-ready,:root[data-status-ready-anim~=shimmer] .status-band.status-ready,:root[data-status-ready-anim~=shimmer] .status-pill.status-ready,:root[data-status-ready-anim~=shimmer] .status-text.status-ready,:root[data-status-loaded-anim~=shimmer] .status-loaded,:root[data-status-loaded-anim~=shimmer] .status-band.status-loaded,:root[data-status-loaded-anim~=shimmer] .status-pill.status-loaded,:root[data-status-loaded-anim~=shimmer] .status-text.status-loaded,:root[data-status-shorted-anim~=shimmer] .status-shorted,:root[data-status-shorted-anim~=shimmer] .status-band.status-shorted,:root[data-status-shorted-anim~=shimmer] .status-pill.status-shorted,:root[data-status-shorted-anim~=shimmer] .status-text.status-shorted{background-image:linear-gradient(120deg,#ffffff0f,#ffffff38,#ffffff0f);background-size:200% 200%;animation:2.8s linear infinite shimmer-soft}:root[data-status-needs-trailer-anim~=ripple] .status-needs_trailer,:root[data-status-needs-trailer-anim~=ripple] .status-band.status-needs_trailer,:root[data-status-needs-trailer-anim~=ripple] .status-pill.status-needs_trailer,:root[data-status-needs-trailer-anim~=ripple] .status-text.status-needs_trailer,:root[data-status-not-arrived-anim~=ripple] .status-not_arrived,:root[data-status-not-arrived-anim~=ripple] .status-band.status-not_arrived,:root[data-status-not-arrived-anim~=ripple] .status-pill.status-not_arrived,:root[data-status-not-arrived-anim~=ripple] .status-text.status-not_arrived,:root[data-status-has-eta-anim~=ripple] .status-has_eta,:root[data-status-has-eta-anim~=ripple] .status-band.status-has_eta,:root[data-status-has-eta-anim~=ripple] .status-pill.status-has_eta,:root[data-status-has-eta-anim~=ripple] .status-text.status-has_eta,:root[data-status-load-if-time-anim~=ripple] .status-load_if_time,:root[data-status-load-if-time-anim~=ripple] .status-band.status-load_if_time,:root[data-status-load-if-time-anim~=ripple] .status-pill.status-load_if_time,:root[data-status-load-if-time-anim~=ripple] .status-text.status-load_if_time,:root[data-status-ready-anim~=ripple] .status-ready,:root[data-status-ready-anim~=ripple] .status-band.status-ready,:root[data-status-ready-anim~=ripple] .status-pill.status-ready,:root[data-status-ready-anim~=ripple] .status-text.status-ready,:root[data-status-loaded-anim~=ripple] .status-loaded,:root[data-status-loaded-anim~=ripple] .status-band.status-loaded,:root[data-status-loaded-anim~=ripple] .status-pill.status-loaded,:root[data-status-loaded-anim~=ripple] .status-text.status-loaded,:root[data-status-shorted-anim~=ripple] .status-shorted,:root[data-status-shorted-anim~=ripple] .status-band.status-shorted,:root[data-status-shorted-anim~=ripple] .status-pill.status-shorted,:root[data-status-shorted-anim~=ripple] .status-text.status-shorted{animation:1.6s ease-out infinite ripple-soft}:root[data-imo-blink=slow] .pill.imo,:root[data-imo-blink=slow] .flag.imo{animation:2.4s ease-in-out infinite blink-soft}:root[data-imo-blink=fast] .pill.imo,:root[data-imo-blink=fast] .flag.imo{animation:1.2s ease-in-out infinite blink-soft}:root[data-imo-anim~=pulse] .pill.imo,:root[data-imo-anim~=pulse] .flag.imo{animation:3s ease-in-out infinite pulse-soft}:root[data-imo-anim~=glow] .pill.imo,:root[data-imo-anim~=glow] .flag.imo{animation:3s ease-in-out infinite glow-soft}:root[data-imo-anim~=breathe] .pill.imo,:root[data-imo-anim~=breathe] .flag.imo{animation:3.4s ease-in-out infinite breathe-soft}:root[data-imo-anim~=bounce] .pill.imo,:root[data-imo-anim~=bounce] .flag.imo{animation:1s ease-in-out infinite bounce-soft}:root[data-imo-anim~=shimmer] .pill.imo,:root[data-imo-anim~=shimmer] .flag.imo{background-image:linear-gradient(120deg,#ffffff14,#ffffff3d,#ffffff14);background-size:200% 200%;animation:2.8s linear infinite shimmer-soft}:root[data-imo-anim~=ripple] .pill.imo,:root[data-imo-anim~=ripple] .flag.imo{animation:1.6s ease-out infinite ripple-soft}:root[data-imo-anim~=sweep] .pill.imo,:root[data-imo-anim~=sweep] .flag.imo{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-imo-anim~=flicker] .pill.imo,:root[data-imo-anim~=flicker] .flag.imo{animation:2.2s ease-in-out infinite flicker-soft}:root[data-reefer-blink=slow] .flag.reefer{animation:2.4s ease-in-out infinite blink-soft}:root[data-reefer-blink=fast] .flag.reefer{animation:1.2s ease-in-out infinite blink-soft}:root[data-reefer-anim~=pulse] .flag.reefer{animation:3s ease-in-out infinite pulse-soft}:root[data-reefer-anim~=glow] .flag.reefer{animation:3s ease-in-out infinite glow-soft}:root[data-reefer-anim~=breathe] .flag.reefer{animation:3.4s ease-in-out infinite breathe-soft}:root[data-reefer-anim~=bounce] .flag.reefer{animation:1s ease-in-out infinite bounce-soft}:root[data-reefer-anim~=shimmer] .flag.reefer{background-image:linear-gradient(120deg,#ffffff14,#ffffff3d,#ffffff14);background-size:200% 200%;animation:2.8s linear infinite shimmer-soft}:root[data-reefer-anim~=ripple] .flag.reefer{animation:1.6s ease-out infinite ripple-soft}:root[data-reefer-anim~=sweep] .flag.reefer{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-reefer-anim~=flicker] .flag.reefer{animation:2.2s ease-in-out infinite flicker-soft}@keyframes pulse-soft{0%{transform:scale(1)}50%{transform:scale(1.01)}to{transform:scale(1)}}@keyframes bounce-soft{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes glow-soft{0%{box-shadow:0 12px 30px #00000059}50%{box-shadow:0 18px 38px #64b6ff33}to{box-shadow:0 12px 30px #00000059}}@keyframes breathe-soft{0%{opacity:1}50%{opacity:.85}to{opacity:1}}@keyframes sweep-soft{0%{background-position:0%}to{background-position:100%}}@keyframes shimmer-soft{0%{background-position:0%}to{background-position:100%}}@keyframes ripple-soft{0%{box-shadow:0 0 #ffffff4d}to{box-shadow:0 0 0 10px #fff0}}@keyframes flicker-soft{0%,to{opacity:1}35%{opacity:.75}60%{opacity:.9}80%{opacity:.6}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@keyframes swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0)}}@keyframes rock{0%,to{transform:skewY(0)}50%{transform:skewY(-2deg)}}@keyframes sway{0%,to{transform:translate(0)translateY(0)}25%{transform:translate(-3px)translateY(-2px)}50%{transform:translate(0)translateY(-3px)}75%{transform:translate(3px)translateY(-2px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tilt{0%{transform:perspective(1000px)rotateY(0)rotateX(0)}25%{transform:perspective(1000px)rotateY(20deg)rotateX(10deg)}50%{transform:perspective(1000px)rotateY(-20deg)rotateX(-10deg)}75%{transform:perspective(1000px)rotateY(20deg)rotateX(10deg)}to{transform:perspective(1000px)rotateY(0)rotateX(0)}}@keyframes flip{0%{transform:perspective(1000px)rotateY(0)}to{transform:perspective(1000px)rotateY(360deg)}}@keyframes zoom{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.15)}28%{transform:scale(1)}42%{transform:scale(1.15)}70%{transform:scale(1)}}@keyframes wobble{0%{transform:translate(0)rotate(0)}15%{transform:translate(-5px)rotate(-5deg)}30%{transform:translate(3px)rotate(3deg)}45%{transform:translate(-3px)rotate(-2deg)}60%{transform:translate(2px)rotate(1deg)}75%{transform:translate(-1px)rotate(-1deg)}to{transform:translate(0)rotate(0)}}@keyframes jello{0%,11.1%,to{transform:skew(0)skewY(0)}22.2%{transform:skew(-12.5deg)skewY(-12.5deg)}33.3%{transform:skew(6.25deg)skewY(6.25deg)}44.4%{transform:skew(-3.125deg)skewY(-3.125deg)}55.5%{transform:skew(1.5625deg)skewY(1.5625deg)}66.6%{transform:skew(-.78125deg)skewY(-.78125deg)}77.7%{transform:skew(.390625deg)skewY(.390625deg)}88.8%{transform:skew(-.195313deg)skewY(-.195313deg)}}@keyframes tada{0%{transform:scale(1)rotate(0)}10%,20%{transform:scale(.9)rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1)rotate(3deg)}40%,60%,80%{transform:scale(1.1)rotate(-3deg)}to{transform:scale(1)rotate(0)}}@keyframes wave{0%,to{transform:translateY(0)}20%{transform:translateY(-10px)}40%{transform:translateY(0)}60%{transform:translateY(-5px)}80%{transform:translateY(0)}}@keyframes fade{0%,to{opacity:1}50%{opacity:.4}}@keyframes fade-in-out{0%{opacity:0}50%{opacity:1}to{opacity:0}}.animate-pulse-soft{animation:3s ease-in-out infinite pulse-soft}.animate-blink{animation:2.4s ease-in-out infinite blink-soft}.animate-breathe{animation:3.4s ease-in-out infinite breathe-soft}.animate-glow-soft{animation:3s ease-in-out infinite glow-soft}.animate-ripple{animation:1.5s ease-in-out infinite ripple-soft}.animate-shimmer{animation:2s ease-in-out infinite shimmer-soft}.animate-flicker{animation:2.2s ease-in-out infinite flicker-soft}.animate-bounce-soft{animation:1s ease-in-out infinite bounce-soft}.animate-shake{animation:.5s ease-in-out infinite shake}.animate-swing{animation:1s ease-in-out infinite swing}.animate-rock{animation:1.5s ease-in-out infinite rock}.animate-sway{animation:1.5s ease-in-out infinite sway}.animate-sweep{animation:6s linear infinite sweep-soft}.animate-rotate{animation:2s linear infinite rotate}.animate-tilt{animation:1.5s ease-in-out infinite tilt}.animate-flip{animation:2s ease-in-out infinite flip}.animate-zoom{animation:1.5s ease-in-out infinite zoom}.animate-heartbeat{animation:1.3s ease-in-out infinite heartbeat}.animate-wobble{animation:1s ease-in-out infinite wobble}.animate-jello{animation:.9s ease-in-out infinite jello}.animate-tada{animation:1s ease-in-out infinite tada}.animate-wave{animation:1s ease-in-out infinite wave}.animate-fade{animation:2s ease-in-out infinite fade}.animate-fade-in-out{animation:2s ease-in-out infinite fade-in-out}.hover\:animate-pulse-soft:hover{animation:3s ease-in-out infinite pulse-soft}.hover\:animate-glow-soft:hover{animation:3s ease-in-out infinite glow-soft}.hover\:animate-bounce-soft:hover{animation:1s ease-in-out infinite bounce-soft}:root[data-unit-anim-blink=on] .unit-card{animation:2.4s ease-in-out infinite blink-soft}:root[data-unit-anim-pulse=on] .unit-card{animation:3s ease-in-out infinite pulse-soft}:root[data-unit-anim-glow=on] .unit-card{animation:3s ease-in-out infinite glow-soft}:root[data-unit-anim-breathe=on] .unit-card{animation:3.4s ease-in-out infinite breathe-soft}:root[data-unit-anim-sweep=on] .unit-card{background-size:200% 200%;animation:6s linear infinite sweep-soft}:root[data-unit-anim-flicker=on] .unit-card{animation:2.2s ease-in-out infinite flicker-soft}:root[data-unit-anim-blink=on][data-unit-anim-pulse=on] .unit-card,:root[data-unit-anim-blink=on][data-unit-anim-glow=on] .unit-card,:root[data-unit-anim-blink=on][data-unit-anim-breathe=on] .unit-card,:root[data-unit-anim-blink=on][data-unit-anim-sweep=on] .unit-card,:root[data-unit-anim-blink=on][data-unit-anim-flicker=on] .unit-card,:root[data-unit-anim-pulse=on][data-unit-anim-glow=on] .unit-card,:root[data-unit-anim-pulse=on][data-unit-anim-breathe=on] .unit-card,:root[data-unit-anim-pulse=on][data-unit-anim-sweep=on] .unit-card,:root[data-unit-anim-pulse=on][data-unit-anim-flicker=on] .unit-card,:root[data-unit-anim-glow=on][data-unit-anim-breathe=on] .unit-card,:root[data-unit-anim-glow=on][data-unit-anim-sweep=on] .unit-card,:root[data-unit-anim-glow=on][data-unit-anim-flicker=on] .unit-card,:root[data-unit-anim-breathe=on][data-unit-anim-sweep=on] .unit-card,:root[data-unit-anim-breathe=on][data-unit-anim-flicker=on] .unit-card,:root[data-unit-anim-sweep=on][data-unit-anim-flicker=on] .unit-card{animation:2.4s ease-in-out infinite blink-soft,3s ease-in-out infinite pulse-soft,3s ease-in-out infinite glow-soft,3.4s ease-in-out infinite breathe-soft,6s linear infinite sweep-soft,2.2s ease-in-out infinite flicker-soft}.modal-actions{bottom:max(0px,calc(var(--keyboard-offset,0px) + env(safe-area-inset-bottom,0px) - 55px));padding-top:12px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));box-shadow:none;z-index:1;background:0 0;flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex;position:sticky}.modal-actions.modal-actions-top{box-shadow:none;background:0 0;margin-top:0;margin-bottom:12px;padding-top:12px;padding-bottom:12px;top:0;bottom:auto}.modal-actions .btn.primary{color:#0b1220;background:linear-gradient(135deg,#64b6fff2,#64b6ffb3);border-color:#64b6ffe6}.modal-actions .btn.secondary{color:#0b1220;background:linear-gradient(135deg,#7ce3c5f2,#7ce3c5b3);border-color:#7ce3c5e6}.modal-actions .btn.danger{color:#180909;background:linear-gradient(135deg,#ff6464f2,#ff6464b3);border-color:#ff6464e6}.modal-actions .btn.ghost{color:var(--text);background:#ffffff14;border-color:#fff3}.saved-status{color:var(--muted);font-size:12px}.modal-message{border:1px solid var(--border);border-radius:10px;padding:8px 12px;font-size:12px}.modal-message.error{color:#fecaca;border-color:#f06a6a80}.appearance-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.appearance-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffff08;padding:14px}.appearance-card h3{margin:0 0 10px;font-size:14px}.appearance-fields{gap:10px;margin-bottom:10px;display:grid}.appearance-row{justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.appearance-row.stack{align-items:flex-start}.appearance-controls{grid-template-columns:auto minmax(90px,1fr) 96px;align-items:center;gap:8px;display:grid}.appearance-controls input[type=range]{width:100%}.appearance-multiselect{min-width:180px;min-height:120px}.hint{color:var(--muted);margin:8px 0 0;font-size:11px}.appearance-row input[type=color]{border:1px solid var(--border);background:0 0;border-radius:8px;width:38px;height:30px;padding:0}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.detail{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;gap:4px;padding:10px;font-size:12px;display:grid}.history{border-top:1px solid var(--border);padding-top:16px}.history-item{border-radius:var(--radius-md);border:1px solid var(--border);margin-bottom:10px;padding:10px}.history-meta{color:var(--muted);font-size:11px}.history-change{color:var(--muted);font-size:12px}.history-field{margin-right:6px;font-weight:600}.history-values{color:var(--muted)}.tab-row{gap:8px;display:flex}.tab{border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:999px;padding:6px 12px;font-size:12px}.tab.active{color:var(--text);background:#64b6ff33;border-color:#64b6ff66}.tools-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;display:grid}.inline-actions{align-items:center;gap:8px;margin-top:3px;display:flex}.type-order{gap:8px;display:grid}.type-order-item{border:1px solid var(--border);cursor:grab;background:#ffffff0a;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.type-order-item.drag-over{background:#64b6ff1f;border-color:#64b6ff80}.type-order-left{align-items:center;gap:10px;font-weight:600;display:flex}.type-order-handle{color:var(--muted);letter-spacing:.2em;font-size:12px}.type-order-right{align-items:center;gap:8px;display:flex}.type-order-rank{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#64b6ff1f;border:1px solid #64b6ff40;border-radius:999px;padding:2px 6px;font-size:10px}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:none}.import-preview{gap:12px;display:grid}.mapping-list{gap:8px;display:grid}.mapping-row{gap:6px;display:grid}.sample-table{border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.sample-table table{border-collapse:collapse;width:100%;font-size:11px}.sample-table th,.sample-table td{border-bottom:1px solid var(--border);padding:6px 8px}.chip-grid{flex-wrap:wrap;gap:8px;display:flex}.admin-user-list{gap:10px;display:grid}.admin-user-row{border-radius:var(--radius-md);border:1px solid var(--border);background:#ffffff0a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.admin-user-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-user-name{font-size:13px;font-weight:600}.admin-user-meta{color:var(--muted);font-size:11px}.chip{border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:999px;padding:6px 12px;font-size:12px}.chip.active{color:var(--text);background:#64b6ff33;border-color:#64b6ff66}.login-shell{background-image:url(/icon-hd.png);background-position:50%;background-repeat:no-repeat;background-size:70%;background-attachment:fixed;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.login-shell:before{content:"";background:radial-gradient(circle at center,rgba(var(--bg-rgb,7,10,16),.2),rgba(var(--bg-rgb,7,10,16),.7));pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.login-card{z-index:1;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(420px,100%);box-shadow:var(--shadow);padding:24px;position:relative}.login-card h1{margin:0 0 8px;font-family:Space Grotesk,sans-serif}.login-card p{color:var(--muted);margin-top:0}@media (max-width:768px){.login-shell{background-position:top;background-size:120%}.login-shell:before{background:radial-gradient(circle at top,rgba(var(--bg-rgb,7,10,16),.1),rgba(var(--bg-rgb,7,10,16),.6))}}.radio-row{color:var(--muted);gap:12px;font-size:12px;display:flex}.radio{align-items:center;gap:6px;display:flex}.order-hint{color:var(--muted);font-size:11px}@media (max-width:720px){.topbar{flex-direction:column;align-items:flex-start}.toolbar{width:100%}.controls{flex-direction:column;align-items:stretch}.unit-row{flex-direction:column;align-items:flex-start}.location-grid,.location-grid.tra-grid{grid-template-columns:1fr}.location-custom-row{flex-direction:column;align-items:stretch}.status-grid{grid-template-columns:1fr}}@media (max-width:640px){.sticky-footer .footer-controls{gap:6px;padding:8px}.footer-row{flex-wrap:nowrap;overflow-x:auto}.sticky-footer label{font-size:10px}.sticky-footer input,.sticky-footer select{padding:4px 6px;font-size:12px}.btn.small{padding:5px 8px;font-size:10px}.filter-group{flex:160px;min-width:0}}.appearance-modal-v2{background:var(--panel);border:1px solid var(--border);border-radius:18px;width:min(1080px,96vw);max-width:1080px;padding:20px;box-shadow:0 24px 80px #00000073}.appearance-v2-layout{grid-template-columns:180px 1fr;gap:18px;margin-top:10px;display:grid}.appearance-v2-tabs{flex-direction:column;gap:10px;display:flex}.appearance-v2-tabs .tab{text-align:left;border:1px solid var(--border);width:100%;color:var(--muted);background:#ffffff05;border-radius:12px;justify-content:flex-start;padding:10px 12px;transition:background .2s,border-color .2s,color .2s}.appearance-v2-tabs .tab.active{color:var(--text);background:#64b6ff24;border-color:#64b6ff66}.appearance-v2-section{border:1px solid var(--border);background:#ffffff08;border-radius:16px;gap:14px;padding:18px;display:grid}.appearance-v2-section h3{margin:0;font-size:15px}.section-desc{color:var(--muted);margin:0;font-size:12px}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.control-group{gap:6px;font-size:12px;display:grid}.control-group label{color:var(--muted);font-size:12px}.control-group input,.control-group select,.color-input-group input{border:1px solid var(--border);width:100%;color:var(--text);background:#ffffff0a;border-radius:10px;padding:8px 10px;font-size:12px}.opacity-slider-group{align-items:center;gap:10px;display:flex}.opacity-slider-group input[type=range]{flex:1}.status-colors-list{gap:12px;display:grid}.status-color-row{border:1px solid var(--border);background:#ffffff05;border-radius:14px;grid-template-columns:minmax(160px,220px) 1fr;gap:12px;padding:12px;display:grid}.color-preview{align-content:start;gap:8px;display:grid}.color-preview .swatch{border:1px solid var(--border);border-radius:10px;height:40px}.color-preview .label{font-size:13px;font-weight:600}.controls{gap:10px;display:grid}.color-input-group{grid-template-columns:120px 1fr;align-items:center;gap:6px;display:grid}.color-label{color:var(--muted);font-size:12px}.hex-input{font-family:Space Grotesk,sans-serif}.opacity-control{align-items:center;gap:10px;display:flex}.opacity-control input[type=range]{flex:1}.checkbox-control{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.animation-mood-presets{border:1px dashed var(--border);background:#ffffff05;border-radius:12px;padding:12px}.preset-buttons{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.status-animations-list{gap:12px;display:grid}.status-animation-row{border:1px solid var(--border);background:#ffffff05;border-radius:14px;gap:10px;padding:12px;display:grid}.animation-header{justify-content:space-between;align-items:center;display:flex}.animation-controls{gap:12px;display:grid}.animation-category-groups{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.animation-category{border:1px solid var(--border);background:#ffffff05;border-radius:12px;gap:8px;padding:10px;display:grid}.category-label{font-size:12px;font-weight:600}.animation-checkboxes{gap:6px;display:grid}.animation-checkbox{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.animation-speed-control{align-items:center;gap:8px;display:flex}.animation-speed-control select{max-width:180px}.highlight-cards{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;display:grid}.highlight-card{border:1px solid var(--border);background:#ffffff05;border-radius:14px;gap:10px;padding:14px;display:grid}.highlight-card .card-header{justify-content:space-between;align-items:center;display:flex}.color-badge{border:1px solid var(--border);border-radius:10px;width:32px;height:32px}.highlight-card .card-controls{gap:10px;display:grid}@media (max-width:960px){.appearance-v2-layout{grid-template-columns:1fr}.appearance-v2-tabs{flex-flow:wrap}.appearance-v2-tabs .tab{text-align:center;flex:140px}.status-color-row{grid-template-columns:1fr}}.unit-card.anim-blink{animation:2.4s ease-in-out infinite blink-soft}.unit-card.anim-pulse{animation:3s ease-in-out infinite pulse-soft}.unit-card.anim-glow{animation:3s ease-in-out infinite glow-soft}.unit-card.anim-breathe{animation:3.4s ease-in-out infinite breathe-soft}.unit-card.anim-bounce{animation:1s ease-in-out infinite bounce-soft}.unit-card.anim-shimmer{background-image:linear-gradient(120deg,#ffffff14,#ffffff3d,#ffffff14);background-size:200% 200%;animation:2.8s linear infinite shimmer-soft}.unit-card.anim-ripple{animation:1.6s ease-out infinite ripple-soft}.unit-card.anim-sweep{background-size:200% 200%;animation:6s linear infinite sweep-soft}.unit-card.anim-flicker{animation:2.2s ease-in-out infinite flicker-soft}.unit-card.anim-snowflake{position:relative;overflow:hidden}.unit-card.anim-snowflake:after{content:"";opacity:.6;pointer-events:none;background-image:radial-gradient(#ffffff73 1px,#0000 1px),radial-gradient(#ffffff40 1px,#0000 1px);background-size:22px 22px,30px 30px;animation:6s linear infinite snowflake-drift;position:absolute;top:-40%;right:0;bottom:0;left:0}@keyframes snowflake-drift{0%{transform:translateY(-18%)}to{transform:translateY(18%)}}.customer-dashboard{flex-direction:column;gap:24px;width:100%;padding:24px 32px 48px;display:flex}.dashboard-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.dashboard-actions{gap:8px;display:flex}.dashboard-header h2{margin:0;font-size:24px}.dashboard-header p{color:var(--muted);margin:6px 0 0}.dashboard-summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.summary-card{border:1px solid var(--border);background:#0f172a66;border-radius:16px;gap:12px;padding:16px;display:grid}.summary-card h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0;font-size:12px}.summary-list{gap:6px;display:grid}.summary-deck-visual{background:radial-gradient(circle at 20% 20%,#5878ff24,#0000 55%);border-radius:14px;place-items:center;min-height:170px;display:grid;position:relative;overflow:hidden}.summary-ship-icon{opacity:.5;filter:drop-shadow(0 18px 30px #0208168c);width:min(320px,95%);position:absolute}.summary-deck-overlay{z-index:1;gap:6px;min-width:120px;padding:6px 12px;display:grid;position:absolute;top:50%;left:56%;transform:translateY(-50%)}.summary-deck-row{color:var(--text);grid-template-columns:1fr auto;align-items:center;gap:12px;font-size:14px;font-weight:700;display:grid}.summary-deck-row .deck-label{letter-spacing:.08em}.summary-deck-row .deck-count{font-size:16px}.summary-table{gap:8px;display:grid}.summary-table-row{text-align:center;grid-auto-columns:minmax(50px,1fr);grid-auto-flow:column;align-items:center;gap:10px;display:grid}.summary-table-row.labels span{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.summary-type-label{justify-content:center;align-items:center;gap:6px;display:inline-flex}.summary-type-icon{-o-object-fit:contain;object-fit:contain;width:40px;height:40px}.summary-table-row.counts strong{font-size:15px}.summary-divider{background:#ffffff14;height:1px}.summary-hourly{gap:8px;display:grid}.summary-hourly-total{justify-content:space-between;align-items:center;font-weight:600;display:flex}.summary-hourly-total span{color:var(--muted)}.summary-hourly-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:11px}.summary-hourly-decks{flex-wrap:wrap;gap:8px;display:flex}.summary-hourly-pill{background:#ffffff14;border-radius:999px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.dashboard-toolbar{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:12px;display:grid}.dashboard-toolbar .toolbar-field{flex-direction:column;gap:6px;display:flex}.dashboard-toolbar .grow{grid-column:span 2}.dashboard-toolbar .toolbar-row{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.customer-search-bar{z-index:8;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080c14e6;border-radius:16px;gap:8px;padding:16px;display:grid;position:sticky}.customer-search-bar.sticky{top:0}.customer-search-bar.footer{bottom:0}.customer-search-bar label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px}.customer-search-bar input{border-radius:14px;height:52px;padding:0 18px;font-size:18px}.dashboard-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-areas:"loaded ready notarrived shorted example";align-items:start;gap:20px;width:100%;display:grid;overflow-x:hidden}.dashboard-grid.is-collapsed{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-areas:"loaded ready notarrived shorted"}.dashboard-column{border:1px solid var(--border);background:#0f172a59;border-radius:18px;flex-direction:column;min-height:60vh;padding:14px;display:flex}.dashboard-column-loaded{grid-area:loaded}.dashboard-column-ready{grid-area:ready}.dashboard-column-not-arrived{grid-area:notarrived}.dashboard-column-shorted{grid-area:shorted}.dashboard-column-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.dashboard-column-controls{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.dashboard-column-controls label{color:var(--muted);flex-direction:column;gap:4px;font-size:11px;display:flex}.dashboard-column-controls select{border:1px solid var(--border);color:var(--text);background:#0f172a99;border-radius:8px;padding:4px 6px;font-size:11px}.dashboard-column-list{flex-direction:column;align-items:stretch;gap:12px;padding-right:0;display:flex;overflow:visible}.deck-group{flex-direction:column;gap:8px;display:flex}.dashboard-column .deck-group.collapsed{background:#0f172a33;border-radius:12px;width:100%;margin:0;padding:10px}.deck-group-header{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;font-size:11px;list-style:none;display:flex}.deck-group-header::-webkit-details-marker{display:none}.deck-group-list{flex-direction:column;gap:10px;display:flex}.dashboard-card{will-change:transform,opacity;width:100%;transition:transform .3s,opacity .3s;display:block}.dashboard-card .unit-card{width:100%}.dashboard-legend{border:1px solid var(--border);scrollbar-width:none;background:#0f172a59;border-radius:18px;grid-area:example;place-self:start stretch;gap:16px;padding:16px;display:grid;overflow:hidden!important}.dashboard-legend::-webkit-scrollbar{width:0;height:0}.dashboard-legend *,.legend-samples{scrollbar-width:none}.dashboard-legend ::-webkit-scrollbar{width:0;height:0}.legend-samples::-webkit-scrollbar{width:0;height:0}.legend-samples{overflow:hidden!important}.dashboard-legend .unit-card{cursor:default;width:100%}.legend-samples{gap:10px;display:grid}.legend-group-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:4px;font-size:11px}.legend-sample{gap:6px;display:grid}.legend-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px}.legend-header h3{margin:0;font-size:16px}.legend-header p{color:var(--muted);margin:6px 0 0;font-size:12px}.legend-list{gap:8px;display:grid}.legend-item{align-items:center;gap:8px;font-size:13px;display:flex}.legend-swatch{border:1px solid #94a3b866;border-radius:5px;flex-shrink:0;width:14px;height:14px}.legend-note{color:var(--muted);font-size:12px;line-height:1.4}.dashboard-column .unit-group.collapsed{background:#0f172a40;width:100%;margin:0;padding:10px}.dashboard-column .unit-group.collapsed summary{font-size:11px}.dashboard-card.is-entering .unit-card{animation:.7s ease-out dashboard-enter}.dashboard-card.is-leaving{pointer-events:none}.dashboard-card.is-leaving .unit-card{animation:.65s ease-in forwards dashboard-leave}@keyframes dashboard-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes dashboard-leave{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(18px)}}@media (max-width:1500px){.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"loaded ready shorted""notarrived example."}}@media (max-width:1200px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"loaded ready""shorted example""notarrived notarrived"}}@media (max-width:900px){.dashboard-grid{grid-template-columns:1fr;grid-template-areas:"loaded""ready""shorted""notarrived""example"}}@media (max-width:880px){.customer-dashboard{padding:20px}.dashboard-columns{grid-template-columns:1fr}.dashboard-toolbar .grow{grid-column:1/-1}}.online-users-list{flex-direction:column;gap:12px;max-height:600px;display:flex;overflow-y:auto}.online-user-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;transition:all .2s}.online-user-card:hover{border-color:var(--accent);background:var(--panel-2)}.online-user-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.online-user-info{flex:1}.online-user-name{color:var(--text);align-items:center;gap:8px;margin-bottom:4px;font-size:16px;font-weight:600;display:flex}.online-user-email{color:var(--muted);font-size:13px}.online-user-status{align-items:center;gap:8px;display:flex}.status-indicator{border-radius:50%;width:8px;height:8px;display:inline-block}.status-indicator.online{background:var(--accent-3);box-shadow:0 0 8px var(--accent-3);animation:2s ease-in-out infinite pulse-online}@keyframes pulse-online{0%,to{opacity:1}50%{opacity:.6}}.last-seen{color:var(--muted);font-size:12px;font-weight:500}.online-user-meta{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:12px;display:flex}.meta-item{gap:8px;font-size:12px;display:flex}.meta-label{color:var(--muted);min-width:50px;font-weight:500}.meta-value{color:var(--text);opacity:.8}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:6px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-admin{color:#ef4444;background:#ef444426}.badge-interchange{color:#38bdf8;background:#38bdf826}.badge-customer{color:#22c55e;background:#22c55e26}.badge-default{background:var(--border);color:var(--muted)}.empty-state{text-align:center;color:var(--muted);padding:60px 20px}.loading-spinner{text-align:center;color:var(--muted);padding:40px}.error-message{color:#ef4444;border-radius:var(--radius-sm);background:#ef44441a;border:1px solid #ef44444d;margin-bottom:16px;padding:12px 16px}.online-users-indicator{flex-wrap:wrap;align-items:center;gap:8px;margin-right:16px;display:flex}.topbar-left .online-users-indicator{margin-right:0}.online-user-pill{color:var(--text);background:#22c55e26;border:1px solid #22c55e4d;border-radius:12px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:500;display:inline-flex}.online-user-pill .time-ago{color:var(--muted);font-size:11px;font-weight:400}.admin-view-overlay{z-index:60;background:#070a10bf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.admin-view-container{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);z-index:61;flex-direction:column;width:min(1000px,100vw - 32px);max-height:90vh;display:flex;overflow:hidden}.admin-view-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px;display:flex}.admin-view-header h1{color:var(--text);margin:0;font-size:18px;font-weight:600}.admin-view-header .close-btn{padding:8px 12px;font-size:16px}.admin-view-content{flex:1;padding:20px;overflow:auto}.admin-tabs{border-bottom:1px solid var(--border);gap:12px;margin-bottom:20px;padding-bottom:12px;display:flex}.admin-tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.admin-tab:hover{color:var(--text)}.admin-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.admin-panel{gap:16px;display:grid}.admin-panel h2{color:var(--text);margin:0;font-size:14px;font-weight:600}.permissions-preview{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);max-height:400px;padding:12px;overflow:auto}.permissions-preview pre{color:var(--muted);margin:0;font-family:Roboto Mono,monospace}.loading-state{min-height:200px;color:var(--muted);justify-content:center;align-items:center;font-size:14px;display:flex}.permissions-panel{gap:16px;display:grid}.permissions-toolbar{flex-wrap:wrap;gap:12px;display:flex}.permission-message{border-radius:var(--radius-md);border:1px solid var(--border);padding:12px 16px;font-size:13px}.permission-message.success{color:#22c55e;background:#22c55e1a;border-color:#22c55e4d}.permission-message.error{color:#f06a6a;background:#f06a6a1a;border-color:#f06a6a4d}.permissions-categories{gap:8px;display:grid}.permission-category{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);overflow:hidden}.permission-category-header{background:var(--card);border:none;border-bottom:1px solid var(--border);cursor:pointer;width:100%;color:var(--text);align-items:center;gap:12px;padding:12px 16px;font-size:13px;font-weight:500;transition:background .2s;display:flex}.permission-category-header:hover{background:var(--panel-2)}.category-icon{color:var(--muted);justify-content:center;align-items:center;width:16px;font-size:10px;display:flex}.category-name{text-align:left;flex:1}.category-count{color:var(--muted);background:var(--panel);border-radius:4px;padding:2px 8px;font-size:11px}.permission-category-content{gap:10px;padding:12px 16px;display:grid}.permission-toggle{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:flex-start;gap:10px;padding:4px 0;display:flex}.permission-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;margin-top:2px;transition:all .2s;display:flex}.permission-checkbox:hover{border-color:var(--accent);background:#64b6ff1a}.permission-checkbox:checked{background:var(--accent);border-color:var(--accent)}.permission-checkbox:checked:after{content:"✓";color:var(--bg);font-size:12px;font-weight:700;display:block}.permission-text{flex-direction:column;flex:1;gap:2px;display:flex}.permission-label{color:var(--text);font-size:12px;font-weight:500}.permission-description{color:var(--muted);font-size:11px;line-height:1.4}.modal-content-large{width:min(1000px,100vw - 32px)}.bulk-entries-list{flex-direction:column;gap:12px;max-height:400px;margin-bottom:16px;display:flex;overflow-y:auto}.bulk-entry-row{border:1px solid var(--border);background:#ffffff05;border-radius:8px;align-items:flex-start;gap:12px;padding:12px;display:flex}.bulk-entry-inputs{flex:1;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.input-group.small{gap:6px;display:grid}.input-group.small label{color:var(--muted);font-size:12px;font-weight:500}.input-group.small input{border:1px solid var(--border);color:var(--text);background:#ffffff0a;border-radius:4px;padding:6px 8px;font-size:13px}.input-group.small input:focus{border-color:var(--accent);background:#ffffff0f;outline:none}.btn-remove{align-self:center;min-width:80px;padding:6px 12px;font-size:12px}.bulk-mafi-list{gap:14px;margin-bottom:16px;display:grid}.bulk-mafi-stack{background:#64b6ff0f;border:1px solid #64b6ff42;border-radius:12px;gap:10px;padding:12px;display:grid}.bulk-mafi-stack-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.bulk-mafi-stack-header h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text);margin:0;font-size:13px}.bulk-mafi-section-label{color:var(--muted);font-size:12px;font-weight:600}.bulk-mafi-count{max-width:200px}.bulk-mafi-count select{border:1px solid var(--border);color:var(--text);background:#ffffff0a;border-radius:4px;padding:6px 8px;font-size:13px}.bulk-mafi-reloads{gap:8px;display:grid}.top-customers-filter{z-index:50;box-sizing:border-box;background:0 0;border-left:0;flex-direction:column;width:clamp(116px,13vw,152px);height:auto;padding:0 10px 8px;animation:.3s ease-out slideInRight;display:flex;position:fixed;top:0;bottom:auto;right:0;overflow:visible}@media (max-width:900px){.topbar-actions{justify-content:flex-start;width:100%}.foreman-columns{grid-template-columns:1fr}}@media print{@page{size:A4 portrait;margin:10mm 12mm}body *{visibility:hidden!important}.foreman-sheet,.foreman-sheet *{visibility:visible!important}.foreman-sheet{width:186mm;max-width:186mm;box-shadow:none;color:#000;background:#fff;border:none;border-radius:0;margin:0;padding:0;position:absolute;top:0;left:0}.foreman-sheet h1{margin:0;font-size:10pt}.foreman-sheet h2{margin:1mm 0 3mm;font-size:9.5pt}.foreman-header{margin-bottom:3mm}.foreman-columns{gap:6mm;grid-template-columns:1fr 1fr!important}.foreman-section{margin-bottom:2mm}.foreman-section-title{margin-bottom:.5mm;font-size:9pt}.foreman-row{grid-template-columns:1fr 40mm;margin-bottom:.6mm;font-size:8.8pt}.foreman-long-row{margin-bottom:.8mm;font-size:8.8pt}.foreman-input{color:#000;box-shadow:none;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid;background:#fff;border-color:#d0d5db;padding:2px 5px;font-size:8.8pt;line-height:1.25}.foreman-footer{margin-top:4mm;font-size:8.8pt}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.top-customers-list{flex-direction:column;flex:none;gap:4px;margin-top:0;padding:4px 2px;display:flex;overflow:visible}.customer-btn{color:#fff;cursor:pointer;text-align:left;text-shadow:-1px -1px #000000b3,1px -1px #000000b3,-1px 1px #000000b3,1px 1px #000000b3;background:0 0;border:1px solid #ffffff14;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 8px;font-size:12px;transition:all .2s;display:flex}.customer-btn:hover{color:var(--text);background:#ffffff0a;border-color:#ffffff24}.customer-btn.active{color:#fff;background:0 0;border-color:#64b6ff66}.customer-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.customer-count{color:#fff;text-shadow:-1px -1px #000000b3,1px -1px #000000b3,-1px 1px #000000b3,1px 1px #000000b3;background:#ffffff1a;border-radius:3px;flex-shrink:0;margin-left:4px;padding:2px 6px;font-size:11px;font-weight:600}.customer-btn.active .customer-count{color:#fff;background:#64b6ff33}.customer-toggle-btn{border:1px solid var(--border);width:26px;height:26px;color:var(--muted);cursor:pointer;background:#0000000d;border-radius:6px;justify-content:center;align-self:flex-end;align-items:center;margin-top:2px;font-size:14px;display:flex;position:static;transform:rotate(180deg)}.customer-toggle-btn.is-collapsed{margin-top:0;position:absolute;top:4px;right:10px;transform:rotate(0)}.top-customers-filter.collapsed{width:38px;padding:0 6px 8px}.top-customers-filter.collapsed .top-customers-list{display:none}@media (max-width:800px){.top-customers-filter{width:132px}.customer-btn{padding:6px 8px;font-size:11px}.customer-count{font-size:10px}}@media (max-width:600px){.top-customers-filter{border-radius:8px 8px 0 0;width:154px;height:auto;max-height:300px;position:fixed;bottom:0;right:0}}@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-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}@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}}
