[data-theme] .app-header,[data-theme] .app-main,[data-theme] .app-shell,[data-theme] .app-sidebar,[data-theme] .card,[data-theme] .data-table-wrapper,[data-theme] .kanban-card,[data-theme] .kanban-column,[data-theme] .page-wrapper,[data-theme] .stat-card,[data-theme] body{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}@media (prefers-reduced-motion:reduce){[data-theme] .app-header,[data-theme] .app-main,[data-theme] .app-shell,[data-theme] .app-sidebar,[data-theme] body{transition:none!important}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:var(--space-0)}.inset-x-0{left:var(--space-0);right:var(--space-0)}.inset-y-0{top:var(--space-0)}.bottom-0,.inset-y-0{bottom:var(--space-0)}.left-0{left:var(--space-0)}.left-3{left:var(--space-3)}.left-\[18px\]{left:18px}.left-\[27px\]{left:27px}.right-0{right:var(--space-0)}.right-2{right:var(--space-2)}.right-4{right:var(--space-4)}.top-0{top:var(--space-0)}.top-1\/2{top:50%}.top-4{top:var(--space-4)}.top-\[18px\]{top:18px}.z-10{z-index:10}.z-50{z-index:50}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-1{margin-left:var(--space-1);margin-right:var(--space-1)}.mx-auto{margin-left:auto;margin-right:auto}.-mr-8{margin-right:calc(var(--space-8) * -1)}.-mt-8{margin-top:calc(var(--space-8) * -1)}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:var(--space-1)}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.ml-1{margin-left:var(--space-1)}.ml-14{margin-left:3.5rem}.ml-2{margin-left:var(--space-2)}.ml-auto{margin-left:auto}.mr-1{margin-right:var(--space-1)}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:var(--space-2)}.mt-0{margin-top:var(--space-0)}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:var(--space-10)}.h-11{height:2.75rem}.h-12{height:var(--space-12)}.h-2{height:var(--space-2)}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:var(--space-3)}.h-3\.5{height:.875rem}.h-4{height:var(--space-4)}.h-5{height:var(--space-5)}.h-6{height:var(--space-6)}.h-7{height:1.75rem}.h-8{height:var(--space-8)}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.max-h-96{max-height:24rem}.min-h-\[2\.5em\]{min-height:2.5em}.w-0\.5{width:.125rem}.w-1\/4{width:25%}.w-1\/5{width:20%}.w-1\/6{width:16.666667%}.w-10{width:var(--space-10)}.w-11{width:2.75rem}.w-12{width:var(--space-12)}.w-16{width:var(--space-16)}.w-2{width:var(--space-2)}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-24{width:6rem}.w-3{width:var(--space-3)}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:var(--space-4)}.w-48{width:12rem}.w-5{width:var(--space-5)}.w-6{width:var(--space-6)}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:var(--space-8)}.w-9{width:2.25rem}.w-\[140px\]{width:140px}.w-\[180px\]{width:180px}.w-\[18px\]{width:18px}.w-\[1px\]{width:1px}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:var(--space-0)}.min-w-\[20px\]{min-width:20px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-\[1280px\]{max-width:1280px}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.-translate-x-full{--tw-translate-x:-100%}.-translate-x-full,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}.translate-y-1{--tw-translate-y:var(--space-1)}.rotate-180,.translate-y-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.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))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:var(--space-1)}.gap-1\.5{gap:.375rem}.gap-2{gap:var(--space-2)}.gap-2\.5{gap:.625rem}.gap-3{gap:var(--space-3)}.gap-3\.5{gap:.875rem}.gap-4{gap:var(--space-4)}.gap-x-6{-moz-column-gap:var(--space-6);column-gap:var(--space-6)}.gap-y-2{row-gap:var(--space-2)}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-1) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-1) * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-2) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-2) * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-3) * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-4) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-4) * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-5) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-5) * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(var(--space-6) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-6) * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:var(--radius-full)}.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)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-amber-500\/20{border-color:rgba(245,158,11,.2)}.border-blue-500\/20{border-color:rgba(59,130,246,.2)}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-emerald-500\/20{border-color:rgba(16,185,129,.2)}.border-emerald-500\/30{border-color:rgba(16,185,129,.3)}.border-orange-500\/20{border-color:rgba(249,115,22,.2)}.border-red-400{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity,1))}.border-red-500\/20{border-color:rgba(239,68,68,.2)}.border-red-500\/30{border-color:rgba(239,68,68,.3)}.border-slate-500{--tw-border-opacity:1;border-color:rgb(100 116 139/var(--tw-border-opacity,1))}.border-slate-500\/20{border-color:rgba(100,116,139,.2)}.border-slate-600\/20{border-color:rgba(71,85,105,.2)}.border-slate-600\/40{border-color:rgba(71,85,105,.4)}.border-transparent{border-color:transparent}.border-violet-500\/20{border-color:rgba(139,92,246,.2)}.border-yellow-200{--tw-border-opacity:1;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-amber-500\/10{background-color:rgba(245,158,11,.1)}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-blue-500\/15{background-color:rgba(59,130,246,.15)}.bg-border{background-color:var(--border-color)}.bg-emerald-400{--tw-bg-opacity:1;background-color:rgb(52 211 153/var(--tw-bg-opacity,1))}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)}.bg-emerald-500\/15{background-color:rgba(16,185,129,.15)}.bg-emerald-500\/20{background-color:rgba(16,185,129,.2)}.bg-emerald-900{--tw-bg-opacity:1;background-color:rgb(6 78 59/var(--tw-bg-opacity,1))}.bg-orange-500\/10{background-color:rgba(249,115,22,.1)}.bg-red-400{--tw-bg-opacity:1;background-color:rgb(248 113 113/var(--tw-bg-opacity,1))}.bg-red-500\/15{background-color:rgba(239,68,68,.15)}.bg-red-500\/20{background-color:rgba(239,68,68,.2)}.bg-red-900{--tw-bg-opacity:1;background-color:rgb(127 29 29/var(--tw-bg-opacity,1))}.bg-slate-400{--tw-bg-opacity:1;background-color:rgb(148 163 184/var(--tw-bg-opacity,1))}.bg-slate-500\/10{background-color:rgba(100,116,139,.1)}.bg-slate-700\/40{background-color:rgba(51,65,85,.4)}.bg-slate-700\/50{background-color:rgba(51,65,85,.5)}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-violet-500\/10{background-color:rgba(139,92,246,.1)}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-amber-500\/5{--tw-gradient-from:rgba(245,158,11,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(245,158,11,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500\/5{--tw-gradient-from:rgba(59,130,246,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-500\/40{--tw-gradient-from:rgba(16,185,129,.4) var(--tw-gradient-from-position);--tw-gradient-to:rgba(16,185,129,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-emerald-500\/5{--tw-gradient-from:rgba(16,185,129,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(16,185,129,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500\/5{--tw-gradient-from:rgba(249,115,22,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-slate-500\/5{--tw-gradient-from:rgba(100,116,139,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(100,116,139,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-transparent{--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:transparent var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-violet-500\/5{--tw-gradient-from:rgba(139,92,246,.05) var(--tw-gradient-from-position);--tw-gradient-to:rgba(139,92,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-slate-600\/30{--tw-gradient-to:rgba(71,85,105,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),rgba(71,85,105,.3) var(--tw-gradient-via-position),var(--tw-gradient-to)}.via-white\/20{--tw-gradient-to:hsla(0,0%,100%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),hsla(0,0%,100%,.2) var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-amber-600\/10{--tw-gradient-to:rgba(217,119,6,.1) var(--tw-gradient-to-position)}.to-blue-600\/10{--tw-gradient-to:rgba(37,99,235,.1) var(--tw-gradient-to-position)}.to-emerald-600\/10{--tw-gradient-to:rgba(5,150,105,.1) var(--tw-gradient-to-position)}.to-orange-600\/10{--tw-gradient-to:rgba(234,88,12,.1) var(--tw-gradient-to-position)}.to-red-500\/40{--tw-gradient-to:rgba(239,68,68,.4) var(--tw-gradient-to-position)}.to-slate-600\/10{--tw-gradient-to:rgba(71,85,105,.1) var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.to-violet-600\/10{--tw-gradient-to:rgba(124,58,237,.1) var(--tw-gradient-to-position)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-12{padding:var(--space-12)}.p-2{padding:var(--space-2)}.p-2\.5{padding:.625rem}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.p-\[1px\]{padding:1px}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.pb-3{padding-bottom:var(--space-3)}.pb-6{padding-bottom:var(--space-6)}.pl-2{padding-left:var(--space-2)}.pl-9{padding-left:2.25rem}.pr-4{padding-right:var(--space-4)}.pr-8{padding-right:var(--space-8)}.pt-0{padding-top:var(--space-0)}.pt-1{padding-top:var(--space-1)}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:var(--space-3)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace}.text-2xl{font-size:var(--text-2xl)}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[15px\]{font-size:15px}.text-\[8px\]{font-size:8px}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1))}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-emerald-400{--tw-text-opacity:1;color:rgb(52 211 153/var(--tw-text-opacity,1))}.text-emerald-500{--tw-text-opacity:1;color:rgb(16 185 129/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-\[0\.03\]{opacity:.03}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:var(--shadow-lg);--tw-shadow-colored:var(--shadow-lg)}.shadow-md{--tw-shadow:var(--shadow-md);--tw-shadow-colored:var(--shadow-md)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:var(--shadow-sm);--tw-shadow-colored:var(--shadow-sm)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.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{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{font-size:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background:var(--surface-bg)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{border:0;background:none;cursor:pointer}img{max-width:100%;display:block}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--neutral-400)}.scrollbar-thin{scrollbar-width:thin}.scrollbar-thin::-webkit-scrollbar{width:4px;height:4px}.app-shell{display:flex;min-height:100vh;background:var(--surface-bg)}.app-sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:linear-gradient(180deg,#0f172a,#1e293b);color:var(--neutral-400);display:flex;flex-direction:column;z-index:var(--z-fixed);transition:width var(--duration-slow) var(--ease-default);overflow:hidden;border-right:1.5px solid rgba(71,85,105,.4);box-shadow:4px 0 24px rgba(0,0,0,.2)}.app-sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{height:var(--header-height);gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid hsla(0,0%,100%,.06)}.sidebar-header,.sidebar-logo{display:flex;align-items:center;flex-shrink:0}.sidebar-logo{width:40px;height:40px;justify-content:center;border-radius:var(--radius-lg);background:var(--accent-gradient);color:#fff;font-weight:var(--font-bold);font-size:var(--text-md);box-shadow:0 4px 12px rgba(0,120,212,.3);transition:transform var(--duration-normal) var(--ease-spring)}.sidebar-logo:hover{transform:scale(1.05) rotate(-2deg)}.sidebar-brand{font-size:var(--text-md);font-weight:var(--font-bold);color:#fff;white-space:nowrap;overflow:hidden;letter-spacing:-.01em}.app-sidebar.collapsed .sidebar-brand,.app-sidebar.collapsed .sidebar-nav-label,.app-sidebar.collapsed .sidebar-search,.app-sidebar.collapsed .sidebar-section-title{display:none}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-2) var(--space-2)}.sidebar-section-title{font-size:.6875rem;font-weight:var(--font-semibold);color:var(--neutral-500);text-transform:uppercase;letter-spacing:.08em;padding:var(--space-4) var(--space-3) var(--space-2);white-space:nowrap}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-3);height:42px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--neutral-400);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;transition:all var(--duration-normal) var(--ease-default);cursor:pointer;margin-bottom:2px;text-decoration:none;position:relative;overflow:hidden}.sidebar-nav-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%) scaleY(0);width:3px;height:60%;background:var(--accent-gradient);border-radius:0 var(--radius-full) var(--radius-full) 0;transition:transform var(--duration-normal) var(--ease-spring)}.sidebar-nav-item:hover{background:hsla(0,0%,100%,.08);color:#e2e8f0}.sidebar-nav-item.active{background:linear-gradient(135deg,rgba(0,120,212,.15),rgba(147,51,234,.1));color:#fff;box-shadow:0 2px 8px rgba(0,120,212,.2)}.sidebar-nav-item.active:before{transform:translateY(-50%) scaleY(1)}.sidebar-nav-item .nav-icon{width:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;opacity:.8;transition:all var(--duration-normal) var(--ease-default)}.sidebar-nav-item.active .nav-icon,.sidebar-nav-item:hover .nav-icon{opacity:1;transform:scale(1.1)}.sidebar-nav-item .nav-badge{margin-left:auto;min-width:22px;height:20px;padding:0 8px;border-radius:var(--radius-full);background:var(--color-error);color:#fff;font-size:11px;font-weight:var(--font-bold);display:flex;align-items:center;justify-content:center;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.sidebar-search{padding:var(--space-3) var(--space-3) var(--space-2)}.sidebar-search input{width:100%;height:36px;padding:0 var(--space-3);background:hsla(0,0%,100%,.06);border:1px solid hsla(0,0%,100%,.08);border-radius:var(--radius-md);color:#e2e8f0;font-size:var(--text-sm);outline:none;transition:all var(--duration-normal) var(--ease-default)}.sidebar-search input::-moz-placeholder{color:var(--neutral-500)}.sidebar-search input::placeholder{color:var(--neutral-500)}.sidebar-search input:focus{border-color:rgba(0,120,212,.5);background:hsla(0,0%,100%,.1);box-shadow:0 0 0 3px rgba(0,120,212,.1)}.sidebar-footer{padding:var(--space-3);border-top:1px solid hsla(0,0%,100%,.06);flex-shrink:0}.app-main{flex:1;min-width:0;margin-left:var(--sidebar-width);display:flex;flex-direction:column;height:100vh;overflow:hidden;transition:margin-left var(--duration-slow) var(--ease-default);background:var(--surface-bg)}.app-sidebar.collapsed~.app-main{margin-left:var(--sidebar-collapsed-width)}.app-header{height:var(--header-height);justify-content:space-between;gap:var(--space-4);padding:0 var(--space-6);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1.5px solid var(--glass-border);position:sticky;top:0;z-index:var(--z-sticky);isolation:isolate}.app-header,.header-left{display:flex;align-items:center}.header-left{gap:var(--space-3);min-width:0;flex:1}.header-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-center{justify-content:center;flex:0 0 auto;padding:0 var(--space-4)}.header-center,.header-right{display:flex;align-items:center}.header-right{gap:var(--space-2);flex:1;justify-content:flex-end;min-width:0}.header-clock-weather{transition:opacity var(--duration-normal) var(--ease-default)}@media (max-width:1100px){.header-clock-weather{display:none!important}}@media (max-width:1500px){.header-clock-weather .header-cw-weather{display:none!important}}.header-action{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);color:var(--text-tertiary);transition:all var(--duration-normal) var(--ease-default);position:relative}.header-action:hover{background:var(--neutral-100);color:var(--text-primary);transform:translateY(-1px)}.header-search-wrapper{position:relative;display:flex;align-items:center}.header-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:16px;z-index:1;pointer-events:none;transition:color var(--duration-normal) var(--ease-default)}.header-search-wrapper.focused .header-search-icon{color:var(--brand-primary)}.header-search-input{width:240px;height:42px;padding:0 16px 0 42px;border:1.5px solid var(--border-color);border-radius:var(--radius-lg);font-size:var(--text-base);color:var(--text-primary);background:var(--neutral-100);outline:none;transition:all var(--duration-normal) var(--ease-default)}.header-search-input::-moz-placeholder{color:var(--text-muted)}.header-search-input::placeholder{color:var(--text-muted)}.header-search-wrapper.focused .header-search-input{width:360px;border-color:var(--brand-primary);box-shadow:0 0 0 4px var(--brand-primary-light);background:var(--surface-card)}.header-search-wrapper:hover .header-search-input{border-color:var(--brand-primary)!important}.header-divider{width:1px;height:28px;background:var(--border-color);margin:0 4px}.header-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--accent-gradient);color:var(--text-inverse);font-size:var(--text-sm);font-weight:var(--font-bold);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--duration-normal) var(--ease-default);overflow:hidden;border:2px solid transparent;box-shadow:0 2px 8px rgba(0,120,212,.2)}.header-avatar:hover{border-color:var(--brand-primary);box-shadow:0 0 0 4px var(--brand-primary-light),var(--shadow-glow-primary);transform:scale(1.05)}.page-wrapper{flex:1;min-width:0;overflow-y:auto;padding:var(--space-6) var(--space-8);width:100%;animation:pageEnter .3s var(--ease-default)}@keyframes pageEnter{0%{opacity:0}to{opacity:1}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.page-header-left{display:flex;flex-direction:column;gap:var(--space-2)}.page-header-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:var(--leading-tight);letter-spacing:-.02em}.page-header-desc{font-size:var(--text-base);color:var(--text-tertiary)}.page-header-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-muted)}.breadcrumb-item{color:var(--text-muted);transition:color var(--duration-fast)}.breadcrumb-item a:hover{color:var(--text-link)}.breadcrumb-sep{color:var(--neutral-300)}.breadcrumb-current{color:var(--text-secondary);font-weight:var(--font-medium)}.card{background:var(--surface-card);border:1.5px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);transition:all var(--duration-normal) var(--ease-default)}.card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card-header{justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color-light);min-height:48px}.card-header,.card-title{display:flex;align-items:center}.card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);gap:var(--space-2)}.card-body{padding:var(--space-5)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4)}.stat-card{background:var(--surface-card);border:1.5px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-5);display:flex;align-items:flex-start;gap:var(--space-3);transition:all var(--duration-normal) var(--ease-default);box-shadow:var(--shadow-card);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent-gradient);opacity:0;transition:opacity var(--duration-normal) var(--ease-default)}.stat-card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--brand-primary-light);transform:translateY(-4px)}.stat-card:hover:before{opacity:1}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;transition:all var(--duration-normal) var(--ease-spring)}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(-3deg)}.stat-icon.primary{background:var(--brand-primary-bg);color:var(--brand-primary)}.stat-icon.success{background:var(--color-success-bg);color:var(--color-success)}.stat-icon.warning{background:var(--color-warning-bg);color:var(--color-warning)}.stat-icon.error{background:var(--color-error-bg);color:var(--color-error)}.stat-icon.info{background:var(--color-info-bg);color:var(--color-info)}.stat-info{min-width:0}.stat-label{font-size:var(--text-sm);color:var(--text-tertiary);margin-bottom:var(--space-1);font-weight:var(--font-medium)}.stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:var(--leading-tight);letter-spacing:-.02em}.stat-change{font-size:var(--text-xs);font-weight:var(--font-semibold);margin-top:var(--space-2);display:flex;align-items:center;gap:var(--space-1)}.stat-change.up{color:var(--color-success)}.stat-change.down{color:var(--color-error)}.status-tag{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;letter-spacing:.01em}.status-tag,.status-tag:before{transition:all var(--duration-normal) var(--ease-default)}.status-tag:before{content:"";width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-tag:hover{transform:scale(1.02)}.status-tag.todo{background:var(--status-todo-bg);color:var(--status-todo)}.status-tag.todo:before{background:var(--status-todo)}.status-tag.in-progress{background:var(--status-in-progress-bg);color:var(--status-in-progress)}.status-tag.in-progress:before{background:var(--status-in-progress);animation:pulse-dot 2s ease-in-out infinite}.status-tag.review{background:var(--status-review-bg);color:var(--status-review)}.status-tag.review:before{background:var(--status-review)}.status-tag.completed{background:var(--status-completed-bg);color:var(--status-completed)}.status-tag.completed:before{background:var(--status-completed);box-shadow:0 0 8px var(--color-success-glow)}.status-tag.cancelled{background:var(--status-cancelled-bg);color:var(--status-cancelled)}.status-tag.cancelled:before{background:var(--status-cancelled)}.status-tag.blocked{background:var(--status-blocked-bg);color:var(--status-blocked)}.status-tag.blocked:before{background:var(--status-blocked);animation:pulse-dot 1.5s ease-in-out infinite}.status-tag.overdue{background:var(--status-overdue-bg);color:var(--status-overdue)}.status-tag.overdue:before{background:var(--status-overdue);animation:pulse-dot 1s ease-in-out infinite;box-shadow:0 0 12px var(--color-error-glow)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.priority-tag{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.04em;transition:all var(--duration-normal) var(--ease-default)}.priority-tag:hover{transform:scale(1.02)}.priority-tag.urgent{background:var(--priority-urgent-bg);color:var(--priority-urgent);box-shadow:0 0 12px rgba(244,63,94,.2)}.priority-tag.high{background:var(--priority-high-bg);color:var(--priority-high)}.priority-tag.medium{background:var(--priority-medium-bg);color:var(--priority-medium)}.priority-tag.low{background:var(--priority-low-bg);color:var(--priority-low)}.progress-track{height:8px;background:var(--neutral-100);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;border-radius:inherit;background:var(--accent-gradient);transition:width var(--duration-slow) var(--ease-default);position:relative;overflow:hidden}.progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3) 50%,transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-bar.success{background:linear-gradient(90deg,#059669,#10b981)}.progress-bar.warning{background:linear-gradient(90deg,#d97706,#f59e0b)}.progress-bar.error{background:linear-gradient(90deg,#dc2626,#ef4444)}.data-table-wrapper{background:var(--surface-card);border:1.5px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card)}.table-toolbar{justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color-light)}.table-toolbar,.table-toolbar-left{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.table-toolbar-right{display:flex;align-items:center;gap:var(--space-2)}.dense-table{width:100%;border-collapse:collapse}.dense-table th{background:var(--neutral-50);font-weight:var(--font-semibold);color:var(--text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;padding:10px 16px;border-bottom:2px solid var(--border-color);text-align:left;white-space:nowrap;position:sticky;top:0;z-index:1}.dense-table td{padding:10px 16px;border-bottom:1px solid var(--border-color);font-size:var(--text-sm);color:var(--text-primary);vertical-align:middle}.dense-table tbody tr{transition:all var(--duration-normal) var(--ease-default)}.dense-table tbody tr:hover{background:var(--brand-primary-bg)}.dense-table tbody tr:last-child td{border-bottom:none}.data-row-clickable{cursor:pointer}.btn-primary{background:var(--accent-gradient);color:#fff;font-weight:var(--font-semibold);border-radius:var(--radius-md);padding:10px 20px;transition:all var(--duration-normal) var(--ease-default);box-shadow:0 2px 8px rgba(0,120,212,.3);position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);transition:left .5s}.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 4px 16px rgba(0,120,212,.4)}.btn-primary:hover:before{left:100%}.btn-primary:active{transform:translateY(0) scale(.98)}.state-empty,.state-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-6);text-align:center}.state-empty-icon,.state-error-icon{font-size:56px;margin-bottom:var(--space-5);opacity:.4}.state-empty-title,.state-error-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:var(--space-2)}.state-empty-desc,.state-error-desc{font-size:var(--text-base);color:var(--text-tertiary);max-width:400px}.fade-in{animation:fadeIn var(--duration-normal) var(--ease-default)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp var(--duration-slow) var(--ease-spring)}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.stagger-item{opacity:0;animation:staggerIn .4s var(--ease-default) forwards}.stagger-item:first-child{animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(7){animation-delay:.3s}.stagger-item:nth-child(8){animation-delay:.35s}@keyframes staggerIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px;border-radius:var(--radius-sm)}::-moz-selection{background:var(--brand-primary-light);color:var(--brand-primary)}::selection{background:var(--brand-primary-light);color:var(--brand-primary)}@keyframes realtime-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes toastSlideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes toastSlideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes successFlash{0%{background-color:transparent}50%{background-color:var(--color-success-bg)}to{background-color:transparent}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}.avatar-upload-container:hover .avatar-overlay{opacity:1!important}.gpu-accelerated{will-change:transform;transform:translateZ(0)}.scroll-contain{contain:layout style;overflow-y:auto;-webkit-overflow-scrolling:touch}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:1024px){.app-sidebar{transform:translateX(-100%)}.app-sidebar.mobile-open{transform:translateX(0)}.app-main{margin-left:0}.sidebar-overlay{position:fixed;inset:0;background:var(--surface-overlay);z-index:calc(var(--z-fixed) - 1);display:none;backdrop-filter:blur(4px)}.sidebar-overlay.visible{display:block}.stat-grid{grid-template-columns:repeat(2,1fr)}.kanban-board{grid-template-columns:1fr}.mobile-bottom-nav{display:block}.app-header{padding:0 var(--space-4)}.header-title{font-size:var(--text-lg)}.page-wrapper{padding:var(--space-4) var(--space-5) 84px}.header-search-wrapper{display:none}}@media (max-width:768px){.stat-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--space-3)!important}.kanban-board,[style*="grid-template-columns: repeat(3, 1fr)"],div[style*="grid-template-columns: 1fr 1fr"]:not(.filter-grid,.desktop-grid),div[style*="grid-template-columns: 1fr 320px"]{grid-template-columns:1fr!important}.page-header{flex-direction:column;gap:var(--space-3)}.page-header-actions{width:100%}.header-center,.header-clock-weather,.header-divider{display:none}}@media (max-width:640px){.page-wrapper{padding:var(--space-3) var(--space-4) 84px}.page-header{flex-direction:column}.page-header-actions{width:100%}.stat-grid{grid-template-columns:repeat(2,1fr)!important}.table-toolbar{flex-direction:column;align-items:stretch}.mobile-bottom-nav{display:block}.app-main-mobile{padding-bottom:70px}.card-body{padding:var(--space-4)!important}.card-header{padding:var(--space-3) var(--space-4)!important}.dense-table{min-width:auto!important}.data-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:480px){.stat-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--space-2)!important}.page-wrapper{padding:var(--space-2) var(--space-3) 84px}.page-wrapper-mobile{padding:var(--space-2) var(--space-3)}.mobile-bottom-nav-inner{height:56px}.mobile-bottom-nav-icon{font-size:18px}.mobile-bottom-nav-label{font-size:9px}.stat-card{padding:var(--space-3)!important;gap:var(--space-2)!important}.stat-icon{width:36px!important;height:36px!important;font-size:16px!important}.stat-value{font-size:var(--text-xl)!important}}@media (max-width:768px){.notification-settings-layout,.profile-form-grid,.profile-grid{grid-template-columns:1fr!important}.notification-settings-layout{min-height:auto!important}.notification-settings-layout>aside{flex-direction:row!important;border-right:none!important;border-bottom:1px solid var(--border-color)!important;overflow-x:auto;padding:var(--space-2)!important}.notification-settings-layout>aside button{white-space:nowrap;flex-shrink:0}}.news-content h1,.news-content h2,.news-content h3{margin:20px 0 10px;line-height:1.4;color:var(--text-primary)}.news-content h1{font-size:22px}.news-content h2{font-size:18px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.news-content h3{font-size:16px}.news-content p{margin:8px 0}.news-content ol,.news-content ul{margin:8px 0 8px 22px;padding:0}.news-content li{margin:4px 0}.news-content table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px}.news-content td,.news-content th{border:1px solid var(--border-color);padding:8px 10px;text-align:left}.news-content th{background:rgba(99,102,241,.08);font-weight:600}.news-content tr:nth-child(2n) td{background:rgba(0,0,0,.02)}.news-content blockquote{margin:10px 0;padding:8px 14px;border-left:4px solid #6366f1;background:rgba(99,102,241,.06);border-radius:0 8px 8px 0}.news-content code{background:rgba(99,102,241,.1);padding:2px 6px;border-radius:4px;font-size:13px}.news-content img{max-width:100%;border-radius:8px}@media (max-width:640px){.news-content table{display:block;overflow-x:auto;white-space:nowrap}}.rich-editor .rich-editor-body:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.rich-editor .rich-editor-body:focus{outline:none}.rich-editor .rich-editor-body a{color:#4f46e5;text-decoration:underline}.app-footer{padding:10px 16px;text-align:center;background:linear-gradient(135deg,#1e1b4b,#312e81 40%,#4338ca 70%,#6366f1);border-top:1px solid rgba(99,102,241,.3);position:relative;overflow:hidden;flex-shrink:0}.app-footer:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 30% 50%,rgba(139,92,246,.12) 0,transparent 60%),radial-gradient(ellipse at 70% 30%,rgba(99,102,241,.08) 0,transparent 50%);pointer-events:none;animation:footerShimmer 8s ease-in-out infinite alternate}@keyframes footerShimmer{0%{transform:translateX(-3%)}to{transform:translateX(3%)}}.app-footer-text{font-size:12px;font-weight:700;color:#e0e7ff;letter-spacing:.3px;margin-bottom:2px;text-shadow:0 1px 6px rgba(99,102,241,.3);position:relative;z-index:1}.app-footer-copyright{font-size:11px;font-weight:500;color:#a5b4fc;letter-spacing:.5px;position:relative;z-index:1}[data-theme=dark] .app-footer{background:linear-gradient(135deg,#0c0a1f,#1a1744 40%,#2d2a6e 70%,#3730a3);border-top-color:rgba(99,102,241,.2)}[data-theme=dark] .app-footer-text{color:#c7d2fe;text-shadow:0 1px 8px rgba(99,102,241,.5)}[data-theme=dark] .app-footer-copyright{color:#818cf8}@media (max-width:1024px){.app-footer{padding:8px 12px 64px}}@media (max-width:640px){.app-footer-text{font-size:11px}.app-footer-copyright{font-size:10px}.app-footer{padding:6px 10px 58px}}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:var(--text-sm)}.file\:font-medium::file-selector-button{font-weight:500}.last\:pb-0:last-child{padding-bottom:var(--space-0)}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-lg:hover{--tw-shadow:var(--shadow-lg);--tw-shadow-colored:var(--shadow-lg)}.hover\:shadow-lg:hover,.hover\:shadow-md:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:var(--shadow-md);--tw-shadow-colored:var(--shadow-md)}.hover\:shadow-xl:hover{--tw-shadow:var(--shadow-xl);--tw-shadow-colored:var(--shadow-xl);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:translate-x-0\.5,.group:hover .group-hover\:translate-x-full{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-full{--tw-translate-x:100%}.group:hover .group-hover\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}@media (min-width:640px){.sm\:max-w-md{max-width:28rem}.sm\:max-w-sm{max-width:24rem}.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\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(var(--space-2) * var(--tw-space-x-reverse));margin-left:calc(var(--space-2) * calc(1 - var(--tw-space-x-reverse)))}.sm\:p-5{padding:var(--space-5)}.sm\:text-left{text-align:left}.sm\:text-3xl{font-size:var(--text-3xl)}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:var(--space-0)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:var(--space-4);height:var(--space-4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}