/*! tailwindcss v4.1.12 | 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-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@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-gray-100:oklch(96.7% .003 264.542);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-lg:32rem;--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-2xl:1.5rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:var(--background);--color-primary:var(--primary);--color-accent:var(--accent);--color-border:var(--border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-size:var(--font-size)}h1{font-size:var(--text-2xl);font-weight:var(--font-weight-medium);line-height:1.5}h2{font-size:var(--text-xl);font-weight:var(--font-weight-medium);line-height:1.5}h3{font-size:var(--text-lg);font-weight:var(--font-weight-medium);line-height:1.5}h4,label,button{font-size:var(--text-base);font-weight:var(--font-weight-medium);line-height:1.5}input{font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:1.5}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.-top-12{top:calc(var(--spacing)*-12)}.top-0{top:calc(var(--spacing)*0)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-1\/2{top:50%}.top-3\.5{top:calc(var(--spacing)*3.5)}.top-4{top:calc(var(--spacing)*4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing)*-12)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-2{right:calc(var(--spacing)*2)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.-bottom-12{bottom:calc(var(--spacing)*-12)}.bottom-0{bottom:calc(var(--spacing)*0)}.-left-12{left:calc(var(--spacing)*-12)}.left-0{left:calc(var(--spacing)*0)}.left-1{left:calc(var(--spacing)*1)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.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-1{margin-inline:calc(var(--spacing)*-1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3\.5{margin-inline:calc(var(--spacing)*3.5)}.mx-auto{margin-inline:auto}.my-0\.5{margin-block:calc(var(--spacing)*.5)}.my-1{margin-block:calc(var(--spacing)*1)}.-mt-4{margin-top:calc(var(--spacing)*-4)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-auto{margin-top:auto}.-ml-4{margin-left:calc(var(--spacing)*-4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.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}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.size-3\.5{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-full{width:100%;height:100%}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-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)}.h-\[1\.15rem\]{height:1.15rem}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-4{min-height:calc(var(--spacing)*4)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-svh{min-height:100svh}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing)*0)}.w-1{width:calc(var(--spacing)*1)}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-\[100px\]{width:100px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-max{max-width:max-content}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-8{min-width:calc(var(--spacing)*8)}.min-w-9{min-width:calc(var(--spacing)*9)}.min-w-10{min-width:calc(var(--spacing)*10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;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)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y: calc(-50% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing)*1)}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-start{justify-items:start}.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)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*1)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-x-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing)*.5)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.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-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-input-background{background-color:var(--input-background)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/20{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.fill-primary{fill:var(--primary)}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.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)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.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)}.py-6{padding-block:calc(var(--spacing)*6)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground{color:var(--accent-foreground)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab,red,red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,var(--sidebar-foreground)70%,transparent)}}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.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,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.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-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));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-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px 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-none{--tw-shadow:0 0 #0000;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)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + 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-ring\/50{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.ring-ring\/50{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,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-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;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))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.running{animation-play-state:running}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing)*8)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing)*-8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing)*8)!important;height:calc(var(--spacing)*8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing)*0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing)*-4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing)*0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:var(--sidebar-border)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--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)}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *){display:block}.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing)*1.5)}.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:calc(var(--radius) - 2px)}.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(:where(.group\/navigation-menu)[data-viewport=false] *){background-color:var(--popover)}.group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(:where(.group\/navigation-menu)[data-viewport=false] *){color:var(--popover-foreground)}.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--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)}.group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:var(--sidebar-accent-foreground)}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing)*1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing)*2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing)*1)}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing)*7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing)*-2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing)*1)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-primary:hover,.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-primary-foreground:hover{color:var(--primary-foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:ring-4:hover{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + 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)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:bg-primary:focus{background-color:var(--primary)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:text-primary-foreground:focus{color:var(--primary-foreground)}.focus\:ring-2:focus{--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)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--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)}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-disabled\:opacity-50:has(:disabled){opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing)*4)1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.aria-selected\:bg-accent[aria-selected=true]{background-color:var(--accent)}.aria-selected\:bg-primary[aria-selected=true]{background-color:var(--primary)}.aria-selected\:text-accent-foreground[aria-selected=true]{color:var(--accent-foreground)}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--muted-foreground)}.aria-selected\:text-primary-foreground[aria-selected=true]{color:var(--primary-foreground)}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[active\=true\]\:z-10[data-active=true]{z-index:10}.data-\[active\=true\]\:border-ring[data-active=true]{border-color:var(--ring)}.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-accent-foreground[data-active=true]{color:var(--accent-foreground)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-foreground)}.data-\[active\=true\]\:ring-\[3px\][data-active=true]{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + 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)}.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}@media (hover:hover){.data-\[active\=true\]\:hover\:bg-accent[data-active=true]:hover{background-color:var(--accent)}}.data-\[active\=true\]\:focus\:bg-accent[data-active=true]:focus{background-color:var(--accent)}.data-\[active\=true\]\:aria-invalid\:border-destructive[data-active=true][aria-invalid=true]{border-color:var(--destructive)}.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[error\=true\]\:text-destructive[data-error=true]{color:var(--destructive)}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing)*8)}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(var(--spacing)*52)}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(var(--spacing)*52*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(var(--spacing)*52)}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(var(--spacing)*52*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[orientation\=horizontal\]\:h-4[data-orientation=horizontal]{height:calc(var(--spacing)*4)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing)*44)}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing)*1.5)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing)*0)}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:calc(var(--spacing)*1)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(var(--spacing)*2*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(var(--spacing)*2)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(var(--spacing)*2*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(var(--spacing)*2)}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing)*9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing)*8)}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab,var(--destructive)90%,transparent)}}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing)*12)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + 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)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing)*2)}.data-\[state\=active\]\:bg-card[data-state=active]{background-color:var(--card)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--accent)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--accent-foreground)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-scale:.95}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:var(--accent)}.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:var(--accent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-switch-background[data-state=unchecked]{background-color:var(--switch-background)}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=outline\]\:border-l-0[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\[variant\=outline\]\:shadow-xs[data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[variant\=outline\]\:first\:border-l[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction=bottom]{inset-inline:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:calc(var(--spacing)*24)}.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction=bottom]{max-height:80vh}.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction=left]{inset-block:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction=left]{left:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction=left]{width:75%}.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction=right]{inset-block:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction=right]{right:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction=right]{width:75%}.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction=top]{inset-inline:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction=top]{top:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:calc(var(--spacing)*24)}.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}@media (min-width:40rem){.sm\:block{display:block}.sm\:flex{display:flex}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing)*2.5)}.sm\:pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.sm\:pl-2\.5{padding-left:calc(var(--spacing)*2.5)}.sm\:text-left{text-align:left}.data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction=left],.data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction=right]{max-width:var(--container-sm)}}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing)*2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing)*0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--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)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing)*2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\:data-\[state\=unchecked\]\:bg-card-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--card-foreground)}.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab,var(--input)80%,transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--muted-foreground)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:var(--border)}@supports (color:color-mix(in lab,red,red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:color-mix(in oklab,var(--border)50%,transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:var(--border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:var(--border)}.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing)*1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing)*0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing)*5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing)*12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing)*3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing)*5)}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\>\.day-range-end\)\]\:rounded-r-md:has(>.day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\>\.day-range-start\)\]\:rounded-l-md:has(>.day-range-start){border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\)\]\:rounded-md:has([aria-selected]){border-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]){background-color:var(--accent)}.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:first-child:has([aria-selected]){border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:last-child:has([aria-selected]),.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing)*0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing)*2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}.\[\&\:last-child\]\:pb-6:last-child{padding-bottom:calc(var(--spacing)*6)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing)*2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing)*3)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing)*2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing)*3)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing)*-2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing)*-2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}@media (hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary)90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--font-size:16px;--background:#fff;--foreground:oklch(14.5% 0 0);--card:#fff;--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:#030213;--primary-foreground:oklch(100% 0 0);--secondary:oklch(95% .0058 264.53);--secondary-foreground:#030213;--muted:#ececf0;--muted-foreground:#717182;--accent:#e9ebef;--accent-foreground:#030213;--destructive:#d4183d;--destructive-foreground:#fff;--border:#0000001a;--input:transparent;--input-background:#f3f3f5;--switch-background:#cbced4;--font-weight-medium:500;--font-weight-normal:400;--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--radius:.625rem;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:#030213;--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(14.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(14.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(98.5% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(39.6% .141 25.723);--destructive-foreground:oklch(63.7% .237 25.331);--border:oklch(26.9% 0 0);--input:oklch(26.9% 0 0);--ring:oklch(43.9% 0 0);--font-weight-medium:500;--font-weight-normal:400;--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(26.9% 0 0);--sidebar-ring:oklch(43.9% 0 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-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}:root{--color-primary: #1F3A5F;--color-secondary: #5B728A;--color-accent: #2C8C7B;--color-bg-app: #F6F8FB;--color-bg-surface: #FFFFFF;--color-bg-section: #EEF2F6;--color-bg-hover: #F6F8FB;--color-border: #D9E1EA;--color-text-primary: #1B2430;--color-text-secondary: #5F6B7A;--color-text-disabled: #9AA6B2;--color-text-inverse: #FFFFFF;--color-success: #2E8B57;--color-error: #D64545;--color-warning: #D98E04;--color-info: #2F6FED;--color-success-bg: #E8F6EE;--color-error-bg: #FDECEC;--color-warning-bg: #FFF4DD;--color-info-bg: #EAF1FF;--color-success-text: #2E8B57;--color-error-text: #D64545;--color-warning-text: #D98E04;--color-info-text: #2F6FED;--color-gray-50: #F8FAFC;--color-gray-100: #F1F5F9;--color-gray-200: #E2E8F0;--color-gray-300: #CBD5E1;--color-gray-400: #94A3B8;--color-gray-500: #64748B;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1E293B;--color-gray-900: #0F172A;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Courier New", monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-4xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-xs: 16px;--line-height-sm: 18px;--line-height-base: 20px;--line-height-lg: 24px;--line-height-xl: 26px;--line-height-2xl: 28px;--line-height-3xl: 32px;--line-height-4xl: 40px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--z-dropdown: 1000;--z-sticky: 1020;--z-modal: 1050;--z-tooltip: 1070}*{box-sizing:border-box}body{margin:0;padding:0;font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text-primary);background-color:#fafbfc;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11"}@media (max-width: 768px){html,body{overflow-x:clip;max-width:100vw}#root,.app-layout,.page-content{overflow-x:hidden;max-width:100%}}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:1.2}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-4xl)}.page-header h1{font-size:24px;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}h2{font-size:var(--font-size-3xl);line-height:var(--line-height-3xl)}h3{font-size:var(--font-size-2xl);line-height:var(--line-height-2xl)}h4{font-size:var(--font-size-xl);line-height:var(--line-height-xl)}p{margin:0}button{font-family:var(--font-family);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-family);font-size:var(--font-size-base)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}table{border-collapse:collapse;width:100%}.back-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;color:var(--color-text-secondary, #64748b);cursor:pointer;transition:background .15s,color .15s;text-decoration:none}.back-btn:hover{background:var(--color-surface, #f8fafc);color:var(--color-text, #1e293b);text-decoration:none}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em;white-space:nowrap;line-height:1.6}.status-badge--success{background:#dcfce7;color:#166534}.status-badge--warning{background:#fef9c3;color:#854d0e}.status-badge--danger{background:#fee2e2;color:#991b1b}.status-badge--info{background:#dbeafe;color:#1e40af}.status-badge--neutral{background:#f1f5f9;color:#475569}.status-badge--expense{background:#fee2e2;color:#991b1b}.status-badge--income{background:#dcfce7;color:#166534}.status-badge--approved{background:#ede9fe;color:#5b21b6}.status-badge--posted{background:#e0f2fe;color:#075985}.status-badge--paid{background:#dcfce7;color:#166534}.status-badge--archived{background:#e2e8f0;color:#334155}.status-badge--completed{background:#ccfbf1;color:#115e59}.page-header:has(>.cpm-back-btn){flex-direction:column!important;align-items:flex-start!important;gap:4px}.cpm-back-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--color-primary, #0d9488);border-radius:var(--radius-md, 6px);background:transparent;color:var(--color-primary, #0d9488);font-size:var(--font-size-sm, 13px);font-weight:var(--font-weight-medium, 500);cursor:pointer;text-decoration:none;transition:background .15s,color .15s;margin-bottom:8px}.cpm-back-btn:hover{background:var(--color-primary, #0d9488);color:#fff}@keyframes spin{to{transform:rotate(360deg)}}#root{width:100%}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.w-full{width:100%}.h-full{height:100%}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.text-secondary{color:var(--color-text-secondary)}.rounded{border-radius:var(--radius-md)}.shadow{box-shadow:var(--shadow-md)}@media (max-width: 768px){.mobile-card-table{border-collapse:separate;border-spacing:0}.mobile-card-table thead{display:none}.mobile-card-table tbody{display:flex;flex-direction:column;gap:10px}.mobile-card-table tbody tr{display:block;background:#fff;border-radius:12px;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 4px #0000000d;overflow:hidden;padding:0}.mobile-card-table tbody td{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border:none;border-bottom:1px solid rgba(0,0,0,.05);font-size:13px;min-height:40px;text-align:right;word-break:break-word}.mobile-card-table tbody td:last-child{border-bottom:none}.mobile-card-table tbody td[data-label]:not([data-label=Actions]):before{content:attr(data-label);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#64748b;flex-shrink:0;text-align:left;white-space:nowrap}.mobile-card-table tbody td[data-label=Actions]{justify-content:flex-end;gap:8px;background:#f8fafccc}.mobile-card-table tbody td:first-child{background:#1f3a5f08;font-weight:600;font-size:14px;text-align:left;justify-content:flex-start}.mobile-card-table tbody td:first-child:before{display:none}.mobile-card-table tbody td:empty{display:none}.mobile-card-table tbody tr.clickable-row,.mobile-card-table tbody tr[style*=cursor]{cursor:pointer}}.table-scroll-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px}@media (max-width: 768px){.table-scroll-wrap table{min-width:600px}}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start!important;gap:10px!important;padding-bottom:12px!important}.page-header-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%}.page-header-actions .btn,.page-header-actions button,.page-header-actions a{flex:1;min-width:120px;justify-content:center}.filter-row,.filters-row,.toolbar-row,.search-filter-row{flex-wrap:wrap!important;gap:8px!important}.filter-row>*,.filters-row>*,.toolbar-row>*{flex:1;min-width:140px}.two-col-grid,.detail-grid,.form-grid-2col{grid-template-columns:1fr!important}.card{border-radius:10px!important}.stats-grid,.kpi-grid{grid-template-columns:1fr 1fr!important}}@media (max-width: 768px){.page-title,h1.page-title{font-size:20px!important}.page-subtitle{font-size:13px!important}}@media (max-width: 768px){input[type=text],input[type=email],input[type=number],input[type=date],input[type=search],input[type=tel],input[type=password],select,textarea{font-size:16px!important}.form-group,.field-group{width:100%!important}.form-actions{flex-direction:column-reverse;gap:8px}.form-actions .btn,.form-actions button{width:100%;justify-content:center}}@media (max-width: 768px){.main-content{padding-bottom:max(20px,env(safe-area-inset-bottom))!important}}.ph-scroll-progress{position:fixed;top:0;left:0;height:3px;background:#2c8c7b;z-index:201;transition:width .08s linear;pointer-events:none;border-radius:0 2px 2px 0}.public-header{position:fixed;top:0;left:0;right:0;z-index:200;background:#fff;border-bottom:1px solid rgba(0,0,0,.07);box-shadow:0 1px 3px #0000000a;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);transition:background .25s ease,backdrop-filter .25s ease,-webkit-backdrop-filter .25s ease,box-shadow .25s ease,border-color .25s ease}.public-header--scrolled{background:#ffffffd9;backdrop-filter:blur(14px) saturate(180%);-webkit-backdrop-filter:blur(14px) saturate(180%);border-bottom-color:#00000017;box-shadow:0 2px 20px #00000012}.public-header-container{max-width:1520px;margin:0 auto;padding:1rem 2.5rem;display:flex;justify-content:space-between;align-items:center}.public-header-logo{display:flex;align-items:baseline;gap:.75rem;background:none;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.public-header-logo h1{font-size:1.75rem;font-weight:700;margin:0;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.public-header-logo span{font-size:.875rem;color:var(--color-text-secondary)}.public-nav{display:flex;align-items:center;gap:2rem}.nav-link{background:none;border:none;color:var(--color-text-primary);cursor:pointer;padding:.5rem 0;font-size:.9375rem;transition:color .2s}.nav-link:hover{color:#2c8c7b}.nav-link-active{color:#2c8c7b;font-weight:600;position:relative}.nav-link-active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#2c8c7b;border-radius:1px}.nav-login-btn{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;border:none;padding:.625rem 1.5rem;border-radius:8px;cursor:pointer;font-size:.9375rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #1f3a5f40;order:1}.nav-login-btn:hover{background:linear-gradient(135deg,#1a2f4c,#237266);transform:translateY(-2px);box-shadow:0 4px 12px #1f3a5f59}.mobile-menu-toggle{display:none;background:none;border:none;color:#2c8c7b;cursor:pointer;padding:.5rem}.ph-spacer{height:73px;flex-shrink:0}.ph-back-to-top{position:fixed;bottom:max(2rem,calc(env(safe-area-inset-bottom) + 1rem));right:1.75rem;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #1f3a5f59;z-index:150;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}.ph-back-to-top--visible{opacity:1;transform:translateY(0);pointer-events:auto}.ph-back-to-top:hover{background:linear-gradient(135deg,#1a2f4c,#237266);box-shadow:0 6px 20px #1f3a5f73;transform:translateY(-1px)}.ph-back-to-top--visible:hover{transform:translateY(-1px)}.ph-back-to-top:focus-visible{outline:2px solid #2C8C7B;outline-offset:3px}@media (max-width: 768px){.public-header-container{padding:.875rem 1.25rem}.public-header-logo h1{font-size:1.5rem}.public-header-logo span{display:none}.mobile-menu-toggle{display:block;padding:.625rem;margin-right:-.625rem}.public-nav{position:fixed;top:60px;left:0;right:0;background:#fffffff7;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);flex-direction:column;gap:0;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 4px 16px #00000014;transform:translateY(-100%);opacity:0;pointer-events:none;transition:transform .3s ease,opacity .3s ease;max-height:calc(100vh - 60px);overflow-y:auto;z-index:199}.public-nav.mobile-open{transform:translateY(0);opacity:1;pointer-events:all}.nav-link,.nav-login-btn{width:100%;text-align:left;padding:1rem 1.5rem;border-radius:0;font-size:1rem;min-height:44px;display:flex;align-items:center;order:unset}.nav-link{border-bottom:1px solid rgba(0,0,0,.05)}.nav-login-btn{background:none;color:#1f3a5f;box-shadow:none;margin-top:.5rem;border-top:2px solid var(--color-border);border-bottom:1px solid rgba(0,0,0,.05);padding-top:1.25rem;font-weight:700}.nav-login-btn:hover{background:#2c8c7b1a;color:#1f3a5f;transform:none}.ph-spacer{height:60px}.ph-back-to-top{right:1rem;width:42px;height:42px}}@media (max-width: 480px){.public-header-container{padding:.75rem 1rem}.public-header-logo h1{font-size:1.375rem}.mobile-menu-toggle{padding:.5rem}.public-nav{top:56px;max-height:calc(100vh - 56px)}.nav-link,.nav-login-btn{padding:.875rem 1.25rem;font-size:.9375rem}.ph-spacer{height:56px}}@media (hover: none) and (pointer: coarse){.nav-link,.nav-login-btn,.mobile-menu-toggle{-webkit-tap-highlight-color:transparent}.nav-link:active,.nav-login-btn:active{background:#2c8c7b26}.mobile-menu-toggle:active{opacity:.6}.ph-back-to-top:active{opacity:.85}}@media (prefers-reduced-motion: reduce){.ph-back-to-top,.public-header{transition:none}}.pf-footer{background:#1b2430;color:#fff;padding:3rem 2rem 0;padding-left:calc(2rem + env(safe-area-inset-left));padding-right:calc(2rem + env(safe-area-inset-right));padding-bottom:0}.pf-container{max-width:1100px;margin:0 auto}.pf-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.6fr;gap:3rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.pf-brand{display:flex;flex-direction:column;gap:.75rem}.pf-brand-name{font-size:1.375rem;font-weight:700;background:linear-gradient(135deg,#2c8c7b,#5ba8a0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.pf-brand-desc{margin:0;font-size:.875rem;color:#ffffff9e;line-height:1.7;max-width:280px}.pf-brand-tagline{margin:0;font-size:.8125rem;color:#fff6;font-style:italic;line-height:1.5}.pf-col{display:flex;flex-direction:column;gap:0}.pf-col-heading{margin:0 0 1rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#ffffff73}.pf-link{background:none;border:none;padding:0;margin-bottom:.75rem;font-size:.9rem;color:#ffffffad;text-align:left;cursor:pointer;font-family:inherit;line-height:1.5;transition:color .18s}.pf-link:hover{color:#2c8c7b}.pf-cta-btn{display:inline-flex;align-items:center;gap:6px;padding:.55rem 1.1rem;border-radius:7px;background:#2c8c7b;color:#fff;border:none;font-size:.875rem;font-weight:600;cursor:pointer;font-family:inherit;margin-bottom:1rem;transition:background .18s,transform .18s;align-self:flex-start}.pf-cta-btn:hover{background:#237266;transform:translateY(-1px)}.pf-email{display:inline-flex;align-items:center;gap:6px;margin-top:.5rem;font-size:.875rem;color:#ffffff8c;text-decoration:none;transition:color .18s}.pf-email:hover{color:#2c8c7b;text-decoration:none}.pf-bottom{padding:1.25rem 0;padding-bottom:calc(1.25rem + env(safe-area-inset-bottom))}.pf-copyright{margin:0;font-size:.8125rem;color:#ffffff59}@media (max-width: 900px){.pf-grid{grid-template-columns:1fr 1fr;gap:2rem 3rem}.pf-brand{grid-column:1 / -1}.pf-brand-desc{max-width:480px}}@media (max-width: 540px){.pf-footer{padding-top:2.5rem}.pf-grid{grid-template-columns:1fr;gap:1.75rem}.pf-brand{grid-column:auto}.pf-brand-desc{max-width:100%}.pf-bottom{padding-top:1rem}}.landing-page{min-height:100vh;background:#fff}html{scroll-behavior:smooth}section{scroll-margin-top:73px}@media (max-width: 768px){section{scroll-margin-top:60px}}@media (max-width: 480px){section{scroll-margin-top:56px}}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg,video{max-width:100%;height:auto}*,*:before,*:after{box-sizing:border-box}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #1f3a5f4d;user-select:none;-webkit-user-select:none}.btn-primary:hover{background:linear-gradient(135deg,#1a2f4c,#237266);transform:translateY(-2px);box-shadow:0 8px 20px #1f3a5f66}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;background:transparent;color:var(--color-text-primary);border:2px solid var(--color-border);border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;user-select:none;-webkit-user-select:none}.btn-secondary:hover{border-color:#2c8c7b;color:#1f3a5f;background:#2c8c7b14}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;background:transparent;color:#1f3a5f;border:2px solid #2C8C7B;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-outline:hover{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;border-color:transparent}.full-width{width:100%}.hero-section{background:linear-gradient(135deg,#ebf1f7,#e8f5f3);padding:5rem 2rem 4rem;overflow:hidden;position:relative}.hero-section:before{content:"";position:absolute;top:0;right:0;width:40%;height:100%;background:radial-gradient(circle at top right,rgba(31,58,95,.06),rgba(44,140,123,.04) 50%,transparent 70%);pointer-events:none}.hero-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;position:relative}.hero-content{z-index:2;max-width:100%}.hero-status-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem .875rem;background:#fff;border:1px solid rgba(44,140,123,.22);border-radius:50px;font-size:.8125rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:1.5rem;box-shadow:0 1px 4px #0000000f;user-select:none}.hero-status-dot{width:7px;height:7px;border-radius:50%;background:#16a34a;flex-shrink:0;animation:status-pulse 2.4s ease-in-out infinite}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.55}}.hero-badge{display:inline-flex;align-items:center;padding:.5rem 1.25rem;background:#fff;border-radius:50px;margin-bottom:2rem;box-shadow:0 2px 12px #00000014}.hero-badge span{font-size:.875rem;font-weight:600;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-title{font-size:3.75rem;line-height:1.1;margin:0 0 1.5rem;color:var(--color-text-primary)}.gradient-text{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-phrase-wrap{display:block;min-height:1.1em;overflow:visible}.hero-phrase{display:block;will-change:opacity,transform}@keyframes hero-phrase-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-phrase-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.hero-phrase--enter{animation:hero-phrase-in .45s cubic-bezier(.25,.46,.45,.94) forwards}.hero-phrase--exit{animation:hero-phrase-out .45s cubic-bezier(.55,0,1,.45) forwards}@media (prefers-reduced-motion: reduce){.hero-phrase--enter,.hero-phrase--exit{animation:none;opacity:1;transform:none}}.hero-subtitle{font-size:1.25rem;line-height:1.7;color:var(--color-text-secondary);margin:0 0 2.5rem;max-width:540px}.hero-actions{display:flex;gap:1rem;margin-bottom:3rem}.hero-benefits{display:flex;flex-direction:column;gap:1.25rem}.benefit-item{display:flex;align-items:flex-start;gap:1rem}.benefit-icon{width:40px;height:40px;background:linear-gradient(135deg,#1f3a5f1a,#2c8c7b26);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#1f3a5f;flex-shrink:0;box-shadow:0 2px 8px #1f3a5f1a}.benefit-title{font-weight:600;color:var(--color-text-primary);margin-bottom:.25rem}.benefit-desc{font-size:.875rem;color:var(--color-text-secondary)}.hero-visual{position:relative;height:500px}.floating-card{position:absolute;background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #0000001f;display:flex;gap:1rem;animation:float 3s ease-in-out infinite}.floating-card.card-1{top:0;right:0;animation-delay:0s}.floating-card.card-2{top:50%;right:10%;transform:translateY(-50%);animation-delay:.5s}.floating-card.card-3{bottom:0;right:5%;animation-delay:1s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.card-icon{width:48px;height:48px;background:linear-gradient(135deg,#1f3a5f26,#2c8c7b33);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#1f3a5f;flex-shrink:0}.card-content{min-width:120px}.card-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.card-value{font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.25rem}.card-trend{font-size:.875rem;font-weight:600}.card-trend.positive{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-container{max-width:1200px;margin:0 auto;padding:4rem 2rem}.section-header{text-align:center;margin-bottom:4rem}.section-label{display:inline-block;font-size:.875rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:1rem;padding:.5rem 1rem;background:linear-gradient(135deg,#1f3a5f1a,#2c8c7b1a);border-radius:50px;-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;background-clip:text;word-break:keep-all;white-space:nowrap}.section-label.green{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-header h2{font-size:2.75rem;color:var(--color-text-primary);margin:0 0 1rem;line-height:1.2}.section-header p{font-size:1.125rem;color:var(--color-text-secondary);max-width:600px;margin:0 auto}.features-section{background:#fafbfc}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.feature-card{background:#fff;padding:2.5rem;border-radius:16px;border:1px solid var(--color-border);transition:all .3s ease}.feature-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px #1f3a5f26;border-color:#2c8c7b}.feature-icon{width:56px;height:56px;background:linear-gradient(135deg,#1f3a5f26,#2c8c7b33);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#1f3a5f;margin-bottom:1.5rem}.feature-card h3{font-size:1.25rem;color:var(--color-text-primary);margin:0 0 1rem;font-weight:700}.feature-card p{color:var(--color-text-secondary);line-height:1.7;margin:0;font-size:.9375rem}.value-prop-section{background:#fff}.value-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5rem}.value-content h2{font-size:2.25rem;margin:1rem 0 2.5rem;color:var(--color-text-primary);line-height:1.3}.problem-list,.solution-list{display:flex;flex-direction:column;gap:2rem}.problem-item,.solution-item{display:flex;align-items:flex-start;gap:1.25rem}.problem-icon{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:#d645451a;border-radius:10px}.check-icon{width:44px;height:44px;flex-shrink:0;color:#1f3a5f;padding:10px;background:linear-gradient(135deg,#1f3a5f26,#2c8c7b33);border-radius:10px}.problem-item h4,.solution-item h4{font-size:1.125rem;margin:0 0 .5rem;color:var(--color-text-primary)}.problem-item p,.solution-item p{margin:0;color:var(--color-text-secondary);line-height:1.6;font-size:.9375rem}.security-section{background:linear-gradient(to bottom,#1f3a5f,#0f2340 18%,#1b3a5c 60%,#0e2a28);position:relative;overflow:hidden}.security-section:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.14) 0%,transparent 120px),radial-gradient(ellipse at 20% 50%,rgba(44,140,123,.12) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(31,58,95,.2) 0%,transparent 50%);pointer-events:none}.security-section .section-container{position:relative}.security-section .section-header h2{color:#fff}.security-section .section-header p{color:#ffffffb8}.security-label{background:linear-gradient(135deg,#2c8c7b,#4fc3a8)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}.cert-strip{display:flex;align-items:center;justify-content:center;gap:0;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:1.75rem 2.5rem;margin-bottom:4rem;flex-wrap:wrap;gap:1.5rem}.cert-badge{display:flex;align-items:center;gap:.875rem;flex:1;min-width:140px;justify-content:center}.cert-icon{width:48px;height:48px;background:linear-gradient(135deg,#2c8c7b4d,#2c8c7b26);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#4fc3a8;flex-shrink:0;border:1px solid rgba(44,140,123,.3)}.cert-info{text-align:left}.cert-name{font-size:1.0625rem;font-weight:700;color:#fff;letter-spacing:.01em}.cert-desc{font-size:.8125rem;color:#ffffff8c;margin-top:2px}.cert-divider{width:1px;height:48px;background:#ffffff26;flex-shrink:0}.security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3.5rem}.security-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;transition:all .25s ease}.security-card:hover{background:#ffffff17;border-color:#2c8c7b66;transform:translateY(-4px)}.security-card-icon{width:48px;height:48px;background:linear-gradient(135deg,#2c8c7b40,#2c8c7b1a);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#4fc3a8;margin-bottom:1.25rem;border:1px solid rgba(44,140,123,.25)}.security-card h3{font-size:1.0625rem;font-weight:700;color:#fff;margin:0 0 .75rem}.security-card p{font-size:.9rem;color:#ffffffa6;line-height:1.7;margin:0}.security-infra{background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:2.5rem 3rem;margin-bottom:2rem}.security-infra h3{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 1rem}.security-infra p{font-size:.9875rem;color:#ffffffad;line-height:1.75;margin:0 0 1rem;max-width:780px}.security-infra p:last-of-type{margin-bottom:2rem}.security-infra strong{color:#ffffffe6;font-weight:600}.infra-stats{display:flex;align-items:center;gap:0;border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;flex-wrap:wrap;gap:1.5rem}.infra-stat{flex:1;min-width:120px}.infra-stat-value{font-size:1.375rem;font-weight:800;background:linear-gradient(135deg,#4fc3a8,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.25rem}.infra-stat-label{font-size:.8125rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px}.infra-stat-divider{width:1px;height:40px;background:#ffffff1f;flex-shrink:0}.security-rbac{display:flex;align-items:center;justify-content:space-between;gap:3rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:2.5rem 3rem}.rbac-text h3{font-size:1.375rem;font-weight:700;color:#fff;margin:0 0 .875rem}.rbac-text p{font-size:.9875rem;color:#ffffffa6;line-height:1.7;margin:0;max-width:560px}.rbac-roles{display:flex;gap:.75rem;flex-shrink:0;flex-wrap:wrap}.role-chip{padding:.5rem 1.25rem;border-radius:50px;font-size:.875rem;font-weight:700;border:1px solid}.role-chip.admin{background:#d6454526;color:#ff9090;border-color:#d645454d}.role-chip.manager{background:#2c8c7b26;color:#4fc3a8;border-color:#2c8c7b4d}.role-chip.viewer{background:#4f86d626;color:#90b8ff;border-color:#4f86d64d}.role-chip.custom{background:#ffffff14;color:#ffffffa6;border-color:#ffffff26}@media (max-width: 992px){.security-grid{grid-template-columns:repeat(2,1fr)}.security-rbac{flex-direction:column;align-items:flex-start;gap:2rem}.cert-divider{display:none}}@media (max-width: 768px){.security-grid{grid-template-columns:1fr;gap:1.25rem}.cert-strip{padding:1.5rem;justify-content:flex-start;gap:1.25rem}.cert-badge{min-width:120px;flex:unset;justify-content:flex-start}.security-infra{padding:2rem 1.5rem}.security-infra h3{font-size:1.25rem}.infra-stats{gap:1.25rem}.infra-stat-divider{display:none}.infra-stat{min-width:100px}.security-rbac{padding:2rem 1.5rem}.rbac-text h3{font-size:1.125rem}}.pricing-section{background:#fafbfc}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:100%}@media (min-width: 769px) and (max-width: 992px){.pricing-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}.pricing-card{background:#fff;border:2px solid var(--color-border);border-radius:20px;padding:2.5rem;display:flex;flex-direction:column;position:relative;transition:all .3s ease}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px #0000001f}.pricing-card.highlighted{border-color:#2c8c7b;border-width:3px;box-shadow:0 8px 32px #1f3a5f33}.popular-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;padding:.5rem 1.5rem;border-radius:50px;font-size:.8125rem;font-weight:700;box-shadow:0 4px 12px #1f3a5f4d}.plan-header h3{font-size:1.5rem;color:var(--color-text-primary);margin:0 0 .5rem}.plan-description{color:var(--color-text-secondary);margin:0 0 2rem;font-size:.9375rem}.plan-price{margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid var(--color-bg-app)}.plan-price-main{display:flex;align-items:baseline;gap:.375rem;flex-wrap:wrap}.price-amount{font-size:3.5rem;font-weight:800;color:var(--color-text-primary);line-height:1}.price-period{font-size:1.125rem;color:var(--color-text-secondary);font-weight:500}.plan-price-note{margin:.625rem 0 0;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.5}.plan-features{list-style:none;padding:0;margin:0 0 2.5rem;flex-grow:1}.plan-features li{display:flex;align-items:center;gap:.875rem;padding:.75rem 0;color:var(--color-text-primary);font-size:.9375rem}.plan-features li svg{color:#2c8c7b;flex-shrink:0}.plan-btn{width:100%;padding:1rem;border-radius:12px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.contact-section{background:#fff}.contact-wrapper{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:start}.contact-info h2{font-size:2.5rem;margin:1rem 0 1.5rem;color:var(--color-text-primary);line-height:1.2}.contact-intro{font-size:1.125rem;color:var(--color-text-secondary);line-height:1.7;margin-bottom:3rem}.contact-methods{display:flex;flex-direction:column;gap:2rem}.contact-method{display:flex;gap:1.25rem;align-items:flex-start}.method-icon{width:48px;height:48px;background:linear-gradient(135deg,#1f3a5f26,#2c8c7b33);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#1f3a5f;flex-shrink:0}.contact-method h4{margin:0 0 .5rem;color:var(--color-text-primary);font-size:1rem}.contact-method a{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-decoration:none;font-weight:600;transition:opacity .2s}.contact-method a:hover{opacity:.8}.contact-method p{margin:0;color:var(--color-text-secondary);line-height:1.6}.contact-form-wrapper{background:#fafbfc;padding:3rem;border-radius:20px;border:1px solid var(--color-border)}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;color:var(--color-text-primary);margin-bottom:.625rem;font-size:.9375rem}.form-group input,.form-group textarea{padding:.875rem 1rem;border:2px solid var(--color-border);border-radius:10px;font-size:.9375rem;font-family:inherit;background:#fff;color:var(--color-text-primary);transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2c8c7b;box-shadow:0 0 0 3px #2896721a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-disabled)}@media (max-width: 768px){.form-group input,.form-group textarea,.form-group select{font-size:16px}}.landing-footer{background:var(--color-text-primary);color:#fff;padding:4rem 2rem 2rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom));padding-left:calc(2rem + env(safe-area-inset-left));padding-right:calc(2rem + env(safe-area-inset-right))}.footer-container{max-width:1200px;margin:0 auto}.footer-main{display:grid;grid-template-columns:1.5fr 2fr;gap:5rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.15)}.footer-brand h3{margin:0 0 1rem;font-size:1.75rem;background:linear-gradient(135deg,#2c8c7b,#1f3a5f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-brand p{margin:0;color:#ffffffb3;line-height:1.7;font-size:.9375rem}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-column h4{margin:0 0 1.25rem;font-size:1rem;color:#fff}.footer-column a,.footer-column button{display:block;color:#ffffffb3;text-decoration:none;margin-bottom:.875rem;transition:color .2s;background:none;border:none;padding:0;font-size:.9375rem;text-align:left;cursor:pointer;font-family:inherit}.footer-column a:hover,.footer-column button:hover{color:#2c8c7b}.footer-bottom{padding-top:2rem;text-align:center}.footer-bottom p{margin:0;color:#ffffff80;font-size:.875rem}@media (max-width: 992px){.hero-container{grid-template-columns:1fr}.hero-visual{display:none}.features-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.value-grid{grid-template-columns:1fr;gap:3rem}.pricing-grid{grid-template-columns:1fr;max-width:500px;margin:0 auto}.contact-wrapper,.footer-main{grid-template-columns:1fr;gap:3rem}}@media (max-width: 768px){.hero-section{padding:4rem 1.25rem 3rem}.hero-section:before{width:100%}.hero-badge{margin-bottom:1.5rem}.hero-badge span{font-size:.8125rem}.hero-title{font-size:2.5rem;margin-bottom:1.25rem}.hero-subtitle{font-size:1.0625rem;margin-bottom:2rem;max-width:100%}.hero-actions{flex-direction:column;width:100%;gap:.875rem;margin-bottom:2.5rem}.hero-actions .btn-primary,.hero-actions .btn-secondary{width:100%;justify-content:center;padding:1rem 1.5rem}.hero-benefits{gap:1rem}.benefit-item{gap:.875rem}.benefit-icon{width:36px;height:36px}.benefit-title{font-size:.9375rem}.benefit-desc{font-size:.8125rem}.section-container{padding:3rem 1.25rem}.section-header{margin-bottom:2.5rem}.section-label{font-size:.8125rem;padding:.4rem .875rem}.section-header h2{font-size:2rem;margin-bottom:.875rem}.section-header p{font-size:1rem}.features-grid{grid-template-columns:1fr;gap:1.25rem}.feature-card{padding:2rem}.feature-icon{width:48px;height:48px;margin-bottom:1.25rem}.feature-card h3{font-size:1.125rem;margin-bottom:.875rem}.feature-card p{font-size:.875rem}.value-content h2{font-size:1.875rem;margin:.875rem 0 2rem}.problem-list,.solution-list{gap:1.5rem}.problem-item,.solution-item{gap:1rem}.problem-icon,.check-icon{width:40px;height:40px}.problem-item h4,.solution-item h4{font-size:1rem}.problem-item p,.solution-item p{font-size:.875rem}.pricing-card{padding:2rem}.plan-header h3{font-size:1.375rem}.plan-description{font-size:.875rem;margin-bottom:1.5rem}.plan-price{margin-bottom:1.5rem;padding-bottom:1.5rem}.price-amount{font-size:3rem}.price-period{font-size:1rem}.plan-features{margin-bottom:2rem}.plan-features li{font-size:.875rem;padding:.625rem 0}.contact-info h2{font-size:2rem;margin:.875rem 0 1.25rem}.contact-intro{font-size:1rem;margin-bottom:2.5rem}.contact-methods{gap:1.5rem}.contact-method{gap:1rem}.method-icon{width:44px;height:44px}.contact-method h4{font-size:.9375rem}.contact-method a,.contact-method p{font-size:.875rem}.contact-form-wrapper{padding:2rem}.form-row{grid-template-columns:1fr;gap:1.25rem}.contact-form{gap:1.25rem}.form-group label{font-size:.875rem}.form-group input,.form-group textarea{padding:.75rem .875rem;font-size:.875rem}.landing-footer{padding:3rem 1.25rem 1.5rem}.footer-main{padding-bottom:2.5rem}.footer-brand h3{font-size:1.5rem}.footer-brand p{font-size:.875rem}.footer-links{grid-template-columns:repeat(2,1fr);gap:2rem}.footer-column h4{font-size:.9375rem;margin-bottom:1rem}.footer-column a,.footer-column button{font-size:.875rem;margin-bottom:.75rem}.footer-bottom p{font-size:.8125rem}}@media (max-width: 480px){.hero-section{padding:3rem 1rem 2.5rem}.hero-title{font-size:2rem;line-height:1.15}.hero-subtitle{font-size:1rem;line-height:1.6}.hero-actions .btn-primary,.hero-actions .btn-secondary{padding:.875rem 1.25rem;font-size:.9375rem}.benefit-icon{width:32px;height:32px}.benefit-title{font-size:.875rem}.benefit-desc{font-size:.75rem}.section-container{padding:3rem 1rem}.section-header{margin-bottom:2.5rem}.section-header h2{font-size:1.75rem}.section-header p{font-size:.9375rem}.feature-card{padding:1.75rem 1.5rem}.feature-icon{width:44px;height:44px}.feature-card h3{font-size:1.0625rem}.value-content h2{font-size:1.625rem}.problem-icon,.check-icon{width:36px;height:36px;font-size:1.25rem}.problem-item h4,.solution-item h4{font-size:.9375rem}.problem-item p,.solution-item p{font-size:.8125rem}.pricing-card{padding:1.75rem 1.5rem}.popular-badge{font-size:.75rem;padding:.375rem 1.25rem}.plan-header h3{font-size:1.25rem}.price-amount{font-size:2.5rem}.price-period{font-size:.9375rem}.plan-features li{font-size:.8125rem}.plan-btn{padding:.875rem;font-size:.9375rem}.contact-info h2{font-size:1.75rem}.contact-intro{font-size:.9375rem}.contact-form-wrapper{padding:1.75rem 1.25rem}.method-icon{width:40px;height:40px}.contact-method h4{font-size:.875rem}.contact-method a,.contact-method p,.form-group label,.form-group input,.form-group textarea{font-size:.8125rem}.landing-footer{padding:2.5rem 1rem 1.25rem}.footer-brand h3{font-size:1.375rem}.footer-links{grid-template-columns:1fr;gap:1.5rem}.footer-column{text-align:left}}@media (hover: none) and (pointer: coarse){.btn-primary,.btn-secondary,.btn-outline,.plan-btn,.nav-link,.nav-login-btn{min-height:44px;-webkit-tap-highlight-color:transparent}.feature-card:hover,.pricing-card:hover{transform:none}.feature-card:active,.pricing-card:active{transform:scale(.98)}.btn-primary:active,.btn-secondary:active,.btn-outline:active{transform:scale(.97)}}.dashboard-mockup{background:#fff;border-radius:14px;box-shadow:0 24px 64px #1f3a5f2e,0 4px 16px #00000014;transform:perspective(1000px) rotateY(-6deg) rotateX(3deg);max-width:420px;width:100%;overflow:hidden;border:1px solid rgba(31,58,95,.1)}.mockup-header{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);padding:10px 16px;display:flex;align-items:center;gap:10px}.mockup-dots{display:flex;gap:5px}.mockup-dots span{width:10px;height:10px;border-radius:50%;background:#fff6}.mockup-title{color:#ffffffd9;font-size:12px;font-weight:600}.mockup-body{padding:16px;background:#f6f8fb}.mockup-kpis{display:flex;gap:10px;margin-bottom:14px}.mockup-kpi{flex:1;background:#fff;border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:8px;box-shadow:0 1px 4px #0000000f;color:#1f3a5f}.mockup-kpi-label{font-size:9px;color:#64748b;font-weight:500}.mockup-kpi-value{font-size:14px;font-weight:700;color:#1b2430}.mockup-chart-area{background:#fff;border-radius:8px;padding:12px;margin-bottom:10px;box-shadow:0 1px 4px #0000000f}.mockup-chart-label{font-size:10px;font-weight:600;color:#5f6b7a;margin-bottom:8px}.mockup-bars{display:flex;align-items:flex-end;gap:6px;height:60px}.mockup-bar-group{display:flex;gap:2px;align-items:flex-end;flex:1}.mockup-bar{border-radius:3px 3px 0 0;min-height:6px}.mockup-bar.rev{background:#2c8c7b;flex:1}.mockup-bar.exp{background:#d98e04;flex:1}.mockup-rows{display:flex;flex-direction:column;gap:6px}.mockup-row{background:#fff;border-radius:6px;padding:8px 12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 3px #0000000d;font-size:11px}.mockup-row-name{color:#1b2430;font-weight:500}.mockup-row-badge{font-size:10px;padding:2px 7px;border-radius:10px;background:#ecfdf5;color:#065f46;font-weight:600}.challenge-table-wrap{overflow-x:auto;margin-top:32px}.challenge-table{width:100%;border-collapse:collapse;border-radius:12px;overflow:hidden}.challenge-table th{background:#1f3a5f;color:#fff;padding:14px 20px;text-align:left;font-size:14px;font-weight:600}.challenge-table td{padding:14px 20px;font-size:14px;border-bottom:1px solid #e2e8f0;vertical-align:middle}.challenge-table tr:last-child td{border-bottom:none}.challenge-table tr:nth-child(2n) td{background:#f8fafc}.challenge-col{font-weight:600;color:#1b2430;width:22%}.without-col{color:#dc2626}.with-col{color:#065f46}.cell-flex{display:inline-flex;align-items:flex-start;gap:8px}.x-icon{color:#dc2626;flex-shrink:0;margin-top:2px}.check-icon-green{color:#10b981;flex-shrink:0;margin-top:2px}.col-without{color:#dc2626}.col-with{color:#10b981}.challenge-mobile-cards{display:none;margin-top:24px}.challenge-mobile-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;margin-bottom:12px}.challenge-mobile-card:last-child{margin-bottom:0}.cmc-challenge{font-weight:700;color:#1b2430;font-size:15px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}.cmc-row{display:flex;align-items:flex-start;gap:8px;padding:6px 0}.cmc-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;min-width:90px;padding-top:2px;flex-shrink:0}.cmc-label.without{color:#dc2626}.cmc-label.with{color:#10b981}.cmc-value{font-size:13px;color:#374151;line-height:1.5}@media (max-width: 768px){.challenge-table-wrap{display:none}.challenge-mobile-cards{display:block}}.security-card{cursor:pointer;transition:border-color .2s,box-shadow .2s;border:1px solid transparent}.security-card:hover{border-color:#2c8c7b;box-shadow:0 4px 20px #2c8c7b1f}.feature-card-link{text-decoration:none;color:inherit;display:block;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s;border:1px solid var(--color-border)}.feature-card-link:hover,.feature-card-link:focus{border-color:#2c8c7b;box-shadow:0 4px 20px #2c8c7b1f;transform:translateY(-2px);text-decoration:none;outline:none}.feature-card-link:focus-visible{outline:2px solid #2C8C7B;outline-offset:2px}.feature-card-link h3,.feature-card-link p,.feature-card-link *,.feature-card-link:hover h3,.feature-card-link:hover p,.feature-card-link:hover *{text-decoration:none}.plan-compare-link{display:block;text-align:center;margin-top:12px;color:#2c8c7b;font-size:13px;font-weight:500;text-decoration:none}.plan-compare-link:hover{text-decoration:underline}.plan-comparison{margin-top:48px}.comparison-title{text-align:center;font-size:20px;font-weight:700;color:#1b2430;margin-bottom:24px}.comparison-table-wrap{overflow-x:auto}.comparison-table{width:100%;border-collapse:collapse;border-radius:10px;overflow:hidden}.comparison-table th{background:#1f3a5f;color:#fff;padding:12px 18px;text-align:center;font-size:14px}.comparison-table th:first-child{text-align:left}.comparison-table td{padding:12px 18px;text-align:center;font-size:13px;border-bottom:1px solid #e2e8f0}.comparison-table td:first-child{text-align:left;font-weight:500;color:#1b2430}.comparison-table tr:last-child td{border-bottom:none}.comparison-table tr:nth-child(2n) td{background:#f8fafc}.comparison-table .col-pro{background:#2c8c7b12}.comparison-table th.col-pro{background:#2c8c7b}.comparison-table tr:nth-child(2n) .col-pro{background:#2c8c7b1f}.benefit-desc{font-size:12px;color:var(--color-text-secondary);margin-top:2px;line-height:1.4}.security-card-btn{background:none;border:1px solid #e2e8f0;cursor:pointer;text-align:left;width:100%}.security-card-btn:hover{border-color:#2c8c7b;box-shadow:0 4px 16px #2c8c7b1f;transform:translateY(-2px)}.security-card-link{display:inline-block;margin-top:12px;font-size:13px;color:#2c8c7b;font-weight:600}.security-cta-wrap{display:flex;justify-content:center;margin-top:40px}.plan-compare-link-btn{background:none;border:none;cursor:pointer;color:#2c8c7b;font-size:.875rem;margin-top:8px;text-decoration:underline;padding:4px 0}.plan-compare-link-btn:hover{color:#237266}.lp-snav{position:fixed;right:1.75rem;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;gap:.25rem;align-items:flex-end;display:none}@media (min-width: 1380px){.lp-snav{display:flex}}.lp-snav-item{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.3rem 0;font-family:inherit}.lp-snav-label{font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;opacity:0;transform:translate(4px);transition:opacity .18s ease,transform .18s ease,color .3s ease;pointer-events:none;color:#1f3a5f}.lp-snav-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;transition:background .18s ease,transform .18s ease,border-color .3s ease;background:transparent;border:1.5px solid rgba(31,58,95,.35)}.lp-snav-item:hover .lp-snav-label{opacity:.7;transform:translate(0)}.lp-snav-item:hover .lp-snav-dot{border-color:#2c8c7b}.lp-snav-item--active .lp-snav-label{opacity:1;transform:translate(0);color:#1f3a5f}.lp-snav-item--active .lp-snav-dot{background:#2c8c7b;border-color:#2c8c7b;transform:scale(1.4)}.lp-snav--dark .lp-snav-label{color:#ffffff8c;transition:opacity .18s ease,transform .18s ease,color .3s ease}.lp-snav--dark .lp-snav-dot{border-color:#ffffff59}.lp-snav--dark .lp-snav-item:hover .lp-snav-label{opacity:1;color:#ffffffe6}.lp-snav--dark .lp-snav-item:hover .lp-snav-dot{border-color:#fffc}.lp-snav--dark .lp-snav-item--active .lp-snav-label{color:#fff;opacity:1}.lp-snav--dark .lp-snav-item--active .lp-snav-dot{background:#4fc3a8;border-color:#4fc3a8}.fp-hero{background:linear-gradient(135deg,#ebf1f7,#e8f5f3);padding:64px 24px 56px;text-align:center}.fp-hero-inner{max-width:680px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px}.fp-hero-heading{font-size:2.5rem;font-weight:800;color:#1b2430;line-height:1.15;margin:0}.fp-hero-sub{font-size:1.0625rem;color:#5f6b7a;line-height:1.7;margin:0;max-width:560px}.fp-hero-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:4px}.fp-section{padding:72px 24px}.fp-section-light{background:#fff}.fp-section-alt{background:#f8fafc}.fp-section-inner{max-width:1060px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.fp-section-rev .fp-section-content{order:2}.fp-section-rev .fp-section-visual{order:1}.fp-section-content{display:flex;flex-direction:column;gap:14px}.fp-section-h2{font-size:1.625rem;font-weight:800;color:#1b2430;margin:0;line-height:1.25}.fp-section-desc{font-size:.9375rem;color:#5f6b7a;line-height:1.7;margin:0}.fp-feature-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.fp-feature-item{display:flex;align-items:flex-start;gap:8px;font-size:.9rem;color:#374151;line-height:1.5}.fp-feature-check{color:#2c8c7b;flex-shrink:0;margin-top:1px}.fp-security-link-btn{background:none;border:none;cursor:pointer;color:#2c8c7b;font-size:.9rem;font-weight:600;padding:0;text-align:left}.fp-security-link-btn:hover{text-decoration:underline}.fp-section-visual{display:flex;align-items:center;justify-content:center}.fp-preview-frame{width:100%;max-width:400px;border:1px solid #d1d9e6;border-radius:14px;box-shadow:0 12px 40px #1f3a5f1f;overflow:hidden;background:#fff;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif}.fp-preview-titlebar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#1f3a5f;border-bottom:1px solid rgba(255,255,255,.08)}.fp-preview-dots{display:flex;gap:5px}.fp-preview-dots span{width:9px;height:9px;border-radius:50%;background:#ffffff4d}.fp-preview-title{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#ffffffe6;flex:1}.fp-preview-search{display:flex;align-items:center;gap:4px;font-size:10px;color:#ffffff80;background:#ffffff14;padding:3px 8px;border-radius:5px}.fp-preview-pill{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;background:#f59e0b33;color:#f59e0b}.fp-pill-warn{background:#f59e0b33;color:#f59e0b}.fp-preview-body{padding:12px 14px;display:flex;flex-direction:column;gap:6px}.fp-preview-footer{display:flex;align-items:center;gap:4px;font-size:10px;color:#94a3b8;margin-top:4px;padding-top:8px;border-top:1px solid #f1f5f9}.fp-preview-table-head{display:flex;gap:8px;padding:4px 0 6px;border-bottom:1px solid #f1f5f9;margin-bottom:2px}.fp-th{font-size:9px;font-weight:700;color:#94a3b8;text-transform:uppercase;flex:1}.fp-preview-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #f8fafc}.fp-preview-row:last-child{border-bottom:none}.fp-preview-prop{display:flex;align-items:center;gap:7px;flex:2;min-width:0}.fp-preview-prop-icon{width:24px;height:24px;border-radius:6px;background:#1f3a5f14;color:#1f3a5f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fp-preview-prop-name{font-size:11px;font-weight:600;color:#1b2430}.fp-preview-prop-loc{display:flex;align-items:center;gap:2px;font-size:9px;color:#94a3b8;margin-top:1px}.fp-preview-type{font-size:10px;color:#5f6b7a;flex:1}.fp-preview-status{font-size:9px;font-weight:700;padding:2px 7px;border-radius:8px;flex-shrink:0}.fp-date-row{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:8px;margin-bottom:4px}.fp-date-critical{background:#dc26260f;border-left:3px solid #DC2626}.fp-date-warning{background:#f59e0b0f;border-left:3px solid #F59E0B}.fp-date-normal{background:#2c8c7b0f;border-left:3px solid #2C8C7B}.fp-date-icon{width:24px;height:24px;border-radius:6px;background:#fffc;display:flex;align-items:center;justify-content:center;color:#5f6b7a;flex-shrink:0}.fp-date-info{flex:1;min-width:0}.fp-date-label{font-size:11px;font-weight:600;color:#1b2430}.fp-date-prop{font-size:9px;color:#94a3b8;margin-top:1px}.fp-date-days{font-size:11px;font-weight:800;flex-shrink:0;padding:3px 7px;border-radius:6px}.fp-days-critical{background:#dc26261f;color:#dc2626}.fp-days-warning{background:#f59e0b1f;color:#d97706}.fp-days-normal{background:#2c8c7b1f;color:#2c8c7b}.fp-kpi-row{display:flex;gap:6px;margin-bottom:10px}.fp-kpi-card{flex:1;padding:8px 10px;border-radius:8px;border:1px solid transparent}.fp-kpi-green{background:#2c8c7b12;border-color:#2c8c7b26}.fp-kpi-red{background:#dc26260f;border-color:#dc26261f}.fp-kpi-blue{background:#1f3a5f0f;border-color:#1f3a5f1f}.fp-kpi-label{font-size:9px;color:#94a3b8;font-weight:600;text-transform:uppercase}.fp-kpi-value{font-size:14px;font-weight:800;color:#1b2430;margin:2px 0 1px}.fp-kpi-delta{font-size:9px;color:#2c8c7b;font-weight:600}.fp-chart-area{background:#f8fafc;border-radius:8px;padding:10px}.fp-chart-label{font-size:9px;font-weight:700;color:#94a3b8;text-transform:uppercase;margin-bottom:6px}.fp-bar-chart{display:flex;align-items:flex-end;gap:5px;height:48px}.fp-bar-col{flex:1;display:flex;align-items:flex-end}.fp-bar{width:100%;border-radius:3px 3px 0 0;background:linear-gradient(to top,#2c8c7b,#2c8c7b73)}.fp-bar-labels{display:flex;justify-content:space-between;margin-top:4px}.fp-bar-month{font-size:8px;color:#94a3b8;text-align:center;flex:1}.fp-wip-row{align-items:flex-start}.fp-wip-title{font-size:11px;font-weight:600;color:#1b2430}.fp-wip-due{font-size:10px;color:#5f6b7a;white-space:nowrap}.fp-doc-breadcrumb{display:flex;align-items:center;gap:4px;font-size:10px;color:#5f6b7a;margin-bottom:4px;padding-bottom:6px;border-bottom:1px solid #f1f5f9}.fp-doc-actions{display:flex;gap:4px;margin-left:auto}.fp-doc-btn{display:flex;align-items:center;gap:3px;font-size:9px;font-weight:600;padding:3px 7px;border-radius:5px;background:#ffffff26;color:#fffc;cursor:default}.fp-doc-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid #f8fafc}.fp-doc-row:last-child{border-bottom:none}.fp-doc-type-badge{font-size:8px;font-weight:800;padding:2px 5px;border-radius:4px;flex-shrink:0}.fp-doc-name{font-size:10px;color:#1b2430;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fp-doc-size{font-size:9px;color:#94a3b8;white-space:nowrap}.fp-portfolio-total{text-align:center;padding:12px 0 10px;border-bottom:1px solid #f1f5f9;margin-bottom:4px}.fp-portfolio-num{font-size:28px;font-weight:800;color:#1f3a5f}.fp-portfolio-label{font-size:10px;color:#94a3b8;margin-top:2px}.fp-country-row{display:flex;align-items:center;gap:8px;padding:7px 0}.fp-country-flag{font-size:16px}.fp-country-info{flex:1;min-width:0}.fp-country-name{font-size:11px;font-weight:600;color:#1b2430;margin-bottom:4px}.fp-country-bar-wrap{height:5px;background:#e2e8f0;border-radius:3px;overflow:hidden}.fp-country-bar{height:100%;background:linear-gradient(90deg,#1f3a5f,#2c8c7b);border-radius:3px}.fp-country-count{font-size:11px;font-weight:700;color:#1f3a5f}.fp-role-row{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid #f8fafc}.fp-role-row:last-of-type{border-bottom:none}.fp-role-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:10px;white-space:nowrap;flex-shrink:0}.fp-role-perms{display:flex;flex-wrap:wrap;gap:4px}.fp-perm-chip{font-size:9px;font-weight:600;padding:2px 6px;border-radius:4px;background:#f1f5f9;color:#5f6b7a}.fp-security-note{display:flex;align-items:center;gap:5px;font-size:9px;color:#94a3b8;margin-top:6px;padding-top:8px;border-top:1px solid #f1f5f9}.fp-cta{background:linear-gradient(135deg,#1f3a5f,#1b4a44);padding:64px 24px;text-align:center}.fp-cta-inner{max-width:600px;margin:0 auto}.fp-cta h2{font-size:1.875rem;font-weight:800;color:#fff;margin:0 0 12px}.fp-cta p{font-size:1rem;color:#ffffffbf;margin:0 0 28px;line-height:1.6}.fp-cta-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}@media (max-width: 900px){.fp-section-inner{grid-template-columns:1fr;gap:40px}.fp-section-rev .fp-section-content{order:1}.fp-section-rev .fp-section-visual{order:2}.fp-preview-frame{max-width:100%}}@media (max-width: 640px){.fp-hero{padding:48px 20px 40px}.fp-hero-heading{font-size:1.875rem}.fp-section{padding:48px 20px}.fp-section-h2{font-size:1.375rem}.fp-cta{padding:48px 20px}.fp-cta h2{font-size:1.5rem}.fp-cta-actions{flex-direction:column;align-items:center}}.pricing-page{min-height:100vh;background:#fff}.pp-container{max-width:1100px;margin:0 auto;padding:0 24px}.pp-hero{background:linear-gradient(135deg,#ebf1f7,#e8f5f3);padding:64px 24px 56px;text-align:center}.pp-hero h1{font-size:2.5rem;font-weight:800;color:#1b2430;margin:12px 0}.pp-hero-sub{font-size:1.05rem;color:#5f6b7a;max-width:600px;margin:0 auto;line-height:1.65}.pp-plans-section{padding:64px 24px}.pp-plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}.pp-plan-card{position:relative;border:2px solid #e2e8f0;border-radius:16px;padding:28px 24px;background:#fff;display:flex;flex-direction:column;gap:0}.pp-plan-card.pp-highlighted{border-color:#2c8c7b;box-shadow:0 8px 32px #2c8c7b26}.pp-popular-badge{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;font-size:11px;font-weight:700;padding:4px 14px;border-radius:20px;white-space:nowrap}.pp-plan-header{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.pp-plan-name{font-size:1.125rem;font-weight:800;color:#1b2430}.pp-plan-tagline{font-size:.8125rem;color:#2c8c7b;font-weight:600}.pp-property-limit{font-size:.8125rem;font-weight:600;color:#2c8c7b;background:#2c8c7b1a;padding:4px 10px;border-radius:6px;display:inline-block;align-self:flex-start}.pp-plan-pricing{padding-bottom:20px;border-bottom:1px solid #f1f5f9;margin-bottom:20px}.pp-plan-price{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}.pp-price-amount{font-size:2rem;font-weight:800;color:#1f3a5f}.pp-price-period{font-size:.875rem;color:#5f6b7a}.pp-price-note{font-size:.8rem;color:#5f6b7a;line-height:1.5;margin-top:6px}.pp-feature-list{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:8px;flex:1}.pp-feature-list li{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;color:#374151}.pp-feature-list li svg{color:#2c8c7b;flex-shrink:0;margin-top:1px}.pp-plan-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:10px;font-size:.9375rem;font-weight:700;cursor:pointer;transition:all .2s ease;border:none}.pp-btn-primary{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;border:none;box-shadow:0 4px 12px #1f3a5f40}.pp-btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px #1f3a5f59}.pp-btn-outline{background:transparent;color:#1f3a5f;border:2px solid #2C8C7B}.pp-btn-outline:hover{background:#2c8c7b14}.pp-trial-note{text-align:center;font-size:.75rem;color:#5f6b7a;margin:8px 0 0}.pp-comparison-section{padding:0 24px 64px}.pp-section-title{font-size:1.5rem;font-weight:800;color:#1b2430;text-align:center;margin-bottom:32px}.pp-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid #e2e8f0}.pp-table{width:100%;border-collapse:collapse;min-width:560px}.pp-table th{background:#1f3a5f;color:#fff;padding:14px 20px;font-size:.875rem;font-weight:700;text-align:center}.pp-th-feature{text-align:left!important}.pp-th-pro{background:#2c8c7b!important}.pp-td-feature{padding:12px 20px;font-size:.875rem;font-weight:500;color:#1b2430;text-align:left}.pp-td-val{padding:12px 20px;text-align:center;vertical-align:middle}.pp-col-pro{background:#2c8c7b0f}.pp-row-even td{background:#f8fafc}.pp-row-even .pp-col-pro{background:#2c8c7b1a}.pp-check{color:#2c8c7b;display:inline-flex}.pp-diff-text{font-size:.8125rem;color:#374151;font-weight:500}.pp-comparison-desktop{display:block}.pp-comparison-mobile{display:none}.pp-group-header{background:#f1f5f9;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#64748b;padding:10px 20px;text-align:left;border-top:2px solid #e2e8f0}.pp-faq-section{padding:48px 24px 64px;background:#f8fafc}.pp-faq-inner{max-width:720px}.pp-faq-list{display:flex;flex-direction:column;gap:0;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.pp-faq-item{border-bottom:1px solid #e2e8f0}.pp-faq-item:last-child{border-bottom:none}.pp-faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:#fff;border:none;cursor:pointer;font-size:.9375rem;font-weight:600;color:#1b2430;text-align:left;gap:12px;transition:background .15s}.pp-faq-q:hover{background:#f1f5f9}.pp-faq-item.open .pp-faq-q{background:#f1f5f9;color:#1f3a5f}.pp-faq-a{padding:0 24px 18px;font-size:.9rem;color:#5f6b7a;line-height:1.6;background:#f1f5f9}.pp-enterprise-section{padding:72px 24px;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);text-align:center}.pp-enterprise-inner{max-width:640px}.pp-enterprise-section h2{font-size:1.75rem;font-weight:800;color:#fff;margin-bottom:12px}.pp-enterprise-section p{color:#ffffffd9;margin-bottom:32px;font-size:1rem;line-height:1.6}.pp-enterprise-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.pp-enterprise-cta-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#fff;color:#1f3a5f;border:2px solid #fff;border-radius:10px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s}.pp-enterprise-cta-btn:hover{background:#ffffffe6;transform:translateY(-1px);box-shadow:0 4px 16px #00000026}.pp-enterprise-secondary-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.4);border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.pp-enterprise-secondary-btn:hover{background:#fff3;border-color:#ffffffb3}@media (max-width: 960px){.pp-plans-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}.pp-property-limit{align-self:flex-start}}@media (max-width: 768px){.pp-hero{padding:48px 20px 44px}.pp-hero h1{font-size:1.875rem;margin:10px 0}.pp-hero-sub{font-size:.975rem}.pp-plans-section{padding:40px 16px}.pp-plan-card{padding:24px 20px}.pp-price-amount{font-size:1.75rem}.pp-price-period{font-size:.8125rem}.pp-price-note{font-size:.775rem}.pp-faq-section{padding:40px 16px 56px}.pp-faq-q{padding:16px 18px;font-size:.9rem}.pp-faq-a{padding:0 18px 16px;font-size:.875rem;line-height:1.65}.pp-comparison-section{padding:0 16px 56px}.pp-comparison-desktop{display:none}.pp-comparison-mobile{display:block}.pp-mob-tabs{display:flex;background:#f1f5f9;border-radius:14px;padding:4px;gap:3px;margin-bottom:16px}.pp-mob-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:10px 4px;border:none;border-radius:10px;background:transparent;color:#5f6b7a;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit;white-space:nowrap;min-height:44px}.pp-mob-tab--active{background:#fff;color:#1f3a5f;box-shadow:0 2px 8px #1f3a5f1f}.pp-mob-tab--popular.pp-mob-tab--active{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff}.pp-mob-tab-dot{width:6px;height:6px;border-radius:50%;background:#2c8c7b;flex-shrink:0}.pp-mob-tab--popular.pp-mob-tab--active .pp-mob-tab-dot{background:#ffffffb3}.pp-mob-panel{border:2px solid #e2e8f0;border-radius:16px;overflow:hidden;background:#fff}.pp-mob-panel--popular{border-color:#2c8c7b;box-shadow:0 4px 20px #2c8c7b1f}.pp-mob-popular-badge{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;text-align:center;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:6px}.pp-mob-panel-body{padding:20px 20px 4px}.pp-mob-plan-name{font-size:1.25rem;font-weight:800;color:#1b2430;margin-bottom:4px}.pp-mob-tagline{font-size:.8125rem;color:#2c8c7b;font-weight:600;margin-bottom:8px}.pp-mob-property-pill{display:inline-block;font-size:.8125rem;font-weight:600;color:#2c8c7b;background:#2c8c7b1a;padding:4px 10px;border-radius:6px;margin-bottom:16px}.pp-mob-price-block{padding-bottom:16px;border-bottom:1px solid #f1f5f9;margin-bottom:16px}.pp-mob-price-row{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.pp-mob-price-amount{font-size:2rem;font-weight:800;color:#1f3a5f}.pp-mob-price-period{font-size:.875rem;color:#5f6b7a}.pp-mob-price-note{font-size:.8rem;color:#5f6b7a;line-height:1.5;margin-top:6px}.pp-mob-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 20px;border-radius:10px;font-size:.9375rem;font-weight:700;cursor:pointer;transition:all .2s ease;min-height:48px;font-family:inherit;margin-bottom:8px}.pp-mob-cta--primary{background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;border:none;box-shadow:0 4px 12px #1f3a5f40}.pp-mob-cta--primary:active{opacity:.9;transform:translateY(1px)}.pp-mob-cta--outline{background:transparent;color:#1f3a5f;border:2px solid #2C8C7B}.pp-mob-cta--outline:active{background:#2c8c7b14}.pp-mob-trial-note{text-align:center;font-size:.75rem;color:#5f6b7a;margin-bottom:16px}.pp-mob-section-hdr{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#64748b;background:#f1f5f9;padding:8px 20px;border-top:2px solid #e2e8f0}.pp-mob-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 20px}.pp-mob-row--even{background:#f8fafc}.pp-mob-feature-label{font-size:.875rem;color:#374151;font-weight:500;line-height:1.4;flex:1}.pp-mob-check-icon{color:#2c8c7b;display:inline-flex;flex-shrink:0}.pp-mob-val{font-size:.8125rem;color:#1b2430;font-weight:600;text-align:right;flex-shrink:0;max-width:50%}}.security-page{min-height:100vh;background:#fff}.sp-container{max-width:960px;margin:0 auto;padding:0 24px}.sp-hero{background:linear-gradient(135deg,#ebf1f7,#e8f5f3);padding:56px 24px}.sp-hero-inner{display:flex;gap:28px;align-items:flex-start;max-width:960px;margin:0 auto}.sp-hero-icon{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:4px}.sp-hero-text{flex:1}.sp-label{margin-bottom:8px;display:block}.sp-hero h1{font-size:2rem;font-weight:800;color:#1b2430;margin:0 0 14px;line-height:1.2}.sp-hero-sub{font-size:1rem;color:#5f6b7a;line-height:1.65;margin:0 0 12px;max-width:600px}.sp-hero-reassurance{font-size:.9375rem;color:#374151;font-weight:500;line-height:1.6;max-width:600px;margin:0}.sp-section-title{font-size:1.375rem;font-weight:800;color:#1b2430;margin-bottom:10px;text-align:center}.sp-section-sub{font-size:.9375rem;color:#5f6b7a;text-align:center;margin-bottom:28px;line-height:1.6}.sp-core-section{padding:56px 24px}.sp-core-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.sp-core-card{border:1px solid #e2e8f0;border-radius:14px;padding:22px 18px;background:#fff;transition:box-shadow .2s,border-color .2s}.sp-core-card:hover{border-color:#2c8c7b;box-shadow:0 4px 16px #2c8c7b1a}.sp-core-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#1f3a5f14,#2c8c7b1a);color:#1f3a5f;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.sp-core-title{font-size:.9375rem;font-weight:700;color:#1b2430;margin:0 0 8px}.sp-core-body{font-size:.8125rem;color:#5f6b7a;line-height:1.6;margin:0}.sp-workflow-section{padding:56px 24px;background:#f8fafc}.sp-workflow-intro{font-size:.9375rem;color:#5f6b7a;text-align:center;max-width:640px;margin:0 auto 36px;line-height:1.65}.sp-layers{display:flex;align-items:stretch;border-radius:16px;overflow:hidden;border:1px solid #e2e8f0;background:#fff}.sp-layer{flex:1;padding:20px 12px;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;position:relative}.sp-layer:last-child{border-right:none}.sp-layer-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#1f3a5f14,#2c8c7b1a);color:#1f3a5f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sp-layer-label{font-size:.75rem;font-weight:700;color:#1b2430;line-height:1.3}.sp-layer-desc{font-size:.6875rem;color:#5f6b7a;line-height:1.4}.sp-layer-arrow{position:absolute;right:-9px;top:50%;transform:translateY(-50%);z-index:2;color:#94a3b8;background:#fff;display:flex;align-items:center;padding:2px 0}.sp-tech-section{padding:56px 24px}.sp-tech-intro{font-size:.9375rem;color:#5f6b7a;margin-bottom:20px;text-align:center}.sp-accordion{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.sp-accordion-item{border-bottom:1px solid #e2e8f0}.sp-accordion-item:last-child{border-bottom:none}.sp-accordion-trigger{width:100%;display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border:none;cursor:pointer;font-size:.9375rem;font-weight:600;color:#1b2430;text-align:left;transition:background .15s}.sp-accordion-trigger:hover{background:#f8fafc}.sp-accordion-item.open .sp-accordion-trigger{background:#f1f5f9;color:#1f3a5f}.sp-accordion-icon{width:32px;height:32px;border-radius:8px;background:#1f3a5f14;color:#1f3a5f;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sp-accordion-title{flex:1}.sp-accordion-body{background:#f8fafc;padding:0 20px 16px;border-top:1px solid #e2e8f0}.sp-tech-item{padding:16px 0;border-bottom:1px solid #e9eef4}.sp-tech-item:last-child{border-bottom:none}.sp-tech-heading{font-size:.875rem;font-weight:700;color:#1b2430;margin:0 0 6px}.sp-tech-body{font-size:.875rem;color:#5f6b7a;line-height:1.65;margin:0}.sp-infra-section{padding:0 24px 56px}.sp-infra-card{border:1px solid #e2e8f0;border-radius:16px;background:linear-gradient(135deg,#f8fafc,#f0f7f5);overflow:hidden}.sp-infra-header{display:flex;align-items:center;gap:12px;padding:18px 24px;border-bottom:1px solid #e2e8f0;background:#fff}.sp-infra-icon{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sp-infra-header h2{font-size:1rem;font-weight:700;color:#1b2430;margin:0}.sp-infra-body{padding:20px 24px}.sp-infra-body p{font-size:.875rem;color:#5f6b7a;line-height:1.65;margin:0 0 10px}.sp-infra-body p:last-child{margin-bottom:0}.sp-bottom-section{padding:0 24px 64px}.sp-bottom-inner{display:grid;grid-template-columns:1fr 1.4fr;gap:40px;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);border-radius:20px;padding:40px;color:#fff}.sp-contact-block{display:flex;gap:16px;align-items:flex-start}.sp-contact-mail-icon{flex-shrink:0;color:#fffc;margin-top:2px}.sp-contact-block h3{font-size:1rem;font-weight:700;color:#fff;margin:0 0 8px}.sp-contact-block p{font-size:.875rem;color:#fffc;line-height:1.6;margin:0 0 12px}.sp-contact-email{color:#fff;font-weight:600;font-size:.9rem;text-decoration:none}.sp-contact-email:hover{text-decoration:underline}.sp-cta-block{display:flex;flex-direction:column;gap:8px;justify-content:center}.sp-cta-block h3{font-size:1.0625rem;font-weight:700;color:#fff;margin:0;line-height:1.3}.sp-cta-block p{font-size:.875rem;color:#ffffffd9;line-height:1.6;margin:0}.sp-cta-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}.sp-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:11px 20px;border-radius:9px;background:#fff;color:#1f3a5f;border:2px solid #fff;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.sp-btn-primary:hover{background:#ffffffe6;transform:translateY(-1px)}.sp-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:11px 20px;border-radius:9px;background:transparent;color:#ffffffe6;border:2px solid rgba(255,255,255,.4);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.sp-btn-secondary:hover{border-color:#fffc;color:#fff}@media (max-width: 900px){.sp-core-grid{grid-template-columns:repeat(2,1fr)}.sp-layers{flex-direction:column;border-radius:12px}.sp-layer{border-right:none;border-bottom:1px solid #e2e8f0;flex-direction:row;text-align:left;gap:14px;padding:16px 20px;align-items:center}.sp-layer:last-child{border-bottom:none}.sp-layer-arrow{display:none}.sp-layer-icon{flex-shrink:0}}@media (max-width: 680px){.sp-hero-inner{flex-direction:column;gap:16px}.sp-hero-icon{width:52px;height:52px}.sp-hero h1{font-size:1.625rem}.sp-core-grid{grid-template-columns:1fr}.sp-workflow-section{padding:40px 16px}.sp-bottom-inner{grid-template-columns:1fr;padding:28px 24px;gap:28px}.sp-accordion-trigger{padding:14px 16px;font-size:.9rem}}.signup-page{min-height:100vh;background:#f6f8fb}.signup-container{max-width:760px;margin:0 auto;padding:48px 24px 80px}.signup-header{text-align:center;margin-bottom:40px}.signup-header h1{font-size:2rem;font-weight:800;color:#1b2430;margin-bottom:8px}.signup-header p{color:#5f6b7a;font-size:1rem}.signup-section{margin-bottom:40px}.signup-step-title{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:700;color:#1b2430;margin-bottom:20px;flex-wrap:wrap;line-height:1.4}.su-step-num{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.su-step-text{font-size:1.1rem;font-weight:700;color:#1b2430}.signup-free-trial-card{width:100%;display:flex;align-items:center;gap:14px;border:2px dashed #c8d5e0;border-radius:12px;padding:14px 20px;background:#fafbfc;cursor:pointer;text-align:left;transition:border-color .2s,background .2s,box-shadow .2s;margin-bottom:4px}.signup-free-trial-card:hover{border-color:#2c8c7b;border-style:solid;background:#2c8c7b08}.signup-free-trial-card.active{border-color:#2c8c7b;border-style:solid;background:#2c8c7b0d;box-shadow:0 0 0 3px #2c8c7b1f}.su-ft-icon{color:#c8d5e0;flex-shrink:0;transition:color .2s}.signup-free-trial-card.active .su-ft-icon,.signup-free-trial-card:hover .su-ft-icon{color:#2c8c7b}.su-ft-content{flex:1}.su-ft-name{font-weight:700;font-size:14px;color:#1b2430}.su-ft-desc{font-size:12px;color:#5f6b7a;margin-top:2px}.su-plan-divider{display:flex;align-items:center;gap:12px;margin:14px 0;color:#94a3b8;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.su-plan-divider:before,.su-plan-divider:after{content:"";flex:1;height:1px;background:#e2e8f0}.signup-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.signup-plan-card{position:relative;border:2px solid #e2e8f0;border-radius:12px;padding:20px 16px;background:#fff;cursor:pointer;text-align:center;transition:border-color .2s,box-shadow .2s}.signup-plan-card:hover{border-color:#2c8c7b}.signup-plan-card.selected{border-color:#2c8c7b;box-shadow:0 0 0 3px #2c8c7b26}.signup-plan-card.popular{border-color:#1f3a5f}.signup-plan-card.popular.selected{border-color:#2c8c7b}.signup-popular-badge{position:absolute;top:-11px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;font-size:11px;font-weight:700;padding:3px 12px;border-radius:20px;white-space:nowrap}.signup-plan-name{font-weight:700;font-size:15px;color:#1b2430;margin-bottom:6px}.signup-plan-price{font-size:22px;font-weight:800;color:#1f3a5f}.signup-plan-price span{font-size:13px;font-weight:400;color:#5f6b7a}.signup-plan-period-block{display:block;font-size:11px;font-weight:500;margin-top:2px;opacity:.85}.signup-plan-price-note{font-size:11px;color:#5f6b7a;margin-top:4px;line-height:1.4}.signup-plan-desc{font-size:12px;color:#5f6b7a;margin-top:4px}.plan-check{color:#2c8c7b;position:absolute;top:12px;right:12px}.signup-form{display:flex;flex-direction:column;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:600;color:#1b2430}.form-group input,.form-group select,.form-group textarea{padding:10px 14px;border:1px solid #d9e1ea;border-radius:8px;font-size:14px;background:#fff;color:#1b2430;outline:none;transition:border-color .15s}.form-group input:focus,.form-group select:focus{border-color:#2c8c7b}.password-wrap{position:relative}.password-wrap input{width:100%;padding-right:42px;box-sizing:border-box}.pw-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#5f6b7a;display:flex}.phone-wrap{display:flex}.phone-prefix{padding:10px 12px;background:#eef2f6;border:1px solid #d9e1ea;border-right:none;border-radius:8px 0 0 8px;font-size:14px;color:#1b2430;white-space:nowrap}.phone-wrap input{border-radius:0 8px 8px 0}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#1b2430;cursor:pointer}.checkbox-label input{margin-top:2px;accent-color:#2C8C7B}.checkbox-label a{color:#2c8c7b}.field-error{font-size:12px;color:#dc2626;margin-top:-4px}.signup-btn{width:100%;padding:14px;border:none;border-radius:10px;background:linear-gradient(135deg,#1f3a5f,#2c8c7b);color:#fff;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .2s,transform .2s}.signup-btn:disabled{opacity:.5;cursor:not-allowed}.signup-btn:not(:disabled):hover{transform:translateY(-1px);opacity:.95}.signup-signin{text-align:center;font-size:14px;color:#5f6b7a}.signup-signin a{color:#2c8c7b;font-weight:600;text-decoration:none}.signup-success{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;text-align:center;padding:48px 24px}.success-icon{color:#2c8c7b}.signup-success h2{font-size:1.5rem;font-weight:700;color:#1b2430;max-width:480px}.signup-success p{color:#5f6b7a}.signup-success .signup-btn{width:auto;padding:12px 32px}@media (max-width: 640px){.signup-plans,.form-row{grid-template-columns:1fr}}.su-label{font-size:13px;font-weight:600;color:#1b2430}.su-required{color:#dc2626;font-weight:700}.su-required-note{font-size:12px;color:#5f6b7a;margin-bottom:4px}.su-optional-tag{font-size:11px;font-weight:600;color:#5f6b7a;background:#e8edf2;padding:3px 10px;border-radius:10px;display:inline-flex;align-items:center;white-space:nowrap;flex-shrink:0}.su-plan-selected-note{font-size:13px;color:#2c8c7b;margin-top:12px}.su-help-tip{display:inline-flex;align-items:center;margin-left:4px;color:#94a3b8;cursor:help;vertical-align:middle}.su-plan-recommendation,.su-plan-warning{margin-top:6px;padding:8px 10px;border-radius:8px;font-size:12px;display:flex;align-items:flex-start;gap:6px;line-height:1.5;flex-wrap:wrap}.su-plan-recommendation{background:#2c8c7b14;color:#1f4a3d;border-left:3px solid #2C8C7B}.su-plan-recommendation svg{color:#2c8c7b;flex-shrink:0;margin-top:1px}.su-plan-warning{background:#f59e0b14;color:#78350f;border-left:3px solid #F59E0B}.su-plan-warning svg{color:#f59e0b;flex-shrink:0;margin-top:1px}.su-select-plan-btn{background:none;border:none;cursor:pointer;color:#2c8c7b;font-weight:700;font-size:12px;padding:0;text-decoration:underline}@keyframes su-spin{to{transform:rotate(360deg)}}.su-spinner{animation:su-spin .8s linear infinite;color:#2c8c7b}.su-spinner-inline{animation:su-spin .8s linear infinite}.su-state-icon{flex-shrink:0}.su-state-icon--blue{color:#1f3a5f}.su-state-icon--amber{color:#d97706}.su-state-icon--red{color:#dc2626}.su-state-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;align-items:center}.su-btn-secondary{padding:12px 28px;border:2px solid #d9e1ea;border-radius:10px;background:#fff;color:#1b2430;font-size:15px;font-weight:600;cursor:pointer;transition:border-color .2s}.su-btn-secondary:hover{border-color:#2c8c7b}.su-workspace-detail{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 28px;display:flex;flex-direction:column;gap:8px;width:100%;max-width:400px;margin:8px 0 16px}.su-ws-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:14px;padding:6px 0;border-bottom:1px solid #f1f5f9}.su-ws-row:last-child{border-bottom:none}.su-ws-label{font-weight:600;color:#5f6b7a;text-transform:uppercase;font-size:11px;letter-spacing:.05em}.su-ws-value{font-weight:600;color:#1b2430;text-align:right}.su-muted{color:#5f6b7a;font-size:13px}.su-error-msg{color:#dc2626;font-size:14px;max-width:440px;text-align:center}.su-link-btn{background:none;border:none;cursor:pointer;color:#2c8c7b;font-weight:600;font-size:inherit;padding:0;text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-family);font-weight:var(--font-weight-medium);border-radius:var(--radius-lg);cursor:pointer;border:none;transition:all .15s ease;box-shadow:0 1px 2px #0000000d}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.btn-medium{padding:10px var(--space-4);font-size:var(--font-size-base)}.btn-large{padding:var(--space-3) 20px;font-size:var(--font-size-base)}.btn-primary{background:linear-gradient(135deg,var(--color-primary),#16304F);color:#fff;box-shadow:0 1px 2px #0000000d,0 1px 3px #1f3a5f33}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#16304F,var(--color-primary));box-shadow:0 4px 12px #1f3a5f4d,0 2px 4px #0000000f}.btn-secondary{background-color:#fff;color:var(--color-text-primary);border:1px solid rgba(0,0,0,.12)}.btn-secondary:hover:not(:disabled){background-color:#2c8c7b12;border-color:#2c8c7b}.btn-outline{background-color:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary);box-shadow:none}.btn-outline:hover:not(:disabled){background-color:#2c8c7b12;border-color:#2c8c7b}.btn-danger{background-color:var(--color-error);color:#fff;box-shadow:0 1px 3px #ef44444d}.btn-danger:hover:not(:disabled){background-color:#b91c1c;box-shadow:0 4px 8px #ef444459}.btn-outline-danger{background-color:transparent;color:#991b1b;border:1.5px solid #fca5a5;box-shadow:none}.btn-outline-danger:hover:not(:disabled){background-color:#fee2e2;color:#7f1d1d;border-color:#ef4444}.btn-success{background-color:#16a34a;color:#fff;box-shadow:0 1px 3px #16a34a4d}.btn-success:hover:not(:disabled){background-color:#15803d;box-shadow:0 4px 8px #16a34a59}@media (max-width: 768px){.btn-small{min-height:44px;padding:var(--space-2) var(--space-3)}.btn-medium{min-height:44px;padding:12px var(--space-4)}.btn-large{min-height:44px;padding:12px 20px}}.login-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-bg-app);padding:var(--space-4);gap:var(--space-4)}.login-back-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:var(--font-size-sm);text-decoration:none;transition:color .15s;align-self:flex-start;position:absolute;top:var(--space-6);left:var(--space-6)}.login-back-link:hover{color:var(--color-primary);text-decoration:none}.login-card{width:100%;max-width:440px;background-color:var(--color-bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-10)}.login-header{text-align:center;margin-bottom:var(--space-8)}.login-logo{font-size:40px;font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 var(--space-6) 0}.login-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-3) 0}.login-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-lg);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--space-4)}.form-group input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);outline:none;transition:all .2s;box-sizing:border-box}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a;border-image:linear-gradient(135deg,var(--color-primary),var(--color-accent)) 1}.password-input{position:relative}.password-input input{padding-right:40px}.password-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-secondary);padding:var(--space-2);cursor:pointer;display:flex;align-items:center}.password-toggle:hover{color:var(--color-text-primary)}.login-footer{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.login-footer a,.login-footer button.sso-link{font-size:var(--font-size-base);color:var(--color-primary);text-decoration:none;transition:all .2s;background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.login-footer a:hover,.login-footer button.sso-link:hover:not(:disabled){text-decoration:underline;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-footer button.sso-link:disabled{opacity:.6;cursor:not-allowed}.login-signup-prompt{text-align:center;margin-top:var(--space-5);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.login-signup-link{color:#2c8c7b;font-weight:600;text-decoration:none}.login-signup-link:hover{text-decoration:underline}.login-help{text-align:center;margin-top:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.login-help p{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.login-help a{color:var(--color-primary);text-decoration:none}.login-help a:hover{text-decoration:underline}.login-admin-divider{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-6);color:var(--color-text-secondary)}.login-admin-divider:before,.login-admin-divider:after{content:"";flex:1;height:1px;background-color:var(--color-border)}.login-admin-divider span{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;color:var(--color-text-secondary)}.admin-portal-link{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) var(--space-5);background-color:var(--color-bg-app);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-decoration:none;transition:all .2s}.admin-portal-link:hover{background-color:#1a2a3a;border-color:#c0392b;color:#c0392b;text-decoration:none!important;-webkit-text-fill-color:initial!important}.forgot-password-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--color-bg-app);padding:var(--space-4)}.forgot-password-card{width:100%;max-width:440px;background-color:var(--color-bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-10)}.back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-6);transition:color .2s}.back-link:hover{color:var(--color-primary)}.forgot-password-header{text-align:center;margin-bottom:var(--space-8)}.mail-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto var(--space-4);border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff}.forgot-password-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-3) 0}.forgot-password-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-lg);margin:0}.forgot-password-form{display:flex;flex-direction:column;gap:var(--space-4)}.form-group input{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);outline:none;transition:all .2s}.form-group input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.forgot-password-help{text-align:center;margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.forgot-password-help p{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.forgot-password-help a{color:var(--color-primary);text-decoration:none}.forgot-password-help a:hover{text-decoration:underline}.success-icon{display:flex;align-items:center;justify-content:center;width:100px;height:100px;margin:0 auto var(--space-6);border-radius:50%;background:linear-gradient(135deg,var(--color-success),var(--color-accent));color:#fff}.success-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-4) 0;text-align:center}.success-message{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-lg);margin:0 0 var(--space-3) 0;text-align:center}.success-message strong{color:var(--color-primary)}.success-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-lg);margin:0 0 var(--space-8) 0;text-align:center}.success-actions{display:flex;flex-direction:column;gap:var(--space-3)}.mfa-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(145deg,#0f1923,#1a2a3a,#0f1923);padding:var(--space-4);box-sizing:border-box}.mfa-card{width:100%;max-width:480px;background-color:#1e2d3d;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl);box-shadow:0 25px 80px #0009;padding:var(--space-10);box-sizing:border-box}.mfa-header{text-align:center;margin-bottom:var(--space-6)}.mfa-shield-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:linear-gradient(135deg,#1a5276,#2e86c1);border-radius:50%;color:#fff;margin-bottom:var(--space-4);box-shadow:0 4px 20px #2e86c159}.mfa-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:#c8d8e8;margin:0 0 var(--space-2) 0}.mfa-subtitle{font-size:var(--font-size-sm);color:#7a8fa0;margin:0;line-height:1.5}.mfa-info-notice{display:flex;align-items:flex-start;gap:var(--space-2);background-color:#2e86c11a;border:1px solid rgba(46,134,193,.25);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);color:#7fb3d3;font-size:var(--font-size-sm);line-height:1.5}.mfa-info-notice svg{flex-shrink:0;margin-top:2px}.mfa-warn-notice{display:flex;align-items:flex-start;gap:var(--space-2);background-color:#d354001a;border:1px solid rgba(211,84,0,.3);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);color:#e59866;font-size:var(--font-size-sm);line-height:1.5}.mfa-warn-notice svg{flex-shrink:0;margin-top:2px}.mfa-factor-fieldset{border:none;padding:0;margin:0 0 var(--space-5) 0}.mfa-factor-legend{font-size:var(--font-size-sm);color:#9ab0c4;font-weight:var(--font-weight-medium);margin-bottom:var(--space-3);display:block;width:100%}.mfa-factor-list{display:flex;flex-direction:column;gap:var(--space-2)}.mfa-factor-radio-label{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:#c8d8e8;font-size:var(--font-size-sm);cursor:pointer;transition:background .15s,border-color .15s;min-height:44px;box-sizing:border-box}.mfa-factor-radio-label:hover{background:#ffffff14;border-color:#fff3}.mfa-factor-radio-label:has(input:checked){background:#2e86c11f;border-color:#2e86c166;color:#7fb3d3}.mfa-factor-radio-input{width:16px;height:16px;flex-shrink:0;accent-color:#2e86c1;cursor:pointer}.mfa-factor-radio-input:focus-visible{outline:2px solid #2e86c1;outline-offset:2px}.mfa-factor-name{flex:1;font-weight:var(--font-weight-medium)}.mfa-factor-tag{font-size:var(--font-size-xs);color:#7a8fa0;background:#ffffff0f;padding:2px 6px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08)}.mfa-otp-section{margin-bottom:var(--space-5)}.mfa-otp-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#9ab0c4;margin-bottom:var(--space-3);letter-spacing:.02em}.mfa-otp-container{width:100%}.mfa-otp-slots{display:flex;gap:var(--space-2);justify-content:center}.mfa-otp-slot{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:56px;background:#ffffff0d;border:1.5px solid rgba(255,255,255,.15);border-radius:var(--radius-md);font-size:22px;font-weight:var(--font-weight-semibold);color:#e8edf2;transition:border-color .15s,background .15s;user-select:none}.mfa-otp-slot.mfa-otp-slot-active{border-color:#2e86c1;background:#2e86c114;box-shadow:0 0 0 3px #2e86c126}.mfa-otp-caret{position:absolute;bottom:12px;left:50%;transform:translate(-50%);width:2px;height:20px;background:#7fb3d3;animation:mfa-caret-blink 1s steps(1) infinite}@keyframes mfa-caret-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes mfa-spin{to{transform:rotate(360deg)}}.mfa-error{display:flex;align-items:flex-start;gap:var(--space-2);background:#c0392b1a;border:1px solid rgba(192,57,43,.3);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);color:#e8a090;font-size:var(--font-size-sm);line-height:1.5}.mfa-error svg{flex-shrink:0;margin-top:1px}.mfa-error-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap}.mfa-error-actions .mfa-btn-primary,.mfa-error-actions .mfa-btn-secondary{flex:1;min-width:0;margin-bottom:0}.mfa-incomplete-notice{display:flex;align-items:flex-start;gap:var(--space-2);background:#d3540014;border:1px solid rgba(211,84,0,.25);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-5);color:#e59866;font-size:var(--font-size-sm);line-height:1.5}.mfa-incomplete-notice svg{flex-shrink:0;margin-top:2px}.mfa-incomplete-body{display:flex;flex-direction:column;gap:var(--space-3)}.mfa-incomplete-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.mfa-btn-restart{padding:var(--space-2) var(--space-4);background:#d3540026;border:1px solid rgba(211,84,0,.35);border-radius:var(--radius-md);color:#e59866;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background .15s;min-height:44px}.mfa-btn-restart:hover:not(:disabled){background:#d3540040}.mfa-btn-restart:disabled{opacity:.5;cursor:not-allowed}.mfa-btn-restart:focus-visible{outline:2px solid #e59866;outline-offset:2px}.mfa-btn-primary{width:100%;padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,#1a5276,#2e86c1);border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s;letter-spacing:.02em;margin-bottom:var(--space-3);min-height:44px}.mfa-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1a4f77,#2471a3);box-shadow:0 4px 16px #2e86c159;transform:translateY(-1px)}.mfa-btn-primary:active:not(:disabled){transform:translateY(0)}.mfa-btn-primary:disabled{opacity:.55;cursor:not-allowed}.mfa-btn-primary:focus-visible{outline:2px solid #7fb3d3;outline-offset:2px}.mfa-btn-secondary{width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);color:#7a8fa0;font-size:var(--font-size-sm);cursor:pointer;transition:all .2s;min-height:44px}.mfa-btn-secondary:hover:not(:disabled){border-color:#ffffff40;color:#9ab0c4}.mfa-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.mfa-btn-secondary:focus-visible{outline:2px solid #7a8fa0;outline-offset:2px}.mfa-back{text-align:center;margin-top:var(--space-2)}.mfa-back-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:#7a8fa0;text-decoration:none;cursor:pointer;background:none;border:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:color .2s;min-height:44px}.mfa-back-link:hover{color:#9ab0c4}.mfa-back-link:focus-visible{outline:2px solid #7a8fa0;outline-offset:2px}.mfa-back-link:disabled{opacity:.5;cursor:not-allowed}.mfa-enroll-section{display:flex;flex-direction:column;gap:var(--space-5)}.mfa-qr-wrapper{display:flex;justify-content:center}.mfa-qr-image{width:180px;height:180px;background:#fff;border-radius:var(--radius-md);padding:var(--space-3);box-shadow:0 4px 20px #0006;display:block}.mfa-secret-section{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:var(--space-4)}.mfa-secret-label{font-size:var(--font-size-xs);color:#7a8fa0;margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.06em}.mfa-secret-row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.mfa-secret-value{flex:1;font-size:var(--font-size-sm);font-family:monospace;color:#c8d8e8;word-break:break-all;letter-spacing:.05em;min-width:0}.mfa-copy-btn{flex-shrink:0;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:#2e86c126;border:1px solid rgba(46,134,193,.3);border-radius:var(--radius-sm);color:#7fb3d3;font-size:var(--font-size-xs);cursor:pointer;transition:background .15s;white-space:nowrap;min-height:36px}.mfa-copy-btn:hover{background:#2e86c140}.mfa-copy-btn:focus-visible{outline:2px solid #7fb3d3;outline-offset:2px}.mfa-divider{display:flex;align-items:center;gap:var(--space-3);color:#4a6070;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em}.mfa-divider:before,.mfa-divider:after{content:"";flex:1;height:1px;background:#ffffff14}.mfa-loading-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-8) 0;color:#7a8fa0;font-size:var(--font-size-sm)}.mfa-spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.1);border-top-color:#2e86c1;border-radius:50%;animation:mfa-spin .8s linear infinite}.mfa-steps{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5)}.mfa-step{display:flex;align-items:flex-start;gap:var(--space-3)}.mfa-step-num{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#2e86c133;border:1px solid rgba(46,134,193,.4);color:#7fb3d3;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);flex-shrink:0;margin-top:1px}.mfa-step-text{font-size:var(--font-size-sm);color:#9ab0c4;line-height:1.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion: reduce){.mfa-spinner{animation:none;border-top-color:#2e86c1;opacity:.7}.mfa-otp-caret{animation:none;opacity:1}.mfa-btn-primary,.mfa-btn-secondary,.mfa-factor-radio-label,.mfa-otp-slot,.mfa-back-link,.mfa-copy-btn{transition:none}.mfa-btn-primary:hover:not(:disabled){transform:none}}@media (max-width: 480px){.mfa-page{align-items:flex-start;padding:var(--space-3) var(--space-3) var(--space-6)}.mfa-card{max-width:100%;padding:var(--space-6) var(--space-5);border-radius:var(--radius-lg)}.mfa-shield-icon{width:52px;height:52px}.mfa-title{font-size:var(--font-size-lg)}.mfa-otp-slots{gap:var(--space-1)}.mfa-otp-slot{width:40px;height:50px;font-size:20px}.mfa-factor-radio-label{padding:var(--space-3)}.mfa-error-actions{flex-direction:column}.mfa-error-actions .mfa-btn-primary,.mfa-error-actions .mfa-btn-secondary{width:100%}.mfa-btn-primary{font-size:var(--font-size-sm)}.mfa-secret-row{flex-direction:column;align-items:flex-start}.mfa-copy-btn{align-self:flex-start}.mfa-qr-image{width:160px;height:160px}.mfa-incomplete-actions{flex-direction:column}}@media (max-width: 320px){.mfa-card{padding:var(--space-5) var(--space-4)}.mfa-otp-slot{width:36px;height:44px;font-size:18px;border-radius:var(--radius-sm)}.mfa-otp-slots{gap:4px}.mfa-qr-image{width:140px;height:140px}}.dashboard{max-width:1400px;margin:0 auto;will-change:auto;contain:layout style}.dash-hero{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:24px 28px 20px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.dash-hero-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px}.dash-hero-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:4px}.dash-hero-greeting{font-size:26px;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 4px;line-height:1.2}.dash-hero-tagline{font-size:13px;color:var(--color-text-secondary);margin:0}.dash-hero-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex-shrink:0}.dash-hero-updated{font-size:11px;color:var(--color-text-disabled);white-space:nowrap}.dash-tiles-row{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.dash-tile{background:var(--color-bg-app, #f8fafc);padding:14px 16px;display:flex;flex-direction:column;gap:3px;transition:background .15s,box-shadow .15s;position:relative}.dash-tile:hover{background:#fff}.dash-tile--link{text-decoration:none!important;color:inherit;cursor:pointer}.dash-tile--link:hover{background:#fff}.dash-tile--link:hover,.dash-tile--link:hover *,.dash-tile--link:visited,.dash-tile--link:focus{text-decoration:none!important}.dash-tile--link.dash-tile--blue:hover{box-shadow:inset 0 -3px #1d4ed8}.dash-tile--link.dash-tile--green:hover{box-shadow:inset 0 -3px #15803d}.dash-tile--link.dash-tile--red:hover{box-shadow:inset 0 -3px #dc2626}.dash-tile--link.dash-tile--amber:hover{box-shadow:inset 0 -3px #d97706}.dash-tile--link.dash-tile--teal:hover{box-shadow:inset 0 -3px #0d9488}.dash-tile-top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.dash-tile-top-row .dash-tile-icon{margin-bottom:0}.dash-tile-arrow{color:var(--color-text-disabled);opacity:0;transition:opacity .15s,color .15s;flex-shrink:0}.dash-tile--link:hover .dash-tile-arrow{opacity:1;color:var(--color-primary, #1f3a5f)}.dash-tile-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-tile-icon--blue{background:#dbeafe;color:#1d4ed8}.dash-tile-icon--green{background:#dcfce7;color:#15803d}.dash-tile-icon--red{background:#fee2e2;color:#dc2626}.dash-tile-icon--amber{background:#fef3c7;color:#d97706}.dash-tile-icon--teal{background:#ccfbf1;color:#0d9488}.dash-tile-icon--purple{background:#ede9fe;color:#7c3aed}.dash-tile-value{font-size:20px;font-weight:700;color:var(--color-text-primary);line-height:1.1;letter-spacing:-.02em}.dash-tile-label{font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.dash-tile-sub{font-size:11px;color:var(--color-text-disabled)}.dash-main-cols{display:grid;grid-template-columns:1fr 340px;gap:20px;margin-bottom:24px;align-items:start}.dash-right-stack{display:flex;flex-direction:column;gap:14px}.state-accordion{display:flex;flex-direction:column}.state-row{display:flex;align-items:center;gap:10px;padding:11px 20px;border-top:1px solid var(--color-border);cursor:pointer;transition:background .12s;user-select:none}.state-row:first-child{border-top:none}.state-row:hover{background:var(--color-bg-app, #f8fafc)}.state-row-left{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.state-badge{font-size:12px;font-weight:700;color:var(--color-primary);background:#1f3a5f14;padding:2px 8px;border-radius:4px;min-width:36px;text-align:center;flex-shrink:0}.state-count{font-size:12px;font-weight:600;color:var(--color-text-secondary)}.state-overdue-badge{font-size:11px;font-weight:600;background:#fee2e2;color:#dc2626;padding:2px 7px;border-radius:999px;flex-shrink:0}.prop-group{border-top:1px solid rgba(0,0,0,.06);background:var(--color-bg-app, #f8fafc)}.prop-group>div+div>.prop-header{border-top:1px solid rgba(0,0,0,.08)}.prop-header{display:flex;align-items:center;gap:8px;padding:9px 20px 9px 36px;border-bottom:1px solid rgba(0,0,0,.06);background:#fff9}.prop-name{font-size:13px;font-weight:600;color:var(--color-text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.obl-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:7px 20px 7px 52px;border-bottom:1px solid rgba(0,0,0,.05);font-size:12px;transition:background .1s}.obl-row:last-child{border-bottom:none}.obl-row:hover{background:#00000006}.obl-type{color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.obl-date{color:var(--color-text-secondary);white-space:nowrap}.obl-overdue{font-size:11px;font-weight:700;color:#dc2626;white-space:nowrap}.obl-soon{font-size:11px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.dash-insights-panel{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.dash-insight-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);padding:13px 16px 9px;border-bottom:1px solid var(--color-border)}.dash-insight-item{display:flex;align-items:flex-start;gap:12px;padding:11px 16px;border-bottom:1px solid var(--color-border);transition:background .12s}.dash-insight-item:last-child{border-bottom:none}.dash-insight-item:hover{background:var(--color-bg-app, #f8fafc)}.dash-insight-icon{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-insight-icon--green{background:#dcfce7;color:#15803d}.dash-insight-icon--amber{background:#fef3c7;color:#d97706}.dash-insight-icon--red{background:#fee2e2;color:#dc2626}.dash-insight-text{flex:1;min-width:0}.dash-insight-main{font-size:12.5px;font-weight:600;color:var(--color-text-primary);line-height:1.4}.dash-insight-sub{font-size:11px;color:var(--color-text-secondary);margin-top:2px}.dash-occ-panel{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.dash-occ-header{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);padding:13px 16px 9px;border-bottom:1px solid var(--color-border)}.dash-occ-stats{display:grid;grid-template-columns:1fr 1fr}.dash-occ-stat{padding:12px 16px;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border)}.dash-occ-stat:nth-child(2n){border-right:none}.dash-occ-stat:nth-last-child(-n+2){border-bottom:none}.dash-occ-val{font-size:20px;font-weight:700;color:var(--color-text-primary);line-height:1.1}.dash-occ-val--green{color:var(--color-success)}.dash-occ-val--amber{color:var(--color-warning)}.dash-occ-label{font-size:11px;color:var(--color-text-secondary);margin-top:3px}.dash-occ-bar{padding:10px 16px 12px}.dash-occ-bar-track{height:4px;background:#00000014;border-radius:2px;overflow:hidden}.dash-occ-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:2px;transition:width .6s ease}.crit-dates-panel{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column}.crit-dates-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);padding:13px 20px 9px;border-bottom:1px solid var(--color-border)}.crit-dates-header{display:flex;align-items:center;gap:10px;padding:8px 20px 8px 17px;border-bottom:1px solid var(--color-border)}.crit-dates-header--red{background:#fef2f2;border-left:3px solid #ef4444}.crit-dates-header--amber{background:#fffbeb;border-left:3px solid #f59e0b}.state-row--red{background:#ef44440a}.state-row--red:hover{background:#ef444414}.state-row--amber{background:#f59e0b0a}.state-row--amber:hover{background:#f59e0b14}.crit-dates-hr-badge{display:inline-flex;align-items:center;gap:5px;background:#fee2e2;color:#b91c1c;font-size:12px;font-weight:700;padding:4px 10px;border-radius:6px;border:1px solid #fca5a5}.crit-dates-total{font-size:12px;color:var(--color-text-secondary);font-weight:500}.crit-dates-viewall{margin-left:auto;font-size:12px;font-weight:600;color:var(--color-accent, #2C8C7B);text-decoration:none;transition:opacity .15s}.crit-dates-viewall:hover{opacity:.75}.crit-dates-loading{padding:16px 0;display:flex;flex-direction:column;gap:10px}.crit-dates-skeleton{height:36px;width:100%;border-radius:6px;background:linear-gradient(90deg,var(--color-border) 25%,color-mix(in srgb,var(--color-border) 60%,transparent) 50%,var(--color-border) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.crit-dates-empty{padding:20px 0;font-size:13px;color:var(--color-text-secondary);text-align:center}.dashboard-main-row{display:grid;grid-template-columns:1fr 380px;gap:var(--space-6);margin-bottom:var(--space-6);align-items:stretch}.dashboard-chart-card,.dashboard-approvals-card{display:flex;flex-direction:column}.dashboard-approvals-card .card-header{border-bottom:none}.dashboard-approvals-card .card-content{flex:1;display:flex;flex-direction:column}.dashboard-main-row.single-col{grid-template-columns:1fr}.dashboard-chart-card .card-content{padding:var(--space-4) var(--space-4) var(--space-2)}.charts-pair-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:var(--space-6);margin-bottom:var(--space-6)}.dashboard-full-card{margin-bottom:var(--space-6)}.dash-right-stack .card-title,.dashboard-full-card .card-title,.charts-pair-row .card-title,.tables-grid .card-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);background:none;-webkit-text-fill-color:currentColor}.dash-right-stack .card-header,.dashboard-full-card .card-header,.charts-pair-row .card-header,.tables-grid .card-header{padding:13px 16px 9px;background:none;border-bottom:1px solid var(--color-border)}.approval-list{display:flex;flex-direction:column}.approval-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.05);position:relative}.approval-item--clickable{cursor:pointer;transition:background .12s}.approval-item--clickable:hover{background:#fffbf2}.approval-item--clickable:hover .approval-accent{background:#d97706}.approval-accent{width:3px;align-self:stretch;border-radius:2px;background:#f59e0b;flex-shrink:0;transition:background .12s;margin-right:2px}.approval-chevron{color:var(--color-text-disabled);flex-shrink:0;transition:color .12s,transform .12s}.approval-item--clickable:hover .approval-chevron{color:var(--color-text-secondary);transform:translate(2px)}.approval-item:last-child{border-bottom:none}.approval-info{flex:1;min-width:0}.approval-property{font-size:13px;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}.approval-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.approval-category-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;background:#fef3c7;color:#92400e;border-radius:10px;font-size:11px;font-weight:500;line-height:1.4}.approval-age{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--color-text-secondary)}.approval-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.approval-amount{font-size:13px;font-weight:700;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.empty-state{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.dashboard-expense-breakdown{display:flex;flex-direction:column;gap:var(--space-4)}.expense-legend{display:flex;flex-direction:column;gap:var(--space-2);padding:0 var(--space-2)}.expense-legend-item{display:flex;align-items:center;gap:var(--space-2)}.expense-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.expense-legend-name{flex:1;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.expense-legend-value{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.occupancy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-6);padding:var(--space-2) 0}.occupancy-stat{display:flex;flex-direction:column;gap:var(--space-2)}.occupancy-label{font-size:11px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.occupancy-value{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1;letter-spacing:-.02em}.occupancy-value.occ-positive{color:var(--color-success)}.occupancy-value.occ-warning{color:var(--color-warning)}.occupancy-sub{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.occupancy-bar-track{height:6px;background:#00000014;border-radius:3px;overflow:hidden}.occupancy-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:3px;transition:width .6s ease}.tables-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);margin-bottom:var(--space-6)}.tables-grid.single-col{grid-template-columns:1fr}.dashboard-table{overflow-x:auto}.dashboard-table table{width:100%;border-collapse:collapse}.dashboard-table thead{background:#f9fafb99;border-bottom:1px solid rgba(0,0,0,.06)}.dashboard-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:11px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em}.dashboard-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid rgba(0,0,0,.04);font-size:var(--font-size-base);color:var(--color-text-primary);vertical-align:middle}.dashboard-table tbody tr:last-child td{border-bottom:none}.dashboard-table tbody tr:hover{background-color:#1f3a5f05}.empty-cell{text-align:center;padding:var(--space-8) var(--space-4)!important;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.amount{font-variant-numeric:tabular-nums;font-weight:500}.rank-cell{color:var(--color-text-secondary);font-weight:600;font-size:var(--font-size-sm);width:32px}.text-positive{color:var(--color-success)}.text-negative{color:var(--color-error)}.view-all-link{color:var(--color-accent, #2C8C7B);text-decoration:none;font-size:var(--font-size-sm);font-weight:600;transition:opacity .15s;display:inline-flex;align-items:center}.view-all-link:hover{opacity:.75;text-decoration:none}.approval-view-all{display:block;text-align:center;padding:10px 0 4px;color:var(--color-accent, #2C8C7B);text-decoration:none;font-size:var(--font-size-sm);font-weight:600;border-top:1px solid var(--color-border);margin-top:4px;transition:opacity .15s}.approval-view-all:hover{opacity:.75;text-decoration:none}.dashboard-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-16) var(--space-4);color:var(--color-text-secondary);text-align:center}.customize-panel-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:flex-end;z-index:1000;animation:db-fadeIn .2s ease-in-out}@keyframes db-fadeIn{0%{opacity:0}to{opacity:1}}.customize-panel{background:#fff;width:480px;max-width:90vw;height:100vh;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:db-slideIn .3s ease-out}@keyframes db-slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width: 1200px){.dash-tiles-row{grid-template-columns:repeat(3,1fr)}.dash-main-cols{grid-template-columns:1fr}}@media (max-width: 1024px){.dashboard-main-row,.charts-pair-row{grid-template-columns:1fr}}@media (max-width: 768px){.dash-hero{padding:18px 16px 16px}.dash-hero-top{flex-direction:column;gap:12px}.dash-hero-meta{align-items:flex-start}.dash-tiles-row{grid-template-columns:repeat(2,1fr)}.dash-tile-value{font-size:17px}.tables-grid{grid-template-columns:1fr;gap:var(--space-4)}.dashboard-table{overflow-x:hidden}.dashboard-table table{min-width:unset}.dashboard-table table thead{display:none}.dashboard-table table tbody tr{display:block;padding:12px;margin-bottom:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.dashboard-table table tbody td{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--color-border);gap:8px;font-size:14px;flex-wrap:wrap}.dashboard-table table tbody td:last-child{border-bottom:none}.dashboard-table table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:12px;flex-shrink:0}}.dashboard-table-row--clickable{cursor:pointer;transition:background .12s}.dashboard-table-row--clickable:hover{background:var(--color-bg-app, #f8fafc)}.drawer-overlay{position:fixed;inset:0;background:#00000073;z-index:400;display:flex;align-items:center;justify-content:center;padding:24px 16px}.qv-panel{position:relative;width:min(600px,100%);max-height:85vh;background:var(--color-bg-surface, #fff);border-radius:14px;border:1px solid var(--color-border, #e2e8f0);z-index:401;display:flex;flex-direction:column;box-shadow:0 12px 48px #0000002e;overflow:hidden}.qv-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 22px 18px;border-bottom:1px solid var(--color-border, #e2e8f0);flex-shrink:0}.qv-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.qv-eyebrow{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--color-text-secondary, #64748b);text-transform:uppercase}.qv-title{font-size:17px;font-weight:700;color:var(--color-primary, #1F3A5F);margin:0;line-height:1.3}.qv-title-sub{font-weight:500;color:var(--color-text-secondary, #64748b)}.qv-header-controls{display:flex;align-items:center;gap:10px;flex-shrink:0}.qv-status-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.qv-status-badge--pending{background:#fef3c7;color:#92400e;border:1px solid #FDE68A}.qv-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--color-text-secondary, #64748b);cursor:pointer;transition:background .15s}.qv-close:hover{background:var(--color-bg-app, #f1f5f9)}.qv-body{flex:1;overflow-y:auto;padding:20px 22px;display:flex;flex-direction:column;gap:20px}.qv-amount-row{display:flex;align-items:flex-end;gap:16px}.qv-amount-label{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--color-text-secondary, #64748b);text-transform:uppercase;margin-bottom:2px}.qv-amount{font-size:30px;font-weight:700;color:var(--color-primary, #1F3A5F);letter-spacing:-.02em;line-height:1}.qv-amount--negative{color:#dc2626}.qv-due-date{font-size:28px;font-weight:700;color:var(--color-primary, #1F3A5F);letter-spacing:-.01em;line-height:1}.qv-due-date--overdue{color:#dc2626}.qv-due-date--soon{color:#d97706}.qv-due-relative{font-size:12px;font-weight:600;margin-top:4px;color:var(--color-text-secondary, #64748b)}.qv-due-relative--overdue{color:#dc2626}.qv-due-relative--soon{color:#d97706}.qv-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.qv-detail-col{display:flex;flex-direction:column;gap:14px}.qv-field{display:flex;flex-direction:column;gap:3px}.qv-label{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--color-text-secondary, #64748b);text-transform:uppercase}.qv-val{font-size:13.5px;font-weight:500;color:var(--color-text, #1e293b);line-height:1.4}.qv-reject-form{display:flex;flex-direction:column;gap:6px;padding-top:4px;border-top:1px solid var(--color-border, #e2e8f0)}.qv-reject-textarea{border:1px solid var(--color-border, #e2e8f0);border-radius:6px;padding:8px 10px;font-size:13px;color:var(--color-text, #1e293b);resize:vertical;font-family:inherit;background:var(--color-bg-app, #f8fafc)}.qv-reject-textarea:focus{outline:none;border-color:var(--color-accent, #2C8C7B);box-shadow:0 0 0 3px #2c8c7b1f}.qv-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-top:1px solid var(--color-border, #e2e8f0);flex-shrink:0;background:var(--color-bg-surface, #fff)}.qv-view-link{font-size:13px;font-weight:500;color:var(--color-accent, #2C8C7B);text-decoration:none;white-space:nowrap}.qv-view-link:hover{text-decoration:underline}.qv-footer-actions{display:flex;align-items:center;gap:10px}.qv-reject-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid #dc2626;background:transparent;color:#dc2626;transition:background .15s,color .15s;white-space:nowrap}.qv-reject-btn:hover:not(:disabled){background:#fef2f2}.qv-reject-btn:disabled{opacity:.4;cursor:not-allowed}.qv-reject-link{background:none;border:none;padding:0;font-size:13px;font-weight:500;color:#dc2626;cursor:pointer;text-decoration:none;white-space:nowrap;transition:opacity .15s}.qv-reject-link:hover:not(:disabled){opacity:.75}.qv-reject-link:disabled{opacity:.4;cursor:not-allowed}.qv-cancel-link{background:none;border:none;padding:0;font-size:13px;font-weight:500;color:var(--color-text-secondary, #64748b);cursor:pointer;white-space:nowrap;transition:opacity .15s}.qv-cancel-link:hover:not(:disabled){opacity:.75}.qv-cancel-link:disabled{opacity:.4;cursor:not-allowed}.qv-approve-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;border:none;background:#16a34a;color:#fff;transition:background .15s;white-space:nowrap}.qv-approve-btn:hover:not(:disabled){background:#15803d}.qv-approve-btn:disabled{opacity:.5;cursor:not-allowed}.qv-confirm-reject-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;border:none;background:#dc2626;color:#fff;transition:background .15s;white-space:nowrap}.qv-confirm-reject-btn:hover:not(:disabled){background:#b91c1c}.qv-confirm-reject-btn:disabled{opacity:.5;cursor:not-allowed}.qv-budget-block{display:flex;flex-direction:column;gap:6px}.qv-budget-track{display:flex;height:8px;border-radius:6px;overflow:hidden;background:var(--color-border, #e2e8f0)}.qv-budget-fill--prior{background:#3b82f6;border-radius:6px 0 0 6px;transition:width .4s ease;min-width:2px}.qv-budget-fill--this{background:#f59e0b;border-radius:0 6px 6px 0;transition:width .4s ease;min-width:2px}.qv-budget-legend{display:flex;justify-content:space-between;gap:6px;font-size:11px;font-weight:500}.qv-budget-legend__prior{color:#3b82f6}.qv-budget-legend__this{color:#d97706}.qv-chain-block{display:flex;flex-direction:column;gap:8px}.qv-chain-loading{font-size:12px;color:var(--color-text-secondary, #64748b)}.qv-chain{display:flex;flex-direction:column;gap:0}.qv-chain-step{display:flex;align-items:flex-start;gap:8px}.qv-chain-dot-col{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:18px}.qv-chain-dot{width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.qv-chain-step--done .qv-chain-dot{color:#16a34a}.qv-chain-step--current .qv-chain-dot{color:var(--color-primary, #1F3A5F)}.qv-chain-step--future .qv-chain-dot{color:var(--color-text-secondary, #94a3b8);opacity:.5}.qv-chain-line{width:1.5px;flex:1;min-height:10px;background:var(--color-border, #e2e8f0);margin:2px 0}.qv-chain-text{display:flex;flex-direction:column;gap:1px;padding-bottom:10px;min-width:0}.qv-chain-step:last-child .qv-chain-text{padding-bottom:0}.qv-chain-label{font-size:12px;font-weight:600;color:var(--color-text-primary, #1e293b);line-height:1.3}.qv-chain-step--future .qv-chain-label{color:var(--color-text-secondary, #64748b)}.qv-chain-step--current .qv-chain-label{color:var(--color-primary, #1F3A5F);font-weight:700}.qv-chain-sub{font-size:11px;color:var(--color-text-secondary, #64748b);font-weight:400}@media (max-width: 520px){.qv-detail-grid{grid-template-columns:1fr}.qv-footer{flex-direction:column;align-items:flex-start;gap:10px}.qv-footer-actions{width:100%;justify-content:flex-end}}@media (max-width: 768px){.dash-hero-greeting{font-size:22px!important}.dash-hero-tagline{font-size:13px}.dash-tiles-row{grid-template-columns:repeat(2,1fr)!important}.dash-tile{padding:12px 10px}.dash-tile-value{font-size:16px}.dash-tile-label{font-size:10px}.dash-main-cols{grid-template-columns:1fr!important;gap:var(--space-4)}.dash-right-stack{gap:var(--space-4)}.crit-dates-panel{border-radius:10px}.state-row{padding:10px 14px}.dash-insights-panel,.dash-occ-panel{border-radius:10px}.dash-occ-stats{grid-template-columns:1fr 1fr}.approval-item{padding:10px 14px}.approval-property{font-size:13px}.charts-pair-row{grid-template-columns:1fr!important;gap:var(--space-4)}.dashboard-full-card{margin-bottom:var(--space-4)}.dash-right-stack .card-content{padding:0!important}.customize-overlay{align-items:flex-end!important}.customize-panel{width:100%!important;max-width:100%!important;height:85vh;border-radius:16px 16px 0 0!important}.drawer-overlay{padding:0;align-items:flex-end}.qv-panel{width:100%;max-height:90vh;border-radius:16px 16px 0 0}}@media (max-width: 480px){.dash-tile-value{font-size:15px}.dash-tile-icon{width:30px;height:30px}.dash-tiles-row{gap:1px}}.page-loader{display:flex;align-items:center;justify-content:center;min-height:65vh;width:100%;padding:var(--space-8)}.page-loader-inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-5);text-align:center}.page-loader-illustration{width:220px;height:auto;flex-shrink:0}.page-loader-text{display:flex;flex-direction:column;align-items:center;gap:var(--space-1-5)}.page-loader-title{margin:0;font-size:22px;font-weight:700;color:var(--color-text-primary);line-height:1.2}.page-loader-message{margin:0;font-size:14px;color:var(--color-text-secondary)}.page-loader-dots{display:flex;gap:8px;align-items:center}.page-loader-dots span{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--color-primary);animation:page-loader-wave 1.4s ease-in-out infinite}.page-loader-dots span:nth-child(1){animation-delay:0s}.page-loader-dots span:nth-child(2){animation-delay:.18s}.page-loader-dots span:nth-child(3){animation-delay:.36s}.page-loader-dots span:nth-child(4){animation-delay:.54s}@keyframes page-loader-wave{0%,80%,to{opacity:.2;transform:scale(.75);background:var(--color-primary)}40%{opacity:1;transform:scale(1.1);background:var(--color-accent)}}.property-list-page{padding:var(--space-6)}.property-list-page .filters-row{align-items:flex-start}.property-list-page .filter-group{display:grid;grid-template-rows:20px 42px;row-gap:var(--space-2);align-content:start}.property-list-page .filter-group label{height:20px;min-height:20px;line-height:20px;margin:0;display:flex;align-items:center;box-sizing:border-box}.property-list-page .filter-group label svg{flex:0 0 auto;display:block}.property-list-page .search-filter .input-wrapper{height:42px;min-height:42px;width:100%}.property-list-page .search-filter .input-wrapper input{display:block;width:100%;height:42px;min-height:42px;margin:0;box-sizing:border-box}.property-list-page .filter-group select,.property-list-page .filter-group input{height:42px;min-height:42px;margin:0;box-sizing:border-box;padding:var(--space-2-5) var(--space-3);font-size:var(--font-size-base)}.property-list-page .filters-row>button{height:42px;min-height:42px;align-self:flex-end}.property-list-page .filter-btn-group{align-self:flex-end}.property-list-page .filter-btn-group button{height:42px;min-height:42px}.property-table-container{overflow-x:auto;margin-top:var(--space-6)}.property-card,.properties-cards-container{display:none}.property-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.property-table th:nth-child(1){width:180px}.property-table th:nth-child(2){width:250px}.property-table th:nth-child(3){width:80px}.property-table th:nth-child(5){width:120px}.property-table th:nth-child(6){width:180px}.property-table th:nth-child(7){width:180px}.property-table th:nth-child(8){width:130px}.property-table th:nth-child(9){width:130px}.property-table th:nth-child(10){width:120px}.property-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property-row{transition:background-color .15s}.property-row:hover{background-color:var(--color-bg-hover)}.property-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.property-link:hover{text-decoration:underline}.property-name-cell{display:flex;align-items:center;gap:var(--space-2)}.property-icon{color:var(--color-text-secondary)}.address-cell{display:flex;align-items:center;gap:var(--space-2)}.address-icon{color:var(--color-text-secondary);flex-shrink:0}.mono{font-family:Courier New,monospace;font-size:var(--font-size-sm)}.alerts-badge{display:inline-flex;align-items:center;gap:var(--space-1-5);padding:var(--space-1-5) var(--space-2-5);background-color:var(--color-warning-bg);color:var(--color-warning-text);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}@media (max-width: 768px){.property-list-page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:20px}.page-header h1{font-size:22px}.page-subtitle{font-size:14px}.page-actions{width:100%;flex-direction:column}.page-actions button{width:100%;min-height:44px}.filters-section{padding:12px}.filters-row{flex-direction:column;gap:12px;align-items:stretch}.search-filter,.filter-group{min-width:100%;width:100%}.filter-group select,.input-wrapper input{min-height:44px;font-size:16px}.property-list-page .filter-group{grid-template-rows:20px 44px}.property-list-page .filter-group select,.property-list-page .filter-group input,.property-list-page .search-filter .input-wrapper,.property-list-page .search-filter .input-wrapper input{height:44px;min-height:44px}.property-table-container{display:none}.properties-cards-container{display:block;margin-top:16px}.property-card{display:block;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px}.property-card:hover{background-color:var(--color-bg-hover)}.property-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.property-card-title{flex:1}.property-card-title .property-link{font-size:16px;font-weight:600;display:block;margin-bottom:4px}.property-card-address{font-size:14px;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.property-card-body{display:flex;flex-direction:column;gap:8px}.property-card-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.property-card-label{font-size:12px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.property-card-value{font-size:14px;color:var(--color-text-primary);font-weight:500;text-align:right}.pagination{flex-direction:column;gap:16px;padding:16px 12px}.pagination-info{order:2}.pagination-controls{order:1;width:100%;justify-content:space-between}.pagination-controls button{min-height:44px;min-width:44px}}.pl-hero-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);margin-bottom:var(--space-5)}.pl-hero-strip--4col{grid-template-columns:repeat(4,1fr)}.pl-hero-tile{display:flex;align-items:center;gap:var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm);transition:box-shadow .15s,transform .15s}.pl-hero-tile:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.pl-hero-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-lg);flex-shrink:0}.pl-hero-icon--blue{background:#dbeafe;color:#1d4ed8}.pl-hero-icon--green{background:#dcfce7;color:#15803d}.pl-hero-icon--red{background:#fee2e2;color:#dc2626}.pl-hero-icon--amber{background:#fef3c7;color:#d97706}.pl-hero-icon--gray{background:#f1f5f9;color:#475569}.pl-hero-icon--teal{background:#ccfbf1;color:#0f766e}.pl-hero-body{display:flex;flex-direction:column;gap:2px;min-width:0}.pl-hero-value{font-size:22px;font-weight:700;color:var(--color-text-primary);line-height:1.1;white-space:nowrap}.pl-hero-label{font-size:12px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-hero-sub{font-size:11px;color:var(--color-text-disabled);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pl-hero-tile--clickable{cursor:pointer;position:relative}.pl-hero-tile--clickable:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.pl-hero-tile--active{transform:translateY(-1px)}.pl-hero-tile--active-green{border-color:#15803d;box-shadow:0 0 0 2px #15803d26,var(--shadow-sm)}.pl-hero-tile--active-red{border-color:#dc2626;box-shadow:0 0 0 2px #dc262626,var(--shadow-sm)}.pl-hero-tile--active-amber{border-color:#d97706;box-shadow:0 0 0 2px #d9770626,var(--shadow-sm)}.pl-hero-tile--active-gray{border-color:#475569;box-shadow:0 0 0 2px #47556926,var(--shadow-sm)}.pl-hero-tile--active-teal{border-color:#0f766e;box-shadow:0 0 0 2px #0f766e26,var(--shadow-sm)}.pl-hero-active-dot{position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.5}.pl-hero-tile--active-green .pl-hero-active-dot{background:#15803d;opacity:1}.pl-hero-tile--active-red .pl-hero-active-dot{background:#dc2626;opacity:1}.pl-hero-tile--active-amber .pl-hero-active-dot{background:#d97706;opacity:1}.pl-hero-tile--active-gray .pl-hero-active-dot{background:#475569;opacity:1}.pl-hero-tile--active-teal .pl-hero-active-dot{background:#0f766e;opacity:1}.pl-tile-filter-banner{display:flex;align-items:center;gap:10px;padding:8px 14px;margin-bottom:10px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--radius-lg);font-size:13px;color:var(--color-text-secondary)}.pl-tile-filter-label strong{color:var(--color-text-primary)}.pl-tile-filter-clear{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:3px 10px;background:#fff;border:1px solid #bae6fd;border-radius:20px;font-size:12px;color:var(--color-text-secondary);cursor:pointer;transition:background .12s,color .12s}.pl-tile-filter-clear:hover{background:#dc2626;border-color:#dc2626;color:#fff}.pl-hero-tile--alert{border-color:#fca5a5}@media (max-width: 1100px){.pl-hero-strip{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.pl-hero-strip{grid-template-columns:repeat(2,1fr)}.pl-hero-value{font-size:18px}}.wip-panels-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-5)}.wip-panel{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden}.wip-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 10px;border-bottom:1px solid var(--color-border)}.wip-panel-title-group{display:flex;align-items:center;gap:10px}.wip-panel-title{font-size:14px;font-weight:700;color:var(--color-text-primary);margin:0}.wip-panel-subtitle{font-size:11px;color:var(--color-text-secondary);margin:2px 0 0}.wip-panel-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:700;border-radius:999px}.wip-panel-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);background:#e0f2fe;color:#0369a1;flex-shrink:0}.wip-panel-body{flex:1;overflow:hidden}.wip-panel-body--expanded{max-height:480px;overflow-y:auto}.wip-panel-empty{padding:24px 20px;text-align:center;font-size:13px;color:var(--color-text-disabled)}.wip-panel-footer{padding:10px 20px;border-top:1px solid var(--color-border)}.wip-panel-link{font-size:12px;font-weight:600;color:var(--color-accent, #2C8C7B);background:none;border:none;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:4px;transition:opacity .15s}.wip-panel-link:hover{opacity:.75}.pq-row{display:grid;grid-template-columns:80px 1fr auto auto;align-items:center;gap:10px;padding:9px 20px;border-bottom:1px solid var(--color-border);font-size:13px;transition:background .1s}.pq-row:last-child{border-bottom:none}.pq-row:hover{background:var(--color-bg-hover, #f8fafc)}.pq-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.pq-badge--overdue{background:#fee2e2;color:#dc2626}.pq-badge--soon{background:#fef3c7;color:#d97706}.pq-property{font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pq-desc{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pq-date{font-size:12px;color:var(--color-text-secondary);white-space:nowrap}.pq-avatar{width:26px;height:26px;border-radius:50%;background:var(--color-primary);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ru-row{display:flex;align-items:flex-start;gap:10px;padding:10px 20px;border-bottom:1px solid var(--color-border);transition:background .1s}.ru-row:last-child{border-bottom:none}.ru-row:hover{background:var(--color-bg-hover, #f8fafc)}.ru-dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent, #2C8C7B);flex-shrink:0;margin-top:5px}.ru-content{flex:1;min-width:0}.ru-text{font-size:13px;color:var(--color-text-primary);line-height:1.4}.ru-text-highlight{font-weight:600;color:var(--color-primary)}.ru-time{font-size:11px;color:var(--color-text-disabled);white-space:nowrap;flex-shrink:0;margin-top:2px}@media (max-width: 900px){.wip-panels-row{grid-template-columns:1fr}.pq-row{grid-template-columns:72px 1fr auto}.pq-avatar{display:none}}.ai-wizard{display:flex;gap:24px;align-items:flex-start;max-width:100%;box-sizing:border-box}.ai-wizard-stepper{flex:0 0 220px;display:flex;flex-direction:column;gap:4px;position:sticky;top:16px}.ai-wizard-step{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:1px solid transparent;cursor:pointer;background:transparent;text-align:left;width:100%;font-size:13px;color:var(--color-text-secondary)}.ai-wizard-step.active{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-primary);font-weight:600}.ai-wizard-step-icon{flex:0 0 20px;height:20px;width:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.ai-wizard-step-icon.pending{background:var(--color-bg-secondary);color:var(--color-text-tertiary);border:1px solid var(--color-border)}.ai-wizard-step-icon.review_required{background:var(--color-warning-bg, #fff3cd);color:var(--color-warning-dark, #856404)}.ai-wizard-step-icon.confirmed{background:var(--color-success-bg, #d4edda);color:var(--color-success-dark, #155724)}.ai-wizard-body{flex:1;min-width:0;max-width:100%}.ai-wizard-dropzone{border:2px dashed var(--color-border);border-radius:10px;padding:32px;text-align:center;color:var(--color-text-secondary);max-width:100%;box-sizing:border-box;transition:background-color .15s,border-color .15s}.ai-wizard-doc-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;margin-bottom:10px;background:var(--color-bg);max-width:100%;box-sizing:border-box;word-break:break-word}.ai-wizard-notes-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;border:1px solid var(--color-warning, #ffc107);background:var(--color-warning-bg, #fff3cd);color:var(--color-warning-dark, #856404);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.ai-wizard-notes-toggle:hover{background:#ffeaa0}.ai-wizard-warning{padding:12px 14px;border-radius:8px;background:var(--color-warning-bg, #fff3cd);border:1px solid var(--color-warning, #ffc107);color:var(--color-warning-dark, #856404);font-size:13px;margin-bottom:10px}.ai-wizard-critical-date-row{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--color-border);border-radius:8px;margin-bottom:8px}.ai-wizard-provenance-tag{font-size:11px;padding:2px 8px;border-radius:999px;font-weight:600}.ai-wizard-provenance-tag.extracted{background:var(--color-info-bg, #dbeafe);color:var(--color-info-dark, #1e40af)}.ai-wizard-provenance-tag.calculated{background:var(--color-bg-secondary);color:var(--color-text-secondary)}.ai-wizard-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border)}.ai-wizard-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@keyframes ai-wizard-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-wizard-spinner{display:inline-block;animation:ai-wizard-spin .9s linear infinite}.ai-wizard-review-section{border:1px solid var(--color-border);border-radius:10px;padding:16px;margin-bottom:14px;background:var(--color-bg)}.ai-wizard-review-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.ai-wizard-review-section-header h4{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.ai-wizard-review-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:4px 0;border-bottom:1px solid var(--color-border)}.ai-wizard-review-row:last-child{border-bottom:none}.ai-wizard-review-row .label{color:var(--color-text-secondary);flex:0 0 auto}.ai-wizard-review-row .value{color:var(--color-text-primary);text-align:right;word-break:break-word}.ai-wizard-photo-preview{max-width:240px;max-height:160px;border-radius:8px;border:1px solid var(--color-border);object-fit:cover}@media (max-width: 900px){.ai-wizard{flex-direction:column}.ai-wizard-stepper{flex-direction:row;flex-wrap:wrap;position:static;width:100%}.ai-wizard-grid-2{grid-template-columns:1fr}.ai-wizard-review-row{flex-direction:column}.ai-wizard-review-row .value{text-align:left}}.add-property-page{max-width:1400px;margin:0 auto}.add-property-page .page-header{margin-bottom:var(--space-8)}.header-with-back{display:flex;align-items:flex-start;gap:var(--space-4)}.back-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.back-button:hover{background:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.add-property-page h1{margin:0 0 var(--space-2) 0}.add-property-page form{display:flex;flex-direction:column;gap:var(--space-6)}.add-property-page .card-header{padding-top:14px;padding-bottom:14px;padding-left:var(--space-6)}.add-property-page .card-title{margin:0;padding:0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.form-group{display:flex;flex-direction:column;gap:var(--space-2);position:relative}.form-group input,.form-group select{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;transition:all .2s}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.form-group input::placeholder{color:var(--color-text-secondary)}.input-with-prefix{position:relative}.input-prefix{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:var(--font-size-base);pointer-events:none;z-index:1}.input-with-prefix input{padding-left:36px}.contact-section-header{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.contact-section-header:first-child{margin-top:0;padding-top:0;border-top:none}.contact-section-header h3{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.03em;font-size:var(--font-size-sm)}.form-group textarea{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;transition:all .2s;font-family:var(--font-family);resize:vertical}.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.form-group textarea::placeholder{color:var(--color-text-secondary)}.photo-upload-area{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;cursor:pointer;transition:all .2s;background-color:var(--color-bg-surface)}.photo-upload-area:hover{border-color:var(--color-primary);background-color:#1f3a5f05}.photo-upload-area.drag-over{border-color:var(--color-accent);background-color:#2c8c7b0f;border-style:solid}.photo-upload-label{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);cursor:pointer;color:var(--color-text-secondary)}.photo-upload-label svg{color:var(--color-primary)}.photo-upload-label span{font-size:var(--font-size-base)}.upload-hint{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.photo-preview-container{position:relative;border-radius:var(--radius-lg);overflow:hidden;background-color:var(--color-bg-surface);border:1px solid var(--color-border)}.photo-preview{width:100%;height:auto;max-height:400px;object-fit:contain;display:block}.remove-photo-btn{position:absolute;top:var(--space-3);right:var(--space-3);background-color:#0009;color:#fff;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.remove-photo-btn:hover{background-color:var(--color-error);transform:scale(1.1)}@media (max-width: 768px){.add-property-page{padding:16px}.page-header{margin-bottom:20px}.header-with-back{gap:12px}.back-button{min-height:44px;min-width:44px}.add-property-page h1{font-size:22px}.page-subtitle{font-size:14px}.add-property-page form{gap:20px}.add-property-page .card-header{padding:12px 16px}.add-property-page .card-title{font-size:18px}.form-grid{grid-template-columns:1fr;gap:16px}.form-group label{font-size:14px}.form-group input,.form-group select,.form-group textarea{min-height:44px;font-size:16px;padding:12px 14px}.form-group textarea{min-height:120px}.form-actions{flex-direction:column-reverse;gap:12px;padding-top:16px}.form-actions button{width:100%;min-height:44px}.contact-section-header{margin-top:16px;padding-top:16px}.contact-section-header h3{font-size:14px}.label-with-tooltip .tooltip{white-space:normal;max-width:200px}.photo-upload-area{padding:32px 16px}.photo-preview{max-height:300px}.remove-photo-btn{width:44px;height:44px}}.apg-root{display:flex;align-items:center;justify-content:center;min-height:100%;padding:var(--space-8) var(--space-6)}.apg-container{width:100%;max-width:760px}.apg-header{text-align:center;margin-bottom:2.5rem}.apg-icon{display:inline-flex;margin-bottom:1.25rem}.apg-title{font-size:1.625rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .625rem;letter-spacing:-.02em}.apg-subtitle{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.apg-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:2.5rem}.apg-card{background:var(--color-bg-section);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);padding:1.75rem 1.5rem 1.5rem;cursor:pointer;transition:border-color .18s,box-shadow .18s,transform .12s;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem}.apg-card:hover{box-shadow:0 4px 20px #00000014;transform:translateY(-2px)}.apg-card--ai:hover{border-color:var(--color-accent)}.apg-card--manual:hover{border-color:var(--color-primary)}.apg-card-illustration{width:100%;display:flex;justify-content:center;padding:.25rem 0 .5rem}.apg-card-title{font-size:1.0625rem;font-weight:700;color:var(--color-text-primary);margin:0}.apg-card-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.55}.apg-tags{display:flex;flex-wrap:wrap;gap:.375rem}.apg-tags span{font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px}.apg-tags--ai span{background:#2c8c7b1a;color:var(--color-accent)}.apg-tags--manual span{background:#1f3a5f14;color:var(--color-primary)}.apg-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.6875rem 1rem;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:opacity .15s,background .15s;margin-top:auto}.apg-btn--ai{background:var(--color-primary);color:#fff;border:none}.apg-btn--ai:hover{background:color-mix(in srgb,var(--color-primary) 88%,black)}.apg-btn--manual{background:transparent;color:var(--color-text-primary);border:1.5px solid var(--color-border)}.apg-btn--manual:hover{border-color:var(--color-primary);color:var(--color-primary);background:#1f3a5f08}.apg-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:1.75rem;border-top:1px solid var(--color-border)}.apg-badge{display:flex;align-items:flex-start;gap:.625rem}.apg-badge-icon{flex-shrink:0;color:var(--color-text-secondary);margin-top:1px}.apg-badge-title{font-size:12px;font-weight:600;color:var(--color-text-primary);margin:0 0 2px}.apg-badge-desc{font-size:11px;color:var(--color-text-secondary);margin:0;line-height:1.5}@media (max-width: 600px){.apg-cards{grid-template-columns:1fr}.apg-badges{grid-template-columns:1fr;gap:1.25rem}}.confirm-dialog-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(2px)}.confirm-dialog{background-color:var(--color-bg-surface);border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:450px;width:90%;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.confirm-dialog-icon{display:flex;justify-content:center;margin-bottom:var(--space-2)}.confirm-dialog-content{text-align:center}.confirm-dialog-title{margin:0 0 var(--space-3) 0;color:var(--color-text-primary)}.confirm-dialog-message{margin:0;color:var(--color-text-secondary);line-height:var(--line-height-lg)}.confirm-dialog-actions{display:flex;gap:var(--space-3);margin-top:var(--space-2)}.confirm-dialog-actions button{flex:1}.property-detail-page{padding:var(--space-6)}.property-detail-page .card-header{padding-top:14px;padding-bottom:14px}.property-detail-page .card-title{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.property-hero{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.property-hero-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.property-title-section{display:flex;align-items:center;gap:var(--space-3)}.property-title{margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.property-subtitle{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-base);margin-bottom:var(--space-6)}.property-hero-actions{display:flex;align-items:center;gap:var(--space-3)}.property-stats-bar{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) 0;border-top:1px solid var(--color-border);flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;gap:var(--space-1);min-width:120px;align-self:flex-start}.stat-label{display:flex;align-items:center;gap:var(--space-1-5);font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.03em}.stat-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.stat-divider{width:1px;height:40px;background-color:var(--color-border);flex-shrink:0;align-self:flex-start}.stat-item.alert-stat{background-color:var(--color-warning-bg);padding:var(--space-3);border-radius:var(--radius-md);align-self:flex-end;flex-direction:row;gap:var(--space-2);align-items:center;min-width:auto}.stat-item.alert-stat svg{color:var(--color-warning-text);flex-shrink:0}.stat-item.alert-stat span{color:var(--color-warning-text);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;white-space:nowrap}.overview-tab{display:flex;flex-direction:column;gap:var(--space-6)}.overview-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:stretch;margin-bottom:var(--space-6)}.overview-column{display:flex;flex-direction:column;gap:var(--space-6);height:100%}.overview-column>:last-child{flex:1}.compact-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.compact-info-item{display:flex;flex-direction:column;gap:var(--space-1-5);padding:var(--space-3);background-color:var(--color-bg-app);border-radius:var(--radius-md);transition:all .2s}.compact-info-item:hover{background-color:#1f3a5f0d}.compact-info-item.highlight{background:linear-gradient(135deg,#1f3a5f14,#2c8c7b14);border:1px solid rgba(31,58,95,.15)}.compact-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.03em}.compact-value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.contacts-compact{display:flex;flex-direction:column;gap:var(--space-5)}.contact-section{display:flex;flex-direction:column;gap:var(--space-3)}.contact-section-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.03em}.contact-info-grid{display:flex;flex-direction:column;gap:var(--space-2)}.contact-info-item{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0}.contact-info-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);min-width:60px}.contact-info-value{font-size:var(--font-size-sm);color:var(--color-text-primary);text-align:right;word-break:break-word}.notes-section{position:relative}.edit-notes-btn-inline{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);transition:all .2s}.edit-notes-btn-inline:hover{background-color:#1f3a5f14}.notes-textarea{width:100%;min-height:320px;padding:var(--space-3);font-size:var(--font-size-base);font-family:var(--font-family);border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;line-height:var(--line-height-xl);color:var(--color-text-secondary);outline:none;transition:all .2s}.notes-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.obligation-card{transition:all .2s ease}.obligation-card .card-content{padding:0;overflow:hidden;border-radius:0 0 var(--radius-xl) var(--radius-xl)}.obligation-header{cursor:pointer;padding:var(--space-5) var(--space-6);border-radius:var(--radius-xl) var(--radius-xl) 0 0;transition:background-color .2s}.obligation-header:hover{background-color:var(--color-bg-hover)}.obligation-header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.obligation-header-left{flex:1;display:flex;flex-direction:column;gap:var(--space-2-5)}.obligation-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.3}.obligation-meta{display:flex;align-items:center;gap:var(--space-2-5);flex-wrap:wrap}.obligation-days{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.days-overdue{color:var(--color-error)!important;font-weight:var(--font-weight-semibold)}.days-urgent{color:var(--color-warning)!important;font-weight:var(--font-weight-semibold)}.obligation-header-right{color:var(--color-text-secondary);flex-shrink:0;transition:transform .2s}.obligation-details{padding:var(--space-5) var(--space-6) var(--space-6);border-top:1px solid var(--color-border);background-color:var(--color-bg-app);animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.obligation-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.obligation-detail-item{display:flex;flex-direction:column;gap:var(--space-1-5)}.obligation-detail-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.03em}.obligation-detail-value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}@media (max-width: 1024px){.overview-main-grid,.compact-info-grid{grid-template-columns:1fr}.obligation-details-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.obligation-details-grid{grid-template-columns:1fr}}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-6);align-items:start}.detail-label{font-size:var(--font-size-base);color:var(--color-text-secondary)}.detail-value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.property-description{margin:0;line-height:var(--line-height-xl);color:var(--color-text-secondary)}.link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.link:hover{text-decoration:underline}.empty-state{padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.not-found{padding:var(--space-12);text-align:center}.not-found h1{margin:0 0 var(--space-4) 0}.not-found p{color:var(--color-text-secondary);margin:0 0 var(--space-6) 0}.sort-controls{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.sort-controls label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.sort-button{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s}.sort-button:hover{background-color:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-text-primary)}.sort-button.active{background-color:#1f3a5f14;border-color:var(--color-primary);color:var(--color-primary)}.sort-button svg{color:currentColor}.results-info{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-secondary);background-color:var(--color-bg-app)}.no-results{padding:var(--space-8) var(--space-6);text-align:center;color:var(--color-text-secondary)}.no-results p{margin:0;font-size:var(--font-size-base)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal-content{background-color:var(--color-bg-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;width:100%;max-width:700px;max-height:90vh;overflow-y:auto}.alert-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6);border-bottom:1px solid var(--color-border)}.alert-modal .modal-header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-text-primary);display:flex;align-items:center}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.modal-close:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.alert-modal .modal-body{padding:var(--space-6)}.alerts-list{display:flex;flex-direction:column;gap:var(--space-4)}.alert-item{background-color:var(--color-bg-app);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.alert-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3)}.alert-title-section{display:flex;align-items:center;gap:var(--space-3);flex:1}.alert-title-section h3{margin:0;font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.alert-icon{flex-shrink:0}.alert-icon.high{color:var(--color-error)}.alert-icon.medium{color:var(--color-warning)}.alert-icon.low{color:var(--color-text-secondary)}.alert-details{display:flex;flex-direction:column;gap:var(--space-3)}.alert-meta{display:flex;flex-wrap:wrap;gap:var(--space-4)}.alert-meta-item{display:flex;gap:var(--space-2);font-size:var(--font-size-sm)}.alert-meta-label{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.alert-meta-value{color:var(--color-text-primary)}.alert-description{padding:var(--space-3);background-color:var(--color-bg-surface);border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.alert-description p{margin:0;font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-lg)}.alert-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.alert-stat.clickable:hover{background-color:#e74c3c1a;border-radius:var(--radius-md)}.alert-stat.clickable:active{transform:scale(.98)}.transaction-table-container{overflow-x:auto}.transaction-table{width:100%;border-collapse:collapse;table-layout:fixed}.transaction-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.transaction-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-table th:nth-child(1){width:110px}.transaction-table th:nth-child(2){width:120px}.transaction-table th:nth-child(3){width:150px}.transaction-table th:nth-child(4){width:250px}.transaction-table th:nth-child(5){width:180px}.transaction-table th:nth-child(6){width:120px}.transaction-table th:nth-child(7){width:140px}.transaction-table th:nth-child(8){width:100px}.transaction-table td.description-cell{white-space:normal;line-height:1.4}@media (max-width: 768px){.property-detail-page{padding:16px}.property-hero{flex-direction:column;gap:16px;padding:20px 16px}.hero-stats{grid-template-columns:repeat(2,1fr);gap:12px}.hero-actions{width:100%;flex-wrap:wrap}.hero-actions button,.hero-actions a button{min-height:44px}.property-hero-header{flex-direction:column;align-items:flex-start;gap:12px}.property-hero-actions{width:100%;flex-wrap:wrap}.property-tabs{overflow-x:auto;flex-wrap:nowrap;gap:4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.property-tabs::-webkit-scrollbar{display:none}.tab-button{white-space:nowrap;flex-shrink:0;min-height:44px;padding:10px 14px}.doc-upload-header{flex-direction:column!important;align-items:stretch!important}.doc-upload-header select{width:100%!important;min-width:unset!important;min-height:44px;font-size:16px}.doc-upload-header button{width:100%;min-height:44px}.overview-grid,.detail-grid{grid-template-columns:1fr}.filters-section{padding:12px}.filters-row{flex-direction:column;gap:10px}.filter-group{min-width:100%;width:100%}.filter-group select,.filter-group input,.input-wrapper input{min-height:44px;font-size:16px}.transaction-table-container{overflow-x:hidden}.transaction-table{min-width:unset}.transaction-table thead{display:none}.transaction-table tbody tr{display:block;padding:12px;margin-bottom:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.transaction-table tbody td{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 0;border-bottom:1px solid var(--color-border);gap:8px;text-align:right;font-size:14px;flex-wrap:wrap}.transaction-table tbody td:last-child{border-bottom:none}.transaction-table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:12px;text-align:left;flex-shrink:0}.transaction-table .description-cell{max-width:100%;white-space:normal}.pagination{flex-direction:column;gap:12px}.pagination-controls{justify-content:center}.data-table{overflow-x:hidden}.data-table table{min-width:unset}.data-table table thead{display:none}.data-table table tbody tr{display:block;padding:12px;margin-bottom:8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.data-table table tbody td{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--color-border);gap:8px;font-size:14px;flex-wrap:wrap;text-align:right}.data-table table tbody td:last-child{border-bottom:none}.data-table table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:12px;text-align:left;flex-shrink:0}}.cd-page{padding:var(--space-6);min-height:100%;background:var(--color-bg-app)}.cd-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4)}.cd-page-title-block h1{margin:0 0 var(--space-1) 0;font-size:24px;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cd-page-subtitle{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.cd-page-subtitle strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.cd-page-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.cd-edit-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap}.cd-toggle-switch{position:relative;width:36px;height:20px;flex-shrink:0}.cd-toggle-switch input{opacity:0;width:0;height:0;position:absolute}.cd-toggle-track{position:absolute;inset:0;background:#d1d5db;border-radius:10px;transition:background .2s}.cd-toggle-switch input:checked+.cd-toggle-track{background:var(--color-primary)}.cd-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;transition:transform .2s}.cd-toggle-switch input:checked~.cd-toggle-thumb{transform:translate(16px)}.cd-section{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005;margin-bottom:var(--space-5);overflow:hidden}.cd-section-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.cd-section-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.06em;display:inline}.cd-section-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:400;text-transform:none;letter-spacing:0;margin-left:var(--space-2)}.cd-matrix-body{padding:var(--space-4) var(--space-5) var(--space-5);overflow-x:auto}.cd-matrix-table{border-collapse:separate;border-spacing:4px;width:100%;min-width:900px}.cd-matrix-table th{padding:var(--space-2) var(--space-2);text-align:center;font-size:11px;font-weight:var(--font-weight-semibold);letter-spacing:.05em;white-space:nowrap;color:var(--color-text-secondary)}.cd-matrix-table th.cd-col-overdue{color:#dc2626}.cd-matrix-table th.cd-col-current{color:var(--color-accent)}.cd-matrix-region-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-align:left;padding:var(--space-2) var(--space-3) var(--space-2) 0;white-space:nowrap}.cd-matrix-region-label--total{font-weight:var(--font-weight-bold)}.cd-cell{border-radius:6px;padding:var(--space-2) var(--space-2);text-align:center;vertical-align:middle;cursor:pointer;position:relative;min-width:62px;transition:filter .15s}.cd-cell:hover{filter:brightness(.95)}.cd-cell--red{background:#dc26261a}.cd-cell--amber{background:#f59e0b1a}.cd-cell--green{background:#16a34a14}.cd-cell--empty{background:#00000005;color:#d1d5db}.cd-cell--active{outline:2px solid var(--color-primary);outline-offset:-1px}.cd-cell-count{font-size:20px;font-weight:700;line-height:1.1;display:block}.cd-cell--red .cd-cell-count{color:#dc2626}.cd-cell--amber .cd-cell-count{color:#b45309}.cd-cell--green .cd-cell-count{color:#16a34a}.cd-cell--empty .cd-cell-count{font-size:14px;color:#d1d5db}.cd-cell-dot{font-size:16px;color:#d1d5db}.cd-cell-markers{display:flex;justify-content:center;gap:6px;margin-top:2px;font-size:10px;font-weight:600;line-height:1.2}.cd-cell-opens{color:#16a34a}.cd-cell-closes{color:#dc2626}.cd-cell-window-bar{position:absolute;bottom:0;left:4px;right:4px;height:3px;background:#84cc16;border-radius:0 0 4px 4px}.cd-matrix-legend{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:#00000003;flex-wrap:wrap}.cd-legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:11px;color:var(--color-text-secondary)}.cd-legend-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.cd-legend-swatch--term{background:#16a34a}.cd-legend-swatch--opens{background:#16a34a;border:1.5px solid #15803d}.cd-legend-swatch--closes{background:#dc2626}.cd-legend-swatch--window{background:#84cc16}.cd-legend-right{margin-left:auto;font-size:11px;color:var(--color-text-secondary);font-style:italic}.cd-region-body{padding:var(--space-4) var(--space-5)}.cd-region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.cd-region-card{border:1.5px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:border-color .15s,box-shadow .15s;background:var(--color-bg-surface)}.cd-region-card:hover{border-color:#16a34a66}.cd-region-card--selected{border-color:#16a34a;box-shadow:0 0 0 2px #16a34a26}.cd-region-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-1)}.cd-region-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.cd-region-total{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cd-region-risk-number{font-size:32px;font-weight:800;line-height:1;color:#dc2626;margin-bottom:2px}.cd-region-risk-label{font-size:10px;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-3)}.cd-risk-bar{height:6px;border-radius:3px;background:var(--color-border);display:flex;overflow:hidden;margin-bottom:var(--space-3)}.cd-risk-bar-high{background:#dc2626}.cd-risk-bar-medium{background:#f59e0b}.cd-risk-bar-low{background:#16a34a}.cd-region-subregions{font-size:11px;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.cd-region-divider{height:1px;background:var(--color-border);margin-bottom:var(--space-2)}.cd-region-cost{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.cd-portfolio-body{padding:var(--space-4) var(--space-5)}.cd-portfolio-grid{display:flex;flex-wrap:wrap;gap:var(--space-3)}.cd-portfolio-tile{flex:1 1 140px;max-width:200px;border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);border-left-width:4px;background:var(--color-bg-surface)}.cd-portfolio-value{font-size:26px;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:var(--color-text-primary);margin-bottom:2px}.cd-portfolio-label{font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);margin-bottom:2px}.cd-portfolio-sub{font-size:11px;color:var(--color-text-secondary)}.cd-runway-body{padding:var(--space-4) var(--space-5)}.cd-runway-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;cursor:pointer;border-radius:var(--radius-md);padding-left:var(--space-2);padding-right:var(--space-2);transition:background .15s}.cd-runway-row:hover{background:#00000005}.cd-runway-row--active{background:#1f3a5f0a}.cd-runway-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.cd-runway-label{font-size:var(--font-size-sm);color:var(--color-text-primary);min-width:110px;flex-shrink:0}.cd-runway-bar-track{flex:1;height:16px;border-radius:3px;background:#0000000a;overflow:hidden;display:flex}.cd-runway-bar-segment{height:100%}.cd-runway-stat{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap;min-width:90px;text-align:right;font-variant-numeric:tabular-nums}.cd-runway-stat strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.cd-table-filter-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-3)}.cd-filter-row-1{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-3)}.cd-filter-clear{display:inline-flex;align-items:center;gap:4px;height:38px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-bg-surface);cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.cd-filter-clear:hover{color:var(--color-text-primary);border-color:var(--color-text-primary)}.cd-search-wrapper{flex:1;min-width:240px;position:relative}.cd-search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--color-text-secondary);pointer-events:none}.cd-search-input{width:100%;height:38px;padding:0 var(--space-8) 0 var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-surface);outline:none;box-sizing:border-box}.cd-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f14}.cd-search-input::placeholder{color:var(--color-text-disabled)}.cd-search-clear{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;padding:0;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center}.cd-filter-select{height:38px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-surface);outline:none;cursor:pointer;white-space:nowrap}.cd-filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f14}.cd-filter-checkbox-label{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;padding:6px 10px;border-radius:var(--radius-md);border:1px solid transparent}.cd-filter-checkbox-label--active{border-color:var(--color-accent);color:var(--color-accent);background:#2c8c7b0d}.cd-filter-checkbox-label input{accent-color:var(--color-accent)}.cd-filter-reset{background:none;border:none;padding:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;text-decoration:underline;margin-left:auto}.cd-filter-reset:hover{color:var(--color-text-primary)}.cd-results-line{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);padding:0 var(--space-1)}.cd-results-line strong{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.cd-reset-cols-btn{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-sm);color:var(--color-text-secondary);background:none;border:none;cursor:pointer;padding:0;text-decoration:underline;transition:color .15s}.cd-reset-cols-btn:hover{color:var(--color-text-primary)}.cd-table-section{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.cd-table-section-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.cd-table-wrapper{overflow-x:auto}.cd-table{width:100%;border-collapse:collapse;min-width:1000px}.cd-table thead{background:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.cd-table th{padding:var(--space-3) var(--space-3);text-align:left;font-size:11px;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.cd-table th:first-child{padding-left:var(--space-4);width:44px}.cd-table td{padding:var(--space-3) var(--space-3);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-primary);vertical-align:top}.cd-table td:first-child{padding-left:0}.cd-table tbody tr{cursor:pointer;transition:background .12s}.cd-table tbody tr:hover{background:var(--color-bg-hover)}.cd-row-risk-bar{width:4px;min-height:44px;border-radius:0 2px 2px 0;flex-shrink:0}.cd-row-risk-bar--high{background:#dc2626}.cd-row-risk-bar--medium{background:#f59e0b}.cd-row-risk-bar--low{background:#16a34a}.cd-row-risk-bar--known{background:#9ca3af}.cd-td-bar{padding:0!important;width:4px;min-width:4px}.cd-td-num{width:36px;color:var(--color-text-secondary);font-size:12px;padding-left:var(--space-2)!important;vertical-align:middle!important}.cd-risk-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.cd-risk-badge--high{background:#dc26261a;color:#dc2626}.cd-risk-badge--medium{background:#f59e0b1a;color:#b45309}.cd-risk-badge--low{background:#16a34a1a;color:#15803d}.cd-risk-badge--known{background:#6b72801a;color:#6b7280}.cd-site-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:2px;line-height:1.3}.cd-site-unit{font-size:11px;color:var(--color-text-secondary)}.cd-expiry-overdue{color:#dc2626;font-weight:var(--font-weight-semibold);display:block}.cd-expiry-label{font-size:11px;color:var(--color-text-secondary);display:block}.cd-expiry-future{color:var(--color-text-primary)}.cd-flags-wrap{display:flex;flex-wrap:wrap;gap:4px}.cd-flag-pill{display:inline-block;padding:1px 6px;border-radius:3px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.cd-flag-pill--holdover,.cd-flag-pill--no-option{background:#dc26261a;color:#dc2626}.cd-flag-pill--var-royalty{background:#f59e0b1a;color:#b45309}.cd-flag-pill--default{background:#6b72801a;color:#6b7280}.cd-action-status{font-size:11px;color:var(--color-text-secondary);margin-bottom:4px}.cd-assignee-chip{display:inline-block;padding:2px 8px;background:#16a34a1a;color:#15803d;border-radius:4px;font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap}.cd-td-cost{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.cd-back-link{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-sm);color:var(--color-text-secondary);text-decoration:none;margin-bottom:var(--space-2);transition:color .15s}.cd-back-link:hover{color:var(--color-primary)}.cd-drawer-overlay{position:fixed;inset:0;background:#0006;z-index:400}.cd-drawer{position:fixed;top:0;right:0;bottom:0;width:420px;max-width:92vw;background:#fff;box-shadow:-4px 0 24px #0000002e;z-index:401;display:flex;flex-direction:column;overflow:hidden}.cd-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0}.cd-drawer-title{margin:0 0 var(--space-1) 0;font-size:15px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.35}.cd-drawer-sub{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.cd-drawer-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--color-text-secondary);transition:background .15s,color .15s}.cd-drawer-close:hover{background:var(--color-bg-hover, rgba(0,0,0,.06));color:var(--color-text-primary)}.cd-drawer-body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5)}.cd-drawer-field{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-subtle, rgba(0,0,0,.06))}.cd-drawer-field:last-child{border-bottom:none}.cd-drawer-field-label{flex-shrink:0;width:160px;font-size:12px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.cd-drawer-field-value{font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-word}.cd-drawer-field--column{flex-direction:column;align-items:stretch;gap:var(--space-1);padding:var(--space-3) 0}.cd-drawer-editable{width:100%;padding:7px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;color:var(--color-text-primary);background:var(--color-bg-surface, #fff);resize:vertical;font-family:inherit;box-sizing:border-box}.cd-drawer-editable:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.cd-risk-toggle{display:flex;gap:4px;flex-wrap:nowrap}.cd-risk-toggle-btn{flex:1;padding:5px 6px;border-radius:5px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid transparent;transition:all .13s;white-space:nowrap;text-align:center}.cd-risk-toggle-btn--high{background:#dc262612;color:#dc2626;border-color:#dc262640}.cd-risk-toggle-btn--medium{background:#f59e0b12;color:#b45309;border-color:#f59e0b40}.cd-risk-toggle-btn--low{background:#16a34a12;color:#15803d;border-color:#16a34a40}.cd-risk-toggle-btn--known{background:#6b728012;color:#6b7280;border-color:#6b728040}.cd-risk-toggle-btn--high.cd-risk-toggle-btn--active{background:#dc262626;border-color:#dc2626}.cd-risk-toggle-btn--medium.cd-risk-toggle-btn--active{background:#f59e0b26;border-color:#f59e0b}.cd-risk-toggle-btn--low.cd-risk-toggle-btn--active{background:#16a34a26;border-color:#16a34a}.cd-risk-toggle-btn--known.cd-risk-toggle-btn--active{background:#6b728026;border-color:#9ca3af}.cd-drawer-footer{flex-shrink:0;padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border)}.cd-drawer-save-btn{width:100%;padding:10px;background:var(--color-primary, #1f3a5f);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s}.cd-drawer-save-btn:hover{opacity:.88}@media (max-width: 1024px){.cd-region-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.cd-page{padding:16px}.cd-page-header{flex-direction:column;gap:12px}.cd-page-actions{flex-wrap:wrap;gap:8px}.cd-page-actions button,.cd-page-actions a{flex:1;min-width:120px;justify-content:center}.cd-region-grid{grid-template-columns:1fr 1fr}.cd-portfolio-tile{flex:1 1 120px}.cd-matrix-body{overflow-x:auto;-webkit-overflow-scrolling:touch}.cd-matrix-table{min-width:480px}.cd-table-wrapper{overflow-x:hidden}.cd-table thead{display:none}.cd-table tbody tr{display:block;background:#fff;border-radius:12px;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 4px #0000000d;margin-bottom:10px;overflow:hidden}.cd-table td{display:flex!important;justify-content:space-between;align-items:center;padding:9px 14px!important;border:none!important;border-bottom:1px solid rgba(0,0,0,.05)!important;font-size:13px;min-height:40px;text-align:right}.cd-table td:first-child{background:#1f3a5f08;font-weight:600;font-size:14px;text-align:left;justify-content:flex-start}.cd-table td:last-child{border-bottom:none!important}.cd-td-bar,.cd-td-num{display:none!important}.cd-table-filter-card{padding:12px}.cd-table-filter-card .filters-row{flex-direction:column;gap:10px}.cd-table-filter-card .filter-group,.cd-table-filter-card .search-filter{width:100%;min-width:100%}}.cd-table .sortable{cursor:pointer;user-select:none;transition:background-color .15s ease}.cd-table .sortable:hover{background-color:#1f3a5f0d}.cd-table .sortable.active-sort{background-color:#1f3a5f14}.cd-table .th-content{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.cd-table .sort-icon-dim{color:var(--color-text-secondary);opacity:0;transition:opacity .15s;flex-shrink:0}.cd-table .sortable:hover .sort-icon-dim{opacity:.4}.cd-table .active-sort-icon{color:var(--color-primary);opacity:1}.cd-table .resize-handle{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;user-select:none;background:transparent;z-index:10}.cd-table .resize-handle:hover{background:#3b82f633}.cd-table .resize-handle:active{background:#3b82f666}.card{background-color:var(--color-bg-surface);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-xl);box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005;transition:all .2s cubic-bezier(.4,0,.2,1);overflow:visible}.card:hover{border-color:#00000014;box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a;transform:translateY(-1px)}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);padding-left:var(--space-6);border-bottom:1px solid rgba(0,0,0,.04);background:linear-gradient(to bottom,#fff,#f9fafb80);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.card-title{margin:0;padding:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.card-action{display:flex;align-items:center;gap:var(--space-3)}.card-content{padding:var(--space-6) var(--space-6) var(--space-6) var(--space-6);overflow:visible}.kpi-card .card-content{padding:var(--space-6)}@media (max-width: 768px){.card:hover{transform:none}.card-header{padding:16px;flex-wrap:wrap;gap:12px}.card-title{font-size:18px}.card-content,.kpi-card .card-content{padding:16px}.card-action{width:100%;justify-content:flex-end}}.custom-dropdown{position:relative;width:100%;isolation:isolate;display:block}.custom-dropdown-trigger{width:100%;min-width:100%;max-width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;color:var(--color-text);background-color:#fff;cursor:pointer;transition:border-color .2s;display:flex;align-items:center;justify-content:space-between;text-align:left;box-sizing:border-box}.custom-dropdown-trigger:hover{border-color:var(--color-primary)}.custom-dropdown-trigger:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.custom-dropdown-placeholder{color:var(--color-text-tertiary)}.custom-dropdown-icon{transition:transform .2s;flex-shrink:0;color:var(--color-text-secondary)}.custom-dropdown-icon.open{transform:rotate(180deg)}.custom-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;width:100%;background-color:#fff;border:1px solid var(--color-border);border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:1000;max-height:250px;overflow:hidden;box-sizing:border-box}.custom-dropdown-options{max-height:250px!important;min-height:50px;height:auto;width:100%;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;box-sizing:border-box}.custom-dropdown-option{padding:10px 12px;cursor:pointer;transition:background-color .15s;font-size:14px;color:var(--color-text);width:100%;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-dropdown-option:hover{background-color:var(--color-bg-hover)}.custom-dropdown-option.selected{background-color:#2563eb1a;color:var(--color-primary);font-weight:var(--font-weight-medium)}.custom-dropdown-options::-webkit-scrollbar{width:8px}.custom-dropdown-options::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:4px}.custom-dropdown-options::-webkit-scrollbar-thumb{background:#6b7280;border-radius:4px}.custom-dropdown-options::-webkit-scrollbar-thumb:hover{background:#6b7280}.custom-dropdown-menu[style*=bottom]{bottom:auto!important;top:calc(100% + 4px)!important}.custom-dropdown{contain:layout}.custom-dropdown-menu{will-change:contents;backface-visibility:hidden}.documents-page{padding:var(--space-6)}.filters-section{display:flex;flex-direction:column;gap:var(--space-4)}.search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--space-3);color:var(--color-text-secondary);pointer-events:none}.search-input{width:100%;height:44px;padding:var(--space-3) var(--space-3) var(--space-3) calc(var(--space-3) + 26px);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);outline:none;transition:border-color .2s}.search-input:focus{border-color:var(--color-primary)}.filters-row{display:flex;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:var(--space-2);min-width:200px}.filter-group label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.filter-group select{height:44px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background-color:var(--color-bg-card);cursor:pointer;outline:none;transition:border-color .2s}.filter-group select:focus{border-color:var(--color-primary)}.documents-table-container{overflow-x:auto;margin-top:var(--space-6)}.documents-table{width:100%;border-collapse:collapse}.documents-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.documents-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.documents-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary)}.documents-table tr:hover{background-color:var(--color-bg-hover)}.document-name-cell{display:flex;align-items:center;gap:var(--space-2)}.document-icon{color:var(--color-text-secondary)}.folder-cell{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary)}.documents-table input[type=checkbox]{cursor:pointer}.no-results{padding:var(--space-8);text-align:center;color:var(--color-text-secondary)}.table-actions{display:flex;gap:var(--space-2)}.export-columns-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;position:relative;overflow:visible;padding-bottom:200px}.export-column-row{display:flex;align-items:center;gap:12px;padding:12px;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;transition:all .2s;position:relative;overflow:visible}.export-column-row:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000000d}.export-column-label{font-size:14px;font-weight:600;color:var(--color-text);min-width:80px;flex-shrink:0}.export-column-select{flex:1}.export-column-row{z-index:1}.export-column-row:nth-child(1){z-index:100}.export-column-row:nth-child(2){z-index:99}.export-column-row:nth-child(3){z-index:98}.export-column-row:nth-child(4){z-index:97}.export-column-row:nth-child(5){z-index:96}.export-column-row:nth-child(6){z-index:95}.export-column-row:nth-child(7){z-index:94}.export-column-row:nth-child(8){z-index:93}.export-column-row:nth-child(9){z-index:92}.export-column-row:nth-child(10){z-index:91}.export-columns-list{position:relative;overflow:visible}.export-remove-column-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);border-radius:4px;transition:all .2s;flex-shrink:0}.export-remove-column-btn:hover{background-color:#fee2e2;color:#dc2626}.export-add-column-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background-color:#fff;border:2px dashed var(--color-border);border-radius:6px;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;width:100%}.export-add-column-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background-color:#2563eb0d}.documents-page .card,.documents-page .card-content{overflow:visible!important}.documents-table th.sortable{cursor:pointer;user-select:none}.documents-table th.sortable:hover{background-color:var(--color-bg-hover)}.documents-table th{position:relative}.view-toggle-group{display:flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.view-toggle-group button{border-radius:0;border:none}.view-toggle-group button:first-child{border-right:1px solid var(--color-border)}.breadcrumb-nav{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary)}.breadcrumb-link{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);padding:0;transition:opacity .2s}.breadcrumb-link:hover{opacity:.7;text-decoration:underline}.documents-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-top:var(--space-6);margin-bottom:var(--space-4)}.overview-stat{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.overview-stat-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:#2563eb1a;color:var(--color-primary);border-radius:var(--radius-md)}.overview-stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;line-height:1}.overview-stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;margin-top:var(--space-1)}.folder-header{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.folder-header-info{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.folders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);margin-top:var(--space-6)}.folder-card{cursor:pointer;transition:all .2s;padding:var(--space-5);position:relative;overflow:hidden}.folder-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:currentColor;transform:scaleX(0);transition:transform .2s}.folder-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-primary)}.folder-card:hover:before{transform:scaleX(1)}.folder-card-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto var(--space-4);border-radius:var(--radius-lg);transition:transform .2s}.folder-card:hover .folder-card-icon{transform:scale(1.05)}.folder-card-content{text-align:center}.folder-card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.folder-card-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3)}.folder-card-types{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;align-items:center}.folder-card-more{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-4);margin-top:var(--space-6)}.document-card{display:flex;flex-direction:column;transition:all .2s;padding:var(--space-4)}.document-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-border-hover)}.document-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3)}.document-card-icon{color:var(--color-text-secondary)}.document-card-content{flex:1;margin-bottom:var(--space-3)}.document-card-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-card-meta{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.document-card-size{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.document-card-property{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-card-date{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.document-card-actions{display:flex;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border)}@media (max-width: 768px){.documents-table-container{overflow-x:hidden}.documents-table{min-width:unset}.documents-table thead{display:none}.documents-table tbody tr{display:block;padding:12px;margin-bottom:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.documents-table tbody td{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--color-border);gap:8px;font-size:14px;flex-wrap:wrap;text-align:right}.documents-table tbody td:first-child{display:none}.documents-table tbody td:last-child{border-bottom:none}.documents-table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:12px;text-align:left;flex-shrink:0}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.page-actions{width:100%;flex-wrap:wrap;justify-content:space-between}.view-toggle-group{order:-1;flex:1 1 auto}.folders-grid,.documents-grid,.documents-overview{grid-template-columns:1fr}.folder-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.filters-row{flex-direction:column;align-items:stretch}.filter-group{width:100%;min-width:unset}}@media (max-width: 600px){.export-column-row{flex-direction:column;align-items:stretch}.export-column-label{min-width:unset}.export-remove-column-btn{align-self:flex-end}.document-card-actions,.breadcrumb-nav{flex-wrap:wrap}}.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px var(--space-3);border-radius:12px;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.badge-success{background-color:#ecfdf5;color:#059669;border:1px solid #A7F3D0}.badge-error{background-color:#fee2e2;color:#dc2626;border:1px solid #FECACA}.badge-warning{background-color:#fef3c7;color:#d97706;border:1px solid #FDE68A}.badge-info{background-color:#dbeafe;color:#2563eb;border:1px solid #BFDBFE}.badge-default,.badge-draft{background-color:#f3f4f6;color:#6b7280;border:1px solid #D1D5DB}.badge-posted{background-color:#ede9fe;color:#7c3aed;border:1px solid #C4B5FD}.badge-cancelled{background-color:#e5e7eb;color:#374151;border:1px solid #9CA3AF}.lease-details-page{padding:var(--space-6)}.lease-hero{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.lease-hero-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.lease-id{font-family:Courier New,monospace;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.lease-title{margin:0 0 var(--space-2) 0}.lease-subtitle{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.lease-status-bar{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-4);border-top:1px solid var(--color-border)}.lease-dates{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-lg);color:var(--color-text-secondary)}.lease-content-grid{display:grid;grid-template-columns:1fr 400px;gap:var(--space-6)}@media (max-width: 1200px){.lease-content-grid{grid-template-columns:1fr}}.lease-main-column,.lease-sidebar-column{display:flex;flex-direction:column;gap:var(--space-6)}.detail-grid{display:flex;flex-direction:column;gap:var(--space-3)}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.detail-label{font-size:var(--font-size-base);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--space-2)}.detail-value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium);text-align:right}.provisions-list{display:flex;flex-direction:column;gap:var(--space-4)}.provision-item h4{margin:0 0 var(--space-2) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.provision-item p{margin:0;font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-lg)}.dates-list{display:flex;flex-direction:column;gap:var(--space-3)}.date-item{padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.date-item:last-child{border-bottom:none}.date-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-1)}.date-value{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.obligations-list{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-4)}.obligation-item{padding:var(--space-3);background-color:var(--color-bg-app);border-radius:var(--radius-md)}.obligation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.obligation-type{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.obligation-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.obligation-due{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.documents-list{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.document-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5);border-radius:var(--radius-md);transition:background-color .2s;cursor:pointer}.document-item:hover{background-color:var(--color-bg-hover)}.document-item svg{color:var(--color-text-secondary);flex-shrink:0}.document-item span{font-size:var(--font-size-sm);color:var(--color-text-primary)}.view-all-link{display:block;text-align:center;padding:var(--space-2);color:var(--color-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.view-all-link:hover{text-decoration:underline}.empty-state-small{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}@media (max-width: 768px){.lease-details-page{padding:16px}.lease-hero{padding:20px 16px;flex-direction:column;gap:16px}.lease-hero-actions{width:100%;flex-wrap:wrap}.lease-hero-actions button{min-height:44px}.lease-status-bar{flex-wrap:wrap;gap:12px}.lease-content-grid,.detail-grid{grid-template-columns:1fr}.detail-row{flex-direction:column;gap:4px}.detail-value{text-align:left}}.add-obligation-page{padding:var(--space-6)}.add-obligation-page .page-header{display:flex;flex-direction:column;gap:12px;margin-bottom:var(--space-8)}.add-obligation-page h1{margin:0 0 var(--space-2) 0}.add-obligation-page form{display:flex;flex-direction:column;gap:var(--space-6)}.add-obligation-page .card-header{padding-top:14px;padding-bottom:14px;padding-left:var(--space-6)}.add-obligation-page .card-title{margin:0;padding:0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.form-group input,.form-group select,.form-group textarea{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;transition:all .2s;font-family:var(--font-family)}.form-group textarea{resize:vertical;line-height:var(--line-height-xl)}.required-asterisk{color:var(--color-error)}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}}.wip-date-input{width:100%;max-width:280px}@media (max-width: 768px){.wip-date-input{max-width:none}}.urgency-alert{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:10px;margin-bottom:24px;font-size:14px}.urgency-alert.error{background-color:#ef44441a;color:#991b1b;border:1px solid rgba(239,68,68,.3)}.urgency-alert.warning{background-color:#f59e0b1a;color:#92400e;border:1px solid rgba(245,158,11,.3)}.urgency-alert strong{font-weight:700}.obligation-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.section-title{font-size:15px;font-weight:700;color:var(--color-text-primary, #1e293b);margin:0 0 8px;padding-bottom:10px;border-bottom:1.5px solid var(--color-border, #e2e8f0)}.detail-list{display:flex;flex-direction:column}.detail-row{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--color-border, #f1f5f9);align-items:baseline}.detail-row:last-child{border-bottom:none;padding-bottom:2px}.detail-label{font-size:11px;font-weight:600;color:var(--color-text-secondary, #64748b);text-transform:uppercase;letter-spacing:.07em;line-height:1.5}.detail-value{font-size:14px;font-weight:500;color:var(--color-text-primary, #1e293b);text-align:left;word-wrap:break-word;line-height:1.5}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:16px;color:var(--color-text-secondary, #64748b);text-align:center}.loading-icon{opacity:.35;animation:spin 1.5s linear infinite}.error-state h2{font-size:20px;font-weight:600;color:var(--color-text, #1e293b);margin:0}.error-state svg{color:#f59e0b;opacity:.5}@media (max-width: 768px){.obligation-detail-grid{grid-template-columns:1fr}.detail-row{grid-template-columns:110px 1fr;gap:8px;padding:10px 0}.section-title{font-size:15px}}.obl-completed-page{padding:28px 32px;max-width:100%}.obl-completed-header{margin-bottom:24px}.obl-completed-title-row{display:flex;align-items:center;gap:14px}.obl-completed-icon-wrap{width:44px;height:44px;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #22c55e4d;flex-shrink:0}.obl-completed-title{font-size:24px;font-weight:700;color:var(--color-text, #1e293b);margin:0;line-height:1.2}.obl-completed-subtitle{font-size:13px;color:var(--color-text-secondary, #64748b);margin:2px 0 0}.obl-completed-filters{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.obl-completed-search-wrap{position:relative;display:flex;align-items:center;flex:1;max-width:420px}.obl-completed-search-icon{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.obl-completed-search{width:100%;padding:10px 36px;border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:13px;background:#fff;color:var(--color-text, #1e293b);outline:none;transition:border-color .15s,box-shadow .15s}.obl-completed-search:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a}.obl-completed-search-clear{position:absolute;right:10px;background:transparent;border:none;cursor:pointer;color:#94a3b8;display:flex;align-items:center;padding:2px}.obl-completed-search-clear:hover{color:#475569}.obl-completed-type-select{padding:10px 14px;border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:13px;background:#fff;color:var(--color-text, #1e293b);outline:none;cursor:pointer;min-width:160px;transition:border-color .15s}.obl-completed-type-select:focus{border-color:#22c55e}.obl-completed-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:12px;color:var(--color-text-secondary, #64748b)}.obl-completed-loading-icon{opacity:.35}.obl-completed-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:320px;gap:12px;text-align:center;color:var(--color-text-secondary, #64748b)}.obl-completed-empty-icon{opacity:.25;color:#22c55e}.obl-completed-empty h3{font-size:18px;font-weight:600;color:var(--color-text, #1e293b);margin:0}.obl-completed-empty p{font-size:14px;margin:0 0 8px}.obl-completed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:24px}.obl-completed-card{background:#fff;border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:8px;box-shadow:0 1px 4px #0000000d;transition:box-shadow .2s,border-color .2s}.obl-completed-card:hover{box-shadow:0 4px 16px #00000017;border-color:#bbf7d0}.obl-completed-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.obl-completed-type-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:11.5px;font-weight:700;border:1px solid;white-space:nowrap}.obl-completed-card-property{font-size:15px;font-weight:700;color:var(--color-text, #1e293b);line-height:1.3;transition:color .15s}.obl-completed-card-property:hover{color:#8b5cf6;text-decoration:underline}.obl-completed-card-ref{font-size:12.5px;font-weight:500;color:#64748b}.obl-completed-card-desc{font-size:13px;color:var(--color-text-secondary, #64748b);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.obl-completed-card-date{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;margin-top:2px}.obl-completed-card-date-sub{color:#94a3b8;font-size:11.5px;margin-top:-2px}.obl-completed-card-actions{display:flex;gap:8px;border-top:1px solid #f1f5f9;padding-top:10px;margin-top:4px}.obl-completed-undo-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;text-align:center;padding:7px 12px;font-size:12.5px;font-weight:600;color:#0284c7;background:transparent;border:1px solid #bae6fd;border-radius:8px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.obl-completed-undo-btn:hover{background:#e0f2fe;color:#0369a1;border-color:#7dd3fc}.obl-completed-edit-btn{flex:1;text-align:center;padding:7px 12px;font-size:12.5px;font-weight:600;color:var(--color-text-secondary, #64748b);background:transparent;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.obl-completed-edit-btn:hover{background:#f8fafc;color:var(--color-text, #1e293b)}.obl-completed-pagination{display:flex;align-items:center;justify-content:center;gap:16px}.obl-completed-page-info{font-size:13px;color:var(--color-text-secondary, #64748b)}@media (max-width: 640px){.obl-completed-page{padding:20px 16px}.obl-completed-grid{grid-template-columns:1fr}.obl-completed-filters{flex-direction:column;align-items:stretch}.obl-completed-search-wrap{max-width:100%}}.calendar-page{padding:28px 32px;max-width:100%;min-height:100vh;background:#f8fafc}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:12px;color:#64748b}.loading-icon{opacity:.4;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.2}}.calendar-header{margin-bottom:24px}.back-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;margin-bottom:20px;transition:all .2s;box-shadow:0 1px 3px #0000001a}.back-btn:hover{background:#3b82f6;color:#fff;transform:translate(-2px);box-shadow:0 2px 8px #3b82f64d}.header-content{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.title-section{display:flex;align-items:center;gap:14px}.icon-wrap{width:48px;height:48px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 16px #3b82f640;flex-shrink:0}.page-title{font-size:28px;font-weight:700;color:#1e293b;margin:0;line-height:1.2}.page-subtitle{font-size:14px;color:#64748b;margin:4px 0 0}.calendar-content{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.calendar-controls{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid #e2e8f0;background:#fafafa;gap:20px;flex-wrap:wrap}.view-tabs{display:flex;align-items:center;gap:4px}.view-tab{background:transparent;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s}.view-tab:hover{background:#f1f5f9;color:#1e293b}.view-tab.active{background:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f640}.period-navigation{display:flex;align-items:center;gap:12px}.nav-btn{background:transparent;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;cursor:pointer;color:#64748b;display:flex;align-items:center;transition:all .2s}.nav-btn:hover{background:#f8fafc;color:#1e293b;border-color:#cbd5e1}.period-label{font-size:15px;font-weight:700;color:#1e293b;min-width:250px;text-align:center;white-space:nowrap}.calendar-body{padding:8px}.day-view{max-width:900px;margin:0 auto;padding:20px}.day-view-header{margin-bottom:20px}.day-view-date{display:flex;align-items:center;gap:20px;padding:24px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:10px;color:#fff}.day-view-date .day-number{font-size:52px;font-weight:700;line-height:1;min-width:80px}.day-info{display:flex;flex-direction:column;gap:6px}.day-name{font-size:22px;font-weight:600;line-height:1.2}.day-month{font-size:14px;opacity:.95;line-height:1.2}.day-obligations{display:flex;flex-direction:column;gap:10px}.no-obligations{text-align:center;padding:60px 20px;color:#94a3b8;font-size:14px}.day-obligation-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:18px;cursor:pointer;transition:all .2s}.day-obligation-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.day-obligation-card.critical{border-left:4px solid #dc2626}.day-obligation-card.warning{border-left:4px solid #f59e0b}.day-obligation-card.normal{border-left:4px solid #3b82f6}.obligation-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;gap:12px}.obligation-card-type{font-size:15px;font-weight:700;color:#1e293b;line-height:1.3}.obligation-card-badge{font-size:11px;font-weight:600;padding:5px 10px;border-radius:5px;white-space:nowrap}.obligation-card-badge.critical{background:#fee2e2;color:#dc2626}.obligation-card-badge.warning{background:#fef3c7;color:#f59e0b}.obligation-card-badge.normal{background:#dbeafe;color:#3b82f6}.obligation-card-desc{font-size:13px;color:#64748b;margin-bottom:8px;line-height:1.4}.obligation-card-property{font-size:12px;color:#94a3b8;line-height:1.3}.week-view{width:100%}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.week-day{background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;padding:10px;min-height:320px;display:flex;flex-direction:column;cursor:pointer;transition:all .2s}.week-day:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:#3b82f6}.week-day.today{background:#eff6ff;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f633}.week-day-header{display:flex;flex-direction:column;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.week-day-name{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.week-day-number{font-size:20px;font-weight:700;color:#1e293b;line-height:1}.week-day-number.today{color:#3b82f6}.week-day-obligations{display:flex;flex-direction:column;gap:6px;flex:1;overflow-y:auto}.week-obligation-item{background:#fff;border-left:3px solid;border-radius:5px;padding:7px 8px;cursor:pointer;transition:all .2s}.week-obligation-item:hover{transform:translate(2px);box-shadow:0 2px 8px #0000001a}.week-obligation-item.critical{border-color:#dc2626;background:#fef2f2}.week-obligation-item.warning{border-color:#f59e0b;background:#fffbeb}.week-obligation-item.normal{border-color:#3b82f6;background:#eff6ff}.week-obligation-type{font-size:11px;font-weight:700;color:#1e293b;margin-bottom:3px;line-height:1.3}.week-obligation-desc{font-size:10px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.month-view{width:100%;background:#fafafa}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;padding:8px;margin:0}.calendar-day-header{text-align:center;font-size:11px;font-weight:700;color:#64748b;padding:8px 4px;text-transform:uppercase;letter-spacing:.05em}.calendar-day{aspect-ratio:1;background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;padding:8px;display:flex;flex-direction:column;transition:all .2s;position:relative;overflow:hidden;min-height:100px;cursor:pointer}.calendar-day.empty{background:transparent;border-color:transparent;cursor:default}.calendar-day:not(.empty):hover{transform:scale(1.02);box-shadow:0 4px 12px #0000001a;border-color:#3b82f6}.calendar-day.today{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f64d}.calendar-day.has-obligations{background:#fff}.calendar-day .day-number{font-size:14px;font-weight:700;color:#1e293b;text-align:left;margin-bottom:8px;line-height:1}.calendar-day.empty .day-number{color:#cbd5e1}.calendar-day.today .day-number{color:#1e40af}.obligation-list{display:flex;flex-direction:column;gap:3px;flex:1;overflow:hidden}.obligation-item{background:#fff;border-left:3px solid;border-radius:3px;padding:5px 6px;cursor:pointer;transition:all .15s;font-size:10px;line-height:1.3}.obligation-item:hover{transform:translate(2px);box-shadow:0 1px 4px #0000001a}.obligation-item.critical{border-color:#dc2626;background:#fef2f2}.obligation-item.warning{border-color:#f59e0b;background:#fffbeb}.obligation-item.normal{border-color:#3b82f6;background:#eff6ff}.obligation-type{font-weight:700;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-count{font-size:9px;color:#64748b;font-weight:600;text-align:center;padding:3px 4px;background:#f1f5f9;border-radius:3px;margin-top:2px}.year-view{width:100%}.year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.year-month{background:#fafafa;border:1px solid #e2e8f0;border-radius:8px;padding:12px}.year-month-name{font-size:13px;font-weight:700;color:#1e293b;text-align:center;margin-bottom:10px}.year-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.year-day-header{text-align:center;font-size:9px;font-weight:600;color:#94a3b8;padding:2px;text-transform:uppercase}.year-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:10px;color:#64748b;background:#fff;border-radius:3px;transition:all .2s;cursor:pointer}.year-day.empty{background:transparent;cursor:default}.year-day:not(.empty):hover{background:#e0e7ff}.year-day.has-obligations{background:#3b82f6;color:#fff;font-weight:700}.year-day.has-obligations:hover{transform:scale(1.15);box-shadow:0 2px 6px #3b82f666;background:#2563eb}.calendar-legend{display:flex;align-items:center;justify-content:center;gap:28px;padding:8px}.legend-item{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:#64748b}.obligation-indicator{width:20px;height:20px;border-radius:4px;border-left:3px solid}.obligation-indicator.critical{border-color:#dc2626;background:#fef2f2}.obligation-indicator.warning{border-color:#f59e0b;background:#fffbeb}.obligation-indicator.normal{border-color:#3b82f6;background:#eff6ff}@media (max-width: 1200px){.week-grid{gap:6px}.week-day{min-height:250px;padding:8px}.year-grid{grid-template-columns:repeat(3,1fr);gap:12px}}@media (max-width: 768px){.calendar-page{padding:16px}.header-content{flex-direction:column;align-items:stretch}.calendar-controls{flex-direction:column;align-items:stretch;padding:16px}.view-tabs{justify-content:center}.period-navigation{justify-content:space-between}.calendar-body{padding:6px}.day-view{padding:12px}.week-grid{grid-template-columns:1fr;gap:10px}.week-day{min-height:auto}.calendar-grid{gap:4px}.calendar-day{padding:6px;min-height:80px}.calendar-day .day-number{font-size:12px;margin-bottom:4px}.year-grid{grid-template-columns:repeat(2,1fr);gap:10px}.calendar-legend{gap:12px;flex-wrap:wrap;padding:6px}}.transaction-list-page{padding:var(--space-6)}.txn-content-block{display:flex;flex-direction:column;gap:0}.txn-hero-strip{grid-template-columns:repeat(5,minmax(0,1fr))!important;margin-bottom:0!important;gap:var(--space-3);background:var(--color-bg-surface);border:1px solid rgba(0,0,0,.06);border-bottom:none;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-4);box-shadow:0 1px 3px #0000000a}.txn-hero-strip .pl-hero-tile{min-width:0;padding:var(--space-3) var(--space-4);box-shadow:none}.txn-hero-strip .pl-hero-tile:hover{transform:none;box-shadow:none}.txn-hero-strip .pl-hero-body{min-width:0}.txn-hero-strip .pl-hero-label,.txn-hero-strip .pl-hero-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.txn-main-card{border-radius:0 0 var(--radius-xl) var(--radius-xl)!important;border-top:1px solid rgba(0,0,0,.06)!important;box-shadow:none!important}.transaction-table-container{overflow-x:auto;margin-top:var(--space-6)}.transaction-table{width:100%;border-collapse:collapse}.transaction-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.transaction-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary)}.transaction-table tr:hover{background-color:var(--color-bg-hover)}.transaction-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.transaction-link:hover{text-decoration:underline}.description-cell{max-width:250px}.input-wrapper input{width:100%;padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border)!important;border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface)!important;outline:none;cursor:text;transition:all .2s}.filter-group input[type=date]{padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;cursor:pointer;transition:all .2s}.filter-group input[type=date]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.filter-group input[type=date]:invalid{color:var(--color-text-disabled)}.filter-group input[type=date]:focus:invalid{color:var(--color-text-primary)}.filter-group input[type=date]::placeholder{text-transform:uppercase}.filter-group input[type=date]::-webkit-datetime-edit-text,.filter-group input[type=date]::-webkit-datetime-edit-month-field,.filter-group input[type=date]::-webkit-datetime-edit-day-field,.filter-group input[type=date]::-webkit-datetime-edit-year-field{text-transform:uppercase}.transaction-table{table-layout:fixed}.transaction-table th,.transaction-table td{box-sizing:border-box}.transaction-table td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-group select{padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border)!important;border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface)!important;outline:none;cursor:pointer;transition:all .2s}.transaction-list-page .filters-row{align-items:flex-start}.transaction-list-page .filter-group{display:grid;grid-template-rows:20px 42px;row-gap:var(--space-2);align-content:start}.transaction-list-page .filter-group label{height:20px;min-height:20px;line-height:20px;margin:0;display:flex;align-items:center;box-sizing:border-box}.transaction-list-page .filter-group label svg{flex:0 0 auto;display:block}.transaction-list-page .search-filter .input-wrapper{height:42px;min-height:42px;width:100%}.transaction-list-page .search-filter .input-wrapper input{display:block;width:100%;height:42px;min-height:42px;margin:0;box-sizing:border-box}.transaction-list-page .filter-group select,.transaction-list-page .filter-group input{height:42px;min-height:42px;margin:0;box-sizing:border-box;padding:var(--space-2-5) var(--space-3);font-size:var(--font-size-base)}.transaction-list-page .filters-row>button{height:42px;min-height:42px;align-self:flex-end}.actions-header,.actions-cell{white-space:nowrap}.table-actions{display:flex;gap:var(--space-2);align-items:center;justify-content:flex-start}.action-link{text-decoration:none;display:inline-block}.transaction-card,.transactions-cards-container,.txn-kpi-chips{display:none}@media (max-width: 768px){.transaction-list-page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:20px}.page-header h1{font-size:22px}.page-subtitle{font-size:14px}.txn-subtitle-desktop{display:none}.txn-kpi-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.txn-kpi-chip{background:var(--color-bg-app);border:1px solid var(--color-border);border-radius:8px;padding:6px 12px;font-size:13px;font-weight:700;color:var(--color-text-primary);display:flex;flex-direction:column;align-items:center;min-width:80px;text-align:center}.txn-kpi-chip span{font-size:11px;font-weight:400;color:var(--color-text-secondary);margin-top:2px}.txn-kpi-revenue{color:#10b981}.txn-kpi-expenses{color:#ef4444}.page-actions{width:100%;flex-direction:column}.page-actions button{width:100%;min-height:44px}.filters-section{padding:12px}.filters-row{flex-direction:column;gap:12px;align-items:stretch}.search-filter,.filter-group{min-width:100%;width:100%}.filter-group select,.filter-group input,.input-wrapper input{min-height:44px;font-size:16px}.transaction-list-page .filter-group{grid-template-rows:20px 44px}.transaction-list-page .filter-group select,.transaction-list-page .filter-group input,.transaction-list-page .search-filter .input-wrapper,.transaction-list-page .search-filter .input-wrapper input{height:44px;min-height:44px}.transaction-table-container{display:none}.transactions-cards-container{display:block;margin-top:16px}.transaction-card{display:block;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px;margin-bottom:12px}.transaction-card:hover{background-color:var(--color-bg-hover)}.transaction-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.transaction-card-date{font-size:14px;color:var(--color-text-secondary);font-weight:500}.transaction-card-amount{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.transaction-card-body{display:flex;flex-direction:column;gap:8px}.transaction-card-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.transaction-card-label{font-size:12px;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.transaction-card-value{font-size:14px;color:var(--color-text-primary);text-align:right}.transaction-card-description{grid-column:1 / -1;font-size:14px;color:var(--color-text-primary);line-height:1.4;margin-top:4px}.pagination{flex-direction:column;gap:16px;padding:16px 12px}.pagination-info{order:2}.pagination-controls{order:1;width:100%;justify-content:space-between}.pagination-controls button{min-height:44px;min-width:44px}}.transaction-table th{position:relative;user-select:none}body.resizing{user-select:none;cursor:col-resize!important}.ai-invoice-dropzone{border:2px dashed var(--color-border);border-radius:10px;padding:32px;text-align:center;color:var(--color-text-secondary)}.ai-invoice-warning{padding:12px 14px;border-radius:8px;background:var(--color-warning-bg, #fff3cd);border:1px solid var(--color-warning, #ffc107);color:var(--color-warning-dark, #856404);font-size:13px;margin-bottom:12px}.ai-invoice-blocking{padding:12px 14px;border-radius:8px;background:var(--color-danger-light, #fee2e2);border:1px solid var(--color-danger, #dc2626);color:var(--color-danger, #991b1b);font-size:13px;margin-bottom:12px}.ai-invoice-match-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;margin-bottom:8px;cursor:pointer}.ai-invoice-match-option.selected{border-color:var(--color-primary, #2563eb);background:var(--color-info-bg, #dbeafe)}.ai-invoice-section-title{font-size:14px;font-weight:600;margin:20px 0 10px}.ai-invoice-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ai-invoice-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--color-border)}@media (max-width: 900px){.ai-invoice-grid-2{grid-template-columns:1fr}}.add-transaction-page{padding:var(--space-6)}.add-transaction-page .card-header{padding-top:14px;padding-bottom:14px}.add-transaction-page .card-title{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.form-layout{display:grid;grid-template-columns:1fr 420px;gap:var(--space-6)}@media (max-width: 1200px){.form-layout{grid-template-columns:1fr}}.transaction-form{display:flex;flex-direction:column;gap:var(--space-6)}.form-section{display:flex;flex-direction:column;gap:var(--space-4)}.section-title{margin:0 0 var(--space-2) 0;padding:0 0 var(--space-2) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);border-bottom:1px solid var(--color-border)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.form-group label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.form-group input,.form-group select,.form-group textarea{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;transition:all .2s;font-family:inherit}.form-group textarea{resize:vertical}.input-with-prefix{position:relative;display:flex;align-items:center}.input-prefix{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);pointer-events:none;z-index:1}.input-with-prefix input{padding-left:32px!important}.upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);border:2px dashed var(--color-border);border-radius:var(--radius-md);text-align:center;transition:all .2s;cursor:pointer}.upload-area:hover{border-color:var(--color-primary);background-color:var(--color-bg-hover)}.upload-area svg{color:var(--color-text-secondary)}.upload-area p{margin:0;color:var(--color-text-secondary)}.upload-hint{font-size:var(--font-size-sm)}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;padding-top:var(--space-4);border-top:1px solid var(--color-border)}.tips-content{display:flex;flex-direction:column;gap:var(--space-4)}.tip-item h4{margin:0 0 var(--space-2) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.tip-item p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-lg)}.form-sidebar{display:flex;flex-direction:column;gap:var(--space-6)}.property-details-content{display:flex;flex-direction:column;gap:var(--space-3)}.property-detail-item{display:flex;flex-direction:column;gap:var(--space-1)}.property-detail-item label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.property-detail-item .value{font-size:var(--font-size-base);color:var(--color-text-primary)}.property-detail-item .value.empty{color:var(--color-text-disabled);font-style:italic}.recent-transactions-table{width:100%;border-collapse:collapse}.recent-transactions-table thead{background-color:var(--color-bg-app);border-bottom:1px solid var(--color-border)}.recent-transactions-table th{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.recent-transactions-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-primary)}.recent-transactions-table tr:last-child td{border-bottom:none}.recent-transactions-table .amount{font-variant-numeric:tabular-nums}.empty-state{padding:var(--space-6) var(--space-4);text-align:center;color:var(--color-text-disabled);font-size:var(--font-size-sm);font-style:italic}.existing-attachments{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.attachment-item-edit{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface);transition:all .2s}.attachment-item-edit:hover{background-color:var(--color-bg-hover);border-color:var(--color-primary)}.attachment-item-edit svg:first-child{color:var(--color-text-secondary);flex-shrink:0}.attachment-item-edit .attachment-info{flex:1;min-width:0}.attachment-item-edit .attachment-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-item-edit .attachment-size{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--space-1)}.delete-attachment-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background-color:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .2s;flex-shrink:0}.delete-attachment-btn:hover{background-color:var(--color-error);color:#fff}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);padding:var(--space-4)}.modal-content{background-color:var(--color-bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:700px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0 0 var(--space-2) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-header p{margin:0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.modal-body{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.summary-section{display:flex;flex-direction:column;gap:var(--space-3)}.summary-section h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}@media (max-width: 600px){.summary-grid{grid-template-columns:1fr}}.summary-item label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.summary-value.amount-highlight{font-size:var(--font-size-2xl);color:var(--color-primary);font-weight:var(--font-weight-bold)}.summary-description{padding:var(--space-4);background-color:var(--color-bg-app);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);line-height:var(--line-height-lg)}.approval-notice{display:flex;gap:var(--space-3);padding:var(--space-4);background-color:#fff3cd;border:1px solid #ffc107;border-radius:var(--radius-md);color:#856404}.approval-notice strong{display:block;margin-bottom:var(--space-1);font-size:var(--font-size-base)}.approval-notice p{margin:0;font-size:var(--font-size-sm)}.auto-approved-notice{display:flex;gap:var(--space-3);padding:var(--space-4);background-color:#d4edda;border:1px solid #28a745;border-radius:var(--radius-md);color:#155724}.auto-approved-notice strong{display:block;margin-bottom:var(--space-1);font-size:var(--font-size-base)}.auto-approved-notice p{margin:0;font-size:var(--font-size-sm)}.draft-notice{display:flex;gap:var(--space-3);padding:var(--space-4);background-color:#e7f3ff;border:1px solid #0066cc;border-radius:var(--radius-md);color:#004085}.draft-notice strong{display:block;margin-bottom:var(--space-1);font-size:var(--font-size-base)}.draft-notice p{margin:0;font-size:var(--font-size-sm)}.attachment-list{display:flex;flex-direction:column;gap:var(--space-2)}.attachment-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background-color:var(--color-bg-app);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary)}.modal-footer{padding:var(--space-6);border-top:1px solid var(--color-border);display:flex;gap:var(--space-3);justify-content:flex-end}@media (max-width: 768px){.add-transaction-page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.add-transaction-layout{flex-direction:column}.transaction-form-main,.transaction-form-sidebar{width:100%}.form-grid{grid-template-columns:1fr!important}.form-group input,.form-group select,.form-group textarea{min-height:44px;font-size:16px}.form-actions{flex-direction:column-reverse;gap:10px}.form-actions button{width:100%;min-height:44px}.upload-area{padding:20px}}@media (max-width: 600px){.modal-footer{flex-direction:column-reverse}.modal-footer button{width:100%;min-height:44px}}.transaction-detail-page{padding:var(--space-6)}.transaction-detail-page .transaction-detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);width:100%}.transaction-detail-page .card-header{padding-top:14px;padding-bottom:14px;padding-left:var(--space-6)}.transaction-detail-page .card-title{margin:0;padding:0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.transaction-hero{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.transaction-hero-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.transaction-hero-actions{display:flex;align-items:center;gap:var(--space-3)}.transaction-id{font-family:Courier New,monospace;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.transaction-title{margin:0 0 var(--space-2) 0}.transaction-subtitle{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.transaction-amount-bar{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-4);border-top:1px solid var(--color-border)}.amount-display{display:flex;align-items:center;gap:var(--space-2);color:var(--color-primary)}.amount-value{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}.transaction-meta{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-base)}.transaction-content-grid{display:grid;grid-template-columns:1fr 350px;gap:var(--space-6)}@media (max-width: 1200px){.transaction-content-grid{grid-template-columns:1fr}}.transaction-main-column,.transaction-sidebar-column{display:flex;flex-direction:column;gap:var(--space-6)}.description-content{display:flex;flex-direction:column;gap:var(--space-3)}.description-content p{margin:0;line-height:var(--line-height-lg);color:var(--color-text-primary)}.note-text{padding:var(--space-3);background-color:var(--color-bg-app);border-radius:var(--radius-md);border-left:3px solid var(--color-primary);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.audit-timeline{display:flex;flex-direction:column;gap:var(--space-4)}.audit-entry{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-bg-app)}.audit-icon{color:var(--color-text-secondary);margin-top:2px}.audit-content{flex:1}.audit-action{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-1)}.audit-meta{display:flex;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.attachments-list{display:flex;flex-direction:column;gap:var(--space-3)}.attachment-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md)}.attachment-item svg{color:var(--color-text-secondary);flex-shrink:0}.attachment-info{flex:1}.attachment-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.attachment-size{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.actions-list{display:flex;flex-direction:column;gap:var(--space-2)}@media print{.transaction-detail-page{padding:0}.back-btn,.transaction-hero-actions,.transaction-sidebar-column,.actions-list,.divider{display:none!important}.transaction-hero{border:none;box-shadow:none;page-break-inside:avoid}.transaction-detail-grid{display:block}.transaction-main-column{width:100%}.detail-grid,.audit-timeline{page-break-inside:avoid}@page{margin:1cm}}@keyframes cpm-spin{to{transform:rotate(360deg)}}.cpm-spinner{animation:cpm-spin .8s linear infinite;display:block;flex-shrink:0}@media (max-width: 768px){.transaction-detail-page{padding:16px}.transaction-hero{padding:20px 16px;flex-direction:column;gap:16px}.transaction-hero-amount{font-size:28px}.transaction-hero-actions{flex-wrap:wrap;gap:8px}.transaction-hero-actions button{min-height:44px}.transaction-detail-grid{grid-template-columns:1fr}.transaction-sidebar-column{display:block}.detail-grid{grid-template-columns:1fr}.back-btn{font-size:14px}}.approval-flowchart{margin-top:0;padding:32px 16px 28px;background:#f0f9ff;border-radius:12px;border:1px solid #e0f2fe;overflow-x:auto;overflow-y:visible}.approval-flowchart-scroll{display:flex;align-items:flex-start;gap:0;min-width:max-content;padding:0 8px}.approval-flow-step{display:flex;align-items:flex-start}.approval-flow-arrow{display:flex;align-items:center;height:84px;padding:0 4px;flex-shrink:0;position:relative}.approval-flow-arrow:before{content:"";display:block;width:28px;height:2px;background:#cbd5e1;border-radius:1px}.approval-flow-arrow:after{content:"";display:block;position:absolute;right:4px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #94a3b8}.approval-flow-column{display:flex;flex-direction:column;align-items:stretch;gap:0}.approval-flow-node-start,.approval-flow-node-end{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.3px;flex-shrink:0;margin-top:10px}.approval-flow-node-start{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;box-shadow:0 4px 14px #0ea5e959}.approval-flow-node-end{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 4px 14px #22c55e59}.approval-flow-step:first-of-type .approval-flow-arrow,.approval-flow-step:last-of-type .approval-flow-arrow{height:84px}.approval-flow-node-stage{position:relative;background:linear-gradient(145deg,#3b82f6,#2563eb);color:#fff;width:180px;min-height:84px;padding:12px 14px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #3b82f647,0 1px 3px #00000014;border-radius:10px;border:1.5px solid rgba(255,255,255,.5);transition:box-shadow .25s}.approval-flow-node-done{background:linear-gradient(145deg,#86efac,#4ade80)!important;box-shadow:0 4px 14px #22c55e38,0 1px 3px #0000000f!important;border-color:#fff9!important}.approval-flow-content{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%}.approval-flow-label{line-height:1.3;word-break:break-word;text-align:center;font-size:12.5px;font-weight:600}.approval-flow-label-done{opacity:.75}.approval-flow-check-badge{position:absolute;top:6px;left:6px;background:#16a34a;border:1.5px solid #15803d;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#fff;padding:0;flex-shrink:0}.approval-flow-approver{display:flex;align-items:center;gap:4px;background:#fff3;border-radius:12px;padding:3px 8px;font-size:10px;font-weight:500;margin-top:2px;max-width:100%;overflow:hidden}.approval-flow-approver span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-flow-timestamp{background:#dcfce7;border:1px solid #86efac;border-radius:6px;padding:5px 10px;margin-top:6px;width:180px;box-sizing:border-box;font-size:10.5px;font-weight:500;color:#166534;text-align:center;box-shadow:0 1px 3px #22c55e1f}@media (max-width: 768px){.approval-flowchart{overflow-x:hidden;padding:16px}.approval-flowchart-scroll{flex-direction:column;align-items:stretch;min-width:unset;gap:8px}}.txn-approval-flow-page{padding:28px 32px;max-width:100%}.txn-approval-flow-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:12px;color:var(--color-text-secondary, #64748b)}.txn-approval-flow-loading-icon{opacity:.4}.txn-approval-flow-header{margin-bottom:24px}.txn-approval-flow-back{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;color:var(--color-text-secondary, #64748b);cursor:pointer;margin-bottom:20px;transition:background .15s,color .15s}.txn-approval-flow-back:hover{background:var(--color-surface, #f8fafc);color:var(--color-text, #1e293b)}.txn-approval-flow-title-row{display:flex;align-items:center;gap:14px;margin-bottom:8px;flex-wrap:wrap}.txn-approval-flow-icon-wrap{width:44px;height:44px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #3b82f64d;flex-shrink:0}.txn-approval-flow-title{font-size:24px;font-weight:700;color:var(--color-text, #1e293b);margin:0;line-height:1.2}.txn-approval-flow-property{font-size:13px;color:var(--color-text-secondary, #64748b);margin:2px 0 0}.txn-approval-flow-status-badge{padding:5px 14px;border-radius:20px;font-size:12px;font-weight:700;border:1px solid;white-space:nowrap}.txn-approval-flow-desc{font-size:14px;color:var(--color-text-secondary, #64748b);margin:0;padding-left:58px;line-height:1.5}.txn-approval-flow-stats{display:grid;grid-template-columns:1fr 1fr 2fr;gap:16px;margin-bottom:24px}.txn-stat-card{display:flex;align-items:center;gap:14px;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-radius:12px;padding:16px 20px;box-shadow:0 1px 4px #0000000d}.txn-stat-progress{align-items:flex-start}.txn-stat-icon{flex-shrink:0;margin-top:2px}.txn-stat-icon.green{color:#22c55e}.txn-stat-icon.blue{color:#3b82f6}.txn-stat-icon.amber{color:#f59e0b}.txn-stat-value{font-size:20px;font-weight:700;color:var(--color-text, #1e293b);line-height:1}.txn-stat-label{font-size:12px;color:var(--color-text-secondary, #64748b);margin-top:3px}.txn-stat-progress-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.txn-stat-progress-row .txn-stat-value{font-size:16px}.txn-progress-bar-bg{height:8px;background:#f1f5f9;border-radius:99px;overflow:hidden;width:100%}.txn-progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#22c55e);border-radius:99px;transition:width .4s ease}.txn-approval-current-approver{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:12px;padding:14px 18px;margin-bottom:24px;box-shadow:0 2px 8px #fbbf2426}.txn-current-approver-icon{color:#d97706;flex-shrink:0}.txn-current-approver-label{font-size:13px;font-weight:500;color:#78350f}.txn-current-approver-name{font-size:14px;font-weight:700;color:#92400e;flex:1}.txn-approval-flow-body{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:24px;box-shadow:0 1px 4px #0000000d}.txn-approval-flow-body-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}.txn-approval-flow-body-title{font-size:16px;font-weight:700;color:var(--color-text, #1e293b);margin:0}.txn-approval-flow-body-hint{font-size:12px;color:var(--color-text-secondary, #94a3b8);margin:0}.txn-approval-flow-body .approval-flowchart{margin-top:0;background:#f0f9ff;border-color:#e0f2fe;padding:24px 20px;min-height:160px}@media (max-width: 640px){.txn-approval-flow-stats{grid-template-columns:1fr}.txn-approval-flow-desc{padding-left:0}}.vendor-list-page{padding:var(--space-6)}.vendor-metric-card{padding:var(--space-4) var(--space-5);min-height:84px;justify-content:center;gap:0}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.page-header h1{margin:0 0 var(--space-2) 0}.page-actions{display:flex;gap:var(--space-3)}.search-filter{min-width:280px;flex:1}.search-filter .input-wrapper{width:100%}.input-wrapper input{width:100%;padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;cursor:text;transition:all .2s}.input-wrapper input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.input-wrapper input::placeholder{color:var(--color-text-disabled)}.search-input-wrapper{position:relative}.search-input-wrapper input{padding-right:var(--space-8)}.clear-search-btn{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;padding:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);cursor:pointer;transition:color .2s}.clear-search-btn:hover{color:var(--color-text-primary)}.filter-group select{padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;cursor:pointer;transition:all .2s}.filter-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.vendor-list-page .filters-row{align-items:flex-start}.vendor-list-page .filter-group{display:grid;grid-template-rows:20px 42px;row-gap:var(--space-2);align-content:start}.vendor-list-page .filter-group label{height:20px;min-height:20px;line-height:20px;margin:0;display:flex;align-items:center;box-sizing:border-box}.vendor-list-page .filter-group label svg{flex:0 0 auto;display:block}.vendor-list-page .search-filter .input-wrapper{height:42px;min-height:42px;width:100%}.vendor-list-page .search-filter .input-wrapper input{display:block;width:100%;height:42px;min-height:42px;margin:0;box-sizing:border-box}.vendor-list-page .filter-group select,.vendor-list-page .filter-group input{height:42px;min-height:42px;margin:0;box-sizing:border-box;padding:var(--space-2-5) var(--space-3);font-size:var(--font-size-base)}.vendor-list-page .filters-row>button{height:42px;min-height:42px;align-self:flex-end}.vendor-table-container{overflow-x:auto;margin-top:var(--space-6)}.vendor-table{width:100%;border-collapse:collapse;table-layout:fixed}.vendor-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.vendor-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vendor-table th,.vendor-table td{box-sizing:border-box}.vendor-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sortable{cursor:pointer;user-select:none;transition:background-color .15s ease}.sortable:hover{background-color:#1f3a5f0d}.sortable.active-sort{background-color:#1f3a5f14}.th-content{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between}.sortable:hover .sort-icon-dim{opacity:.4}.vendor-row{transition:background-color .15s}.vendor-row:hover{background-color:var(--color-bg-hover)}.vendor-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.vendor-link:hover{text-decoration:underline}.no-results{padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-text-secondary)}.no-results p{margin:0;font-size:var(--font-size-lg)}.pagination{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);border-top:1px solid var(--color-border);margin-top:var(--space-4)}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pagination-controls{display:flex;align-items:center;gap:var(--space-4)}.page-numbers{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.vendor-table th{position:relative;user-select:none}.vendor-cards-container{display:none}@media (max-width: 768px){.vendor-list-page{padding:16px}.vendor-table-container{display:none}.vendor-cards-container{display:flex;flex-direction:column;gap:12px;margin-top:16px}.page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.page-header h1{font-size:22px}.page-actions{width:100%;flex-direction:column}.page-actions button,.page-actions a button{width:100%;min-height:44px}.filters-row{flex-direction:column;gap:10px}.filter-group,.search-filter{min-width:100%;width:100%}.filter-group select,.input-wrapper input{min-height:44px;font-size:16px}.vendor-list-page .filter-group{grid-template-rows:20px 44px}.vendor-list-page .filter-group select,.vendor-list-page .filter-group input,.vendor-list-page .search-filter .input-wrapper,.vendor-list-page .search-filter .input-wrapper input{height:44px;min-height:44px}.vendor-metrics-grid{grid-template-columns:repeat(2,1fr)!important}.pagination{flex-direction:column;gap:12px;align-items:stretch;text-align:center}.pagination-controls{justify-content:center}.vendor-card{border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface);overflow:hidden}.vendor-card__header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#1f3a5f08;border-bottom:1px solid var(--color-border);gap:10px}.vendor-card__name{font-size:15px;font-weight:600;color:var(--color-primary);text-decoration:none;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vendor-card__name:hover{text-decoration:underline}.vendor-card__meta{padding:10px 14px;display:flex;flex-direction:column;gap:6px}.vendor-card__row{display:flex;gap:8px;font-size:13px;color:var(--color-text-primary);align-items:baseline}.vendor-card__label{color:var(--color-text-secondary);font-size:12px;font-weight:500;min-width:60px;flex-shrink:0}.vendor-card__link{color:var(--color-primary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vendor-card__link:hover{text-decoration:underline}.vendor-card__footer{padding:10px 14px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end}}.add-vendor-page{padding:var(--space-6)}.add-vendor-page .page-header{display:flex;flex-direction:column;gap:12px;margin-bottom:var(--space-8)}.add-vendor-page h1{margin:0 0 var(--space-2) 0}.add-vendor-page form{display:flex;flex-direction:column;gap:var(--space-6)}.add-vendor-page .card-header{padding-top:14px;padding-bottom:14px;padding-left:var(--space-6)}.add-vendor-page .card-title{margin:0;padding:0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.label-with-tooltip{position:relative;cursor:help}.label-with-tooltip .tooltip{visibility:hidden;opacity:0;position:absolute;bottom:100%;left:0;margin-bottom:var(--space-2);padding:var(--space-2) var(--space-3);background-color:var(--color-text-primary);color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);white-space:nowrap;border-radius:var(--radius-md);box-shadow:0 2px 8px #00000026;transition:opacity .2s,visibility .2s;z-index:100}.label-with-tooltip .tooltip:after{content:"";position:absolute;top:100%;left:var(--space-3);border-width:5px;border-style:solid;border-color:var(--color-text-primary) transparent transparent transparent}.label-with-tooltip:hover .tooltip{visibility:visible;opacity:1}.form-group input,.form-group select,.form-group textarea{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-secondary)}.form-group select{cursor:pointer}.form-group textarea{resize:vertical;font-family:inherit}.checkbox-group{display:flex;align-items:center;padding-top:var(--space-2)}.checkbox-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-normal)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin:0;padding:0}.checkbox-label span{user-select:none}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4)}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}.form-grid input,.form-grid select,.form-grid textarea{min-height:44px;font-size:16px;max-width:100%}.form-actions{flex-direction:column-reverse;gap:10px;padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}.form-actions button{width:100%;min-height:44px}}.vendor-detail-page{padding:var(--space-6)}.vendor-detail-page .page-header{margin-bottom:var(--space-6)}.vendor-hero{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.vendor-hero-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.vendor-title{margin:0 0 var(--space-2) 0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.vendor-subtitle{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-base)}.vendor-hero-actions{display:flex;align-items:center;gap:var(--space-3)}.vendor-stats-bar{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-4) 0;border-top:1px solid var(--color-border)}.stat-item{display:flex;flex-direction:column;gap:var(--space-1)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.stat-divider{width:1px;height:40px;background-color:var(--color-border)}.vendor-content-grid{display:grid;grid-template-columns:1fr 380px;gap:var(--space-6)}@media (max-width: 1200px){.vendor-content-grid{grid-template-columns:1fr}}.vendor-main-column,.vendor-sidebar-column{display:flex;flex-direction:column;gap:var(--space-6)}.vendor-detail-page .card-header{padding-top:14px;padding-bottom:14px}.vendor-detail-page .card-title{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.detail-grid{display:flex;flex-direction:column;gap:var(--space-4)}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.detail-row:last-child{border-bottom:none}.detail-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);flex:0 0 180px}.detail-value{font-size:var(--font-size-base);color:var(--color-text-primary);text-align:right;flex:1}.contact-link{color:var(--color-primary);text-decoration:none;transition:text-decoration .2s}.contact-link:hover{text-decoration:underline}.transaction-history{overflow-x:auto}.history-table{width:100%;border-collapse:collapse}.history-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.history-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.history-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-primary)}.history-table tr:hover{background-color:var(--color-bg-hover)}.amount{font-variant-numeric:tabular-nums}.empty-state{padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-text-disabled);font-size:var(--font-size-sm);font-style:italic}.view-all-link{padding:var(--space-4);text-align:center;border-top:1px solid var(--color-border)}.view-all-link a{color:var(--color-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.view-all-link a:hover{text-decoration:underline}.actions-list{display:flex;flex-direction:column;gap:var(--space-3)}.divider{height:1px;background-color:var(--color-border);margin:var(--space-2) 0}.summary-content{display:flex;flex-direction:column;gap:var(--space-3)}.summary-item{display:flex;flex-direction:column;gap:var(--space-1)}.summary-item label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.summary-item .value{font-size:var(--font-size-base);color:var(--color-text-primary)}.not-found{padding:var(--space-12) var(--space-6);text-align:center}.not-found h1{margin:0 0 var(--space-4) 0;color:var(--color-text-primary)}.not-found p{margin:0 0 var(--space-6) 0;color:var(--color-text-secondary)}.tabs-navigation{display:flex;gap:var(--space-1);border-bottom:2px solid var(--color-border);margin-bottom:var(--space-6)}.tab-button{padding:var(--space-3) var(--space-4);background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s;margin-bottom:-2px}.tab-button:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-content{animation:fadeIn .2s}.transactions-tab,.documents-tab,.notes-tab{width:100%}.notes-content{padding:var(--space-4);min-height:200px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12) var(--space-4);text-align:center;color:var(--color-text-secondary)}.data-table{overflow-x:auto}.data-table table{width:100%;border-collapse:collapse}.data-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.data-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary)}.data-table tr:hover{background-color:var(--color-bg-hover)}@media (max-width: 768px){.vendor-detail-page{padding:16px}.vendor-hero{flex-direction:column;gap:16px;padding:20px 16px}.vendor-stats{grid-template-columns:repeat(2,1fr);gap:12px}.vendor-hero-actions{width:100%;flex-wrap:wrap}.vendor-hero-actions button{min-height:44px}.vendor-tabs{overflow-x:hidden;flex-wrap:wrap;gap:4px}.tab-button{white-space:normal;min-height:44px;padding:10px 14px}.vendor-content-grid,.detail-grid{grid-template-columns:1fr}.data-table{overflow-x:hidden}.data-table table{min-width:unset}.data-table table thead{display:none}.data-table table tbody tr{display:block;padding:12px;margin-bottom:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.data-table table tbody td{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 0;border-bottom:1px solid var(--color-border);gap:8px;text-align:right;font-size:14px;flex-wrap:wrap}.data-table table tbody td:last-child{border-bottom:none}.data-table table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:12px;text-align:left;flex-shrink:0}.transaction-history{overflow-x:hidden}.history-table{min-width:unset}.history-table thead{display:none}.history-table tbody tr{display:block;padding:12px;margin-bottom:10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-surface)}.history-table tbody td{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 0;border-bottom:1px solid var(--color-border);gap:8px;font-size:14px;flex-wrap:wrap;text-align:right}.history-table tbody td:last-child{border-bottom:none}.history-table tbody td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:12px;text-align:left;flex-shrink:0}}.doc-repo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--color-text-secondary);text-align:center;gap:8px;flex:1}.doc-repo-empty-sub{font-size:13px;opacity:.7}@media (max-width: 768px){.doc-repo-main-area{flex-direction:column;overflow-y:auto}.doc-repo-details-wrap{border-top:1px solid var(--color-border);flex-shrink:0;max-height:50vh;overflow-y:auto}}.reports-page{padding:var(--space-6);will-change:auto;contain:layout style}.report-sections{display:flex;flex-direction:column;gap:var(--space-5);margin-top:var(--space-5)}.report-sections .card:not(.metric-card) .card-content{padding-top:var(--space-4);padding-bottom:var(--space-4)}.reports-page .card-header{padding-top:14px;padding-bottom:14px}.reports-page .card-title{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.filters-section{padding:var(--space-4);border-bottom:1px solid var(--color-border)}.filters-row{display:flex;gap:var(--space-4);align-items:flex-end;flex-wrap:wrap}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4)}.metric-card{background-color:var(--color-bg-surface);min-height:120px}.metric-card .card-content{padding:0;height:100%}.metric-content{display:flex;flex-direction:column;gap:var(--space-2);padding:16px;border-radius:var(--radius-md);transition:background-color .2s;height:100%;box-sizing:border-box}.metric-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.metric-value{font-size:28px;font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.metric-change{display:flex;align-items:center;gap:var(--space-1-5);font-size:var(--font-size-sm)}.metric-change.positive{color:var(--color-success)}.metric-change.negative{color:var(--color-error)}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:var(--space-6)}.full-width-chart{padding-top:8px}.report-sections .recharts-wrapper{margin:8px}.report-sections .recharts-legend-wrapper{padding-bottom:8px}.report-sections .card+.card{margin-top:4px}.filter-group{display:flex;flex-direction:column;gap:var(--space-2);min-width:140px}.filter-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--space-2)}.filter-group select,.filter-group input[type=date]{padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;cursor:pointer;transition:all .2s}.filter-group select:focus,.filter-group input[type=date]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.filter-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.filter-group select.placeholder-select{color:var(--color-text-disabled)}.customize-panel-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:flex-end;z-index:1000;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.customize-panel{background:#fff;width:480px;max-width:90vw;height:100vh;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:slideIn .3s ease-out;overflow:hidden}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.customize-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6);border-bottom:1px solid var(--color-border)}.customize-panel-header h3{margin:0;font-size:var(--font-size-xl);color:var(--color-text-primary)}.close-button{background:transparent;border:none;cursor:pointer;padding:var(--space-2);border-radius:4px;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all .2s}.close-button:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.customize-panel-content{flex:1;overflow-y:auto;padding:var(--space-6)}.customize-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-6)}.section-toggles{display:flex;flex-direction:column;gap:var(--space-4)}.toggle-item{padding:var(--space-4);border:1px solid var(--color-border);border-radius:8px;transition:all .2s}.toggle-item:hover{border-color:var(--color-primary);background-color:#1f3a5f05}.toggle-item label{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.toggle-item input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.toggle-item span{flex:1}.toggle-description{margin:var(--space-2) 0 0 0;padding-left:calc(18px + var(--space-3));font-size:var(--font-size-sm);color:var(--color-text-secondary)}.customize-panel-footer{padding:var(--space-6);border-top:1px solid var(--color-border);display:flex;gap:var(--space-3);justify-content:flex-end}@media (max-width: 1024px){.fin-three-col{grid-template-columns:1fr 1fr!important}.fin-perf-insights{grid-template-columns:1fr!important}}@media (max-width: 768px){.filters-section{padding:12px}.filters-row{flex-direction:column;gap:12px;align-items:stretch}.filter-group{min-width:100%;width:100%}.filter-group select,.filter-group input[type=date]{min-height:44px;font-size:16px;width:100%}.fin-kpi-grid{grid-template-columns:repeat(2,1fr)!important}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric-value{font-size:var(--font-size-2xl)}.charts-grid{grid-template-columns:1fr}.fin-three-col{grid-template-columns:1fr!important}.report-sections .card{overflow-x:auto}.report-sections table{min-width:600px}.fin-export-overlay{align-items:flex-end!important}.fin-export-modal{max-width:100%!important;width:100%!important;border-radius:16px 16px 0 0!important;max-height:90vh!important}.fin-export-grid{grid-template-columns:1fr!important}.page-header{flex-wrap:wrap;gap:12px}.page-header h1{font-size:22px}}@media (max-width: 480px){.fin-kpi-grid{grid-template-columns:1fr!important}.metrics-grid{grid-template-columns:1fr}}.re-page{padding-bottom:52px}.re-filter-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:28px;padding:14px 18px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px}.re-filter-controls{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.re-filter-note{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;padding-bottom:4px}.re-filter-note strong{color:var(--color-text-primary);font-weight:600}.re-section{margin-bottom:40px}.re-section-header{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.re-section-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.re-section-icon--red{background:#fee2e2;color:#dc2626}.re-section-icon--green{background:#dcfce7;color:#15803d}.re-section-icon--blue{background:#dbeafe;color:#1d4ed8}.re-section-text{flex:1}.re-section-title{font-size:16px;font-weight:700;color:var(--color-text-primary);margin:0 0 5px;line-height:1.2}.re-section-subtitle{font-size:13px;color:var(--color-text-secondary);margin:0;line-height:1.4}.re-template-count{margin-left:auto;align-self:center;flex-shrink:0;font-size:12px;font-weight:600;padding:3px 10px;border-radius:20px;background:#1f3a5f14;color:var(--color-primary, #1F3A5F);white-space:nowrap}.re-pdf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.re-pdf-card{display:flex;flex-direction:column;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.re-pdf-card:hover{border-color:var(--color-primary, #1F3A5F);box-shadow:0 4px 18px #1f3a5f17}.re-pdf-card__head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px}.re-pdf-card__icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.re-pdf-card__badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:20px;background:#1f3a5f12;color:var(--color-primary, #1F3A5F)}.re-pdf-card__body{flex:1;padding:0 18px 18px}.re-pdf-card__title{font-size:14px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px;line-height:1.3}.re-pdf-card__desc{font-size:12px;color:var(--color-text-secondary);margin:0;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.re-pdf-card__action{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:12px;border:none;border-top:1px solid var(--color-border);background:transparent;color:var(--color-primary, #1F3A5F);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.re-pdf-card__action:hover{background:var(--color-primary, #1F3A5F);color:#fff}.re-excel-layout{display:grid;grid-template-columns:1fr 260px;gap:20px;align-items:start}.re-col-builder{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px}.re-col-builder__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.re-col-builder__label{font-size:13px;font-weight:600;color:var(--color-text-primary)}.re-col-count{font-size:12px;font-weight:600;color:var(--color-accent, #2C8C7B)}.re-col-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;max-height:360px;overflow-y:auto}.re-col-row{display:flex;align-items:center;gap:8px}.re-col-number{width:20px;text-align:center;font-size:11px;font-weight:700;color:var(--color-text-secondary);flex-shrink:0}.re-col-dropdown{flex:1;min-width:0}.re-col-remove{width:28px;height:28px;border:1px solid var(--color-border);border-radius:6px;background:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,color .15s}.re-col-remove:hover{border-color:#ef4444;color:#ef4444}.re-col-add{display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px dashed var(--color-border);border-radius:8px;background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:500;cursor:pointer;width:100%;margin-bottom:14px;transition:border-color .15s,color .15s}.re-col-add:hover{border-color:var(--color-primary, #1F3A5F);color:var(--color-primary, #1F3A5F)}.re-save-template-btn{display:flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--color-border);border-radius:8px;background:transparent;color:var(--color-text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s}.re-save-template-btn:hover{border-color:var(--color-accent, #2C8C7B);color:var(--color-accent, #2C8C7B)}.re-save-form{margin-top:12px;padding:16px;background:var(--color-bg-app);border:1px solid var(--color-border);border-radius:10px}.re-save-form__title{font-size:13px;font-weight:700;color:var(--color-text-primary);margin:0 0 12px}.re-save-form__field{margin-bottom:10px}.re-save-form__field label{display:block;font-size:12px;font-weight:600;color:var(--color-text-secondary);margin-bottom:4px}.re-save-form__field input{width:100%;padding:7px 10px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;background:var(--color-bg-surface);color:var(--color-text-primary);box-sizing:border-box}.re-save-form__field input:focus{outline:none;border-color:var(--color-primary, #1F3A5F)}.re-save-form__actions{display:flex;gap:8px;margin-top:12px}.re-export-summary{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px;padding:20px;position:sticky;top:80px}.re-export-summary__title{font-size:13px;font-weight:700;color:var(--color-text-primary);margin:0 0 16px}.re-export-stat-list{display:flex;flex-direction:column;gap:0;margin-bottom:16px}.re-export-stat{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:9px 0;border-bottom:1px solid var(--color-border)}.re-export-stat:last-child{border-bottom:none}.re-export-stat span{color:var(--color-text-secondary)}.re-export-stat strong{color:var(--color-text-primary);font-weight:600}.re-export-filename{font-size:11px;font-family:ui-monospace,Cascadia Code,monospace;color:var(--color-text-secondary);background:var(--color-bg-app);padding:7px 10px;border-radius:6px;margin-bottom:14px;word-break:break-all}.re-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.re-template-card{display:flex;align-items:center;gap:14px;padding:16px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:12px;transition:border-color .15s,box-shadow .15s}.re-template-card:hover{border-color:var(--color-primary, #1F3A5F);box-shadow:0 2px 10px #1f3a5f14}.re-template-card--default{border-style:dashed}.re-template-card--ghost{flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:90px;border-style:dashed;gap:10px;cursor:default}.re-template-card--ghost:hover{border-color:var(--color-border);box-shadow:none}.re-template-ghost-icon{color:var(--color-text-secondary);opacity:.5}.re-template-card--ghost p{font-size:12px;color:var(--color-text-secondary);margin:0;max-width:220px;line-height:1.5}.re-template-card__icon{width:40px;height:40px;border-radius:10px;background:#eff6ff;color:#1d4ed8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.re-template-card--default .re-template-card__icon{background:var(--color-bg-app);color:var(--color-text-secondary)}.re-template-card__info{flex:1;min-width:0}.re-template-card__info h4{font-size:13px;font-weight:700;color:var(--color-text-primary);margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.re-template-card__info p{font-size:12px;color:var(--color-text-secondary);margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.re-template-cols{font-size:11px;font-weight:600;color:var(--color-accent, #2C8C7B)}.re-template-card__actions{display:flex;gap:6px;flex-shrink:0}@media (max-width: 1100px){.re-pdf-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 860px){.re-excel-layout{grid-template-columns:1fr}.re-export-summary{position:static}}@media (max-width: 640px){.re-pdf-grid{grid-template-columns:1fr}.re-filter-bar{flex-direction:column;align-items:stretch}.re-filter-note{padding-bottom:0}}.alerts-page{padding:var(--space-6)}.status-tabs{display:flex;gap:var(--space-1);background-color:var(--color-bg-app);padding:var(--space-1);border-radius:var(--radius-md)}.status-tabs button{padding:var(--space-2) var(--space-4);background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s}.status-tabs button:hover{background-color:var(--color-bg-surface)}.status-tabs button.active{background-color:var(--color-bg-surface);color:var(--color-text-primary)}.alerts-list{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-6)}.alert-card{border-left-width:4px;border-left-style:solid;transition:all .2s;position:relative}.alert-card:not(.dismissed):hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.alert-card.severity-critical{border-left-color:var(--color-error)}.alert-card.severity-high{border-left-color:var(--color-warning)}.alert-card.severity-medium{border-left-color:var(--color-info)}.alert-card.severity-low{border-left-color:var(--color-text-secondary)}.alert-card.dismissed{opacity:.6}.alert-content{display:flex;gap:var(--space-4);border-radius:var(--radius-md);transition:all .15s;padding:var(--space-1);margin:calc(var(--space-1) * -1)}.alert-card:not(.dismissed) .alert-content:hover{background-color:var(--color-bg-hover)}.alert-card:not(.dismissed) .alert-content:active{transform:scale(.995)}.alert-card.dismissed .alert-content{cursor:default}.alert-icon{flex-shrink:0;padding-top:2px}.severity-critical .alert-icon{color:var(--color-error)}.severity-high .alert-icon{color:var(--color-warning)}.severity-medium .alert-icon{color:var(--color-info)}.severity-low .alert-icon{color:var(--color-text-secondary)}.alert-body{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.alert-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.alert-title-row{display:flex;align-items:center;gap:var(--space-3);flex:1}.alert-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);transition:color .15s}.alert-card:not(.dismissed) .alert-content:hover .alert-title{color:var(--color-primary)}.alert-message{margin:0;color:var(--color-text-secondary);line-height:var(--line-height-lg)}.alert-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.alert-property{font-weight:var(--font-weight-medium)}.dismissed-label{display:flex;align-items:center;gap:var(--space-1);color:var(--color-success)}.dismiss-button{flex-shrink:0}.no-alerts{padding:var(--space-12) var(--space-6);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.no-alerts-icon{color:var(--color-success)}.no-alerts h3{margin:0;color:var(--color-text-primary)}.no-alerts p{margin:0;color:var(--color-text-secondary);max-width:400px}.ba-page{padding:var(--space-6)}.ba-page-header{margin-bottom:var(--space-6)}.ba-page-title{font-size:24px;font-weight:700;margin:0 0 var(--space-1) 0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ba-page-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.ba-no-company{padding:var(--space-8);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-base)}.ba-tabs{display:flex;gap:var(--space-1);border-bottom:2px solid var(--color-border);margin-bottom:var(--space-6);flex-wrap:wrap}.ba-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .15s;margin-bottom:-2px;white-space:nowrap}.ba-tab:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover)}.ba-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.ba-tab-mobile-select{display:none;position:relative;margin-bottom:var(--space-6)}.ba-mobile-select{width:100%;padding:var(--space-3) var(--space-4);padding-right:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);font-size:var(--font-size-base);color:var(--color-text-primary);appearance:none;cursor:pointer}.ba-mobile-select-icon{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);pointer-events:none;color:var(--color-text-secondary)}@media (max-width: 768px){.ba-tabs{display:none}.ba-tab-mobile-select{display:block}}.ba-content{display:flex;flex-direction:column}.ba-tab-content{display:flex;flex-direction:column;gap:var(--space-6)}.ba-section-heading{font-size:18px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.ba-section-desc{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0 0 var(--space-4) 0}.ba-seat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-4)}@media (max-width: 900px){.ba-seat-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.ba-seat-cards{grid-template-columns:1fr}}.ba-seat-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5)}.ba-seat-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.ba-seat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.ba-toolbar{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-4)}.ba-search-wrap{display:flex;align-items:center;gap:var(--space-2);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 var(--space-3);min-width:200px;flex:1;max-width:320px;color:var(--color-text-secondary)}.ba-search{border:none;background:none;font-size:var(--font-size-base);color:var(--color-text-primary);padding:var(--space-2) 0;width:100%;outline:none}.ba-select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);font-size:var(--font-size-base);color:var(--color-text-primary);cursor:pointer;min-width:120px}.ba-audit-filters{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center;margin-bottom:var(--space-4)}.ba-audit-filters .ba-search-wrap{flex:1;min-width:180px}.ba-audit-filters input[type=date],.ba-audit-filters input[type=text]{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);font-size:var(--font-size-base);color:var(--color-text-primary)}.ba-table-wrap{overflow-x:auto}.ba-table{width:100%;border-collapse:collapse;font-size:var(--font-size-base)}.ba-table thead{background:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.ba-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.ba-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);vertical-align:middle}.ba-table tr:last-child td{border-bottom:none}.ba-table tr:hover td{background:var(--color-bg-hover)}.ba-table-clickable tbody tr{cursor:pointer}.ba-clickable-row:hover td{background:var(--color-bg-hover)}.ba-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-base)}.ba-empty-compact{padding:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-base)}.ba-user-cell{display:flex;flex-direction:column;gap:2px}.ba-user-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ba-user-number{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ba-muted{color:var(--color-text-secondary);font-size:var(--font-size-base)}.ba-mono{font-family:var(--font-mono);font-size:var(--font-size-sm)}.ba-error-text{color:var(--color-error)}.ba-action-group{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.ba-inline-link{width:100%;max-width:320px;padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:var(--font-mono);color:var(--color-text-secondary);background:var(--color-bg-surface);margin-top:var(--space-2);display:block}.ba-roles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4)}.ba-role-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.ba-role-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.ba-role-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.ba-role-purpose{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ba-role-summary{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.ba-roles-note{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-style:italic;margin:0}.ba-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-4) var(--space-6)}.ba-detail-item{display:flex;flex-direction:column;gap:var(--space-1)}.ba-detail-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.ba-detail-value{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.ba-plan-note{margin:var(--space-5) 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-style:italic}.ba-settings-group{display:flex;flex-direction:column;gap:0}.ba-setting-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border)}.ba-setting-row:last-child{border-bottom:none}.ba-setting-info{flex:1;min-width:0}.ba-setting-label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:2px}.ba-setting-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ba-setting-input{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg-surface);width:200px;flex-shrink:0}.ba-setting-input:focus{outline:none;border-color:var(--color-primary)}.ba-toggle{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.ba-toggle input{opacity:0;width:0;height:0}.ba-toggle-slider{position:absolute;inset:0;background-color:var(--color-border);border-radius:12px;cursor:pointer;transition:background-color .2s}.ba-toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s}.ba-toggle input:checked+.ba-toggle-slider{background-color:var(--color-primary)}.ba-toggle input:checked+.ba-toggle-slider:before{transform:translate(20px)}.ba-integration-card{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0}.ba-integration-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.ba-integration-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ba-level-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ba-delegation-limit{display:flex;flex-direction:column;gap:var(--space-2)}.ba-checkbox-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.ba-input-prefix-wrap{position:relative;display:flex;align-items:center}.ba-input-prefix{position:absolute;left:var(--space-3);color:var(--color-text-secondary);pointer-events:none;font-size:var(--font-size-base)}.ba-prefix-input{padding-left:var(--space-6)!important}.ba-coa-guide{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;display:flex;flex-direction:column;gap:var(--space-3)}.ba-coa-ranges{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg-app);border-radius:var(--radius-md);border-left:3px solid var(--color-primary)}.ba-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.ba-modal{background:var(--color-bg-surface);border-radius:var(--radius-xl);width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000f}.ba-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.ba-modal-title{font-size:18px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.ba-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.ba-modal-close:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.ba-modal-body{padding:var(--space-6)}.ba-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border)}.ba-form-fields{display:flex;flex-direction:column;gap:var(--space-4)}.ba-form-field{display:flex;flex-direction:column;gap:var(--space-2)}.ba-form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ba-required{color:var(--color-error);margin-left:2px}.ba-form-input,.ba-form-select,.ba-form-textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg-surface);font-family:inherit;box-sizing:border-box}.ba-form-input:focus,.ba-form-select:focus,.ba-form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.ba-form-textarea{resize:vertical}.ba-readonly-field{padding:var(--space-2) var(--space-3);background:var(--color-bg-app);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-secondary)}.ba-number-input{width:90px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg-surface);text-align:center}.ba-error-box{padding:var(--space-3) var(--space-4);background:var(--color-error-bg);border:1px solid rgba(214,69,69,.3);border-radius:var(--radius-md);color:var(--color-error);font-size:var(--font-size-sm);line-height:1.5}.ba-success-box{padding:var(--space-4);background:var(--color-success-bg);border:1px solid rgba(46,139,87,.3);border-radius:var(--radius-md);color:var(--color-success-text);font-size:var(--font-size-base)}.ba-warning-box{padding:var(--space-4);background:var(--color-warning-bg);border:1px solid rgba(217,142,4,.3);border-radius:var(--radius-md);color:var(--color-warning-text);font-size:var(--font-size-base)}.ba-audit-detail{display:flex;flex-direction:column;gap:var(--space-4)}.ba-expand-toggle{background:none;border:none;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;padding:0;text-align:left;display:flex;align-items:center;gap:var(--space-2)}.ba-expand-toggle:hover{text-decoration:underline}.ba-technical-detail{padding:var(--space-3) var(--space-4);background:var(--color-bg-app);border-radius:var(--radius-md);border-left:3px solid var(--color-border)}.ba-section-title{background:linear-gradient(135deg,var(--color-primary, #0d9488),var(--color-accent, #14b8a6));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:22px;font-weight:700;margin-bottom:16px;margin-top:0}.btn-clear-filters{padding:var(--space-2) var(--space-3);background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s}.btn-clear-filters:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-hover)}.ba-approval-wrap{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.admin-login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(145deg,#0f1923,#1a2a3a,#0f1923);padding:var(--space-4)}.admin-login-card{width:100%;max-width:460px;background-color:#1e2d3d;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl);box-shadow:0 25px 80px #0009;padding:var(--space-10)}.admin-login-header{text-align:center;margin-bottom:var(--space-6)}.admin-shield-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:linear-gradient(135deg,#c0392b,#e74c3c);border-radius:50%;color:#fff;margin-bottom:var(--space-4);box-shadow:0 4px 20px #c0392b66}.admin-login-logo{font-size:28px;font-weight:var(--font-weight-bold);color:#e8edf2;margin:0 0 var(--space-2) 0;letter-spacing:.08em}.admin-login-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:#c8d8e8;margin:0 0 var(--space-2) 0}.admin-login-subtitle{font-size:var(--font-size-sm);color:#7a8fa0;margin:0;text-transform:uppercase;letter-spacing:.06em}.admin-access-notice{display:flex;align-items:flex-start;gap:var(--space-2);background-color:#c0392b1f;border:1px solid rgba(192,57,43,.3);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-6);color:#e8a090;font-size:var(--font-size-sm);line-height:1.5}.admin-access-notice svg{flex-shrink:0;margin-top:2px}.admin-login-form{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}.admin-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.admin-form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#9ab0c4;letter-spacing:.02em}.admin-form-group input{width:100%;padding:var(--space-3) var(--space-4);background-color:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);font-size:var(--font-size-base);color:#e8edf2;outline:none;transition:all .2s;box-sizing:border-box}.admin-form-group input::placeholder{color:#4a6070}.admin-form-group input:focus{border-color:#c0392b99;background-color:#ffffff14;box-shadow:0 0 0 3px #c0392b26}.admin-password-input{position:relative}.admin-password-input input{padding-right:44px}.admin-password-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;color:#7a8fa0;padding:var(--space-2);cursor:pointer;display:flex;align-items:center;transition:color .2s}.admin-password-toggle:hover{color:#9ab0c4}.admin-login-btn{width:100%;padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,#c0392b,#e74c3c);border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .2s;letter-spacing:.02em}.admin-login-btn:hover:not(:disabled){background:linear-gradient(135deg,#a93226,#cb4335);box-shadow:0 4px 16px #c0392b66;transform:translateY(-1px)}.admin-login-btn:active:not(:disabled){transform:translateY(0)}.admin-login-btn:disabled{opacity:.6;cursor:not-allowed}.admin-login-back{text-align:center;margin-bottom:var(--space-6)}.admin-back-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:#7a8fa0;text-decoration:none;transition:color .2s}.admin-back-link:hover{color:#9ab0c4}.admin-login-help{border-top:1px solid rgba(255,255,255,.08);padding-top:var(--space-5);text-align:center}.admin-login-help p{font-size:var(--font-size-xs);color:#4a6070;line-height:1.6;margin:0}.admin-login-help code{background-color:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:1px 5px;font-size:11px;color:#9ab0c4}.admin-login-help a{color:#5b8fb5;text-decoration:none}.admin-login-help a:hover{text-decoration:underline;color:#7aafd0}.ap-shell{display:flex;height:100vh;background-color:var(--color-bg-app);overflow:hidden}.ap-sidebar{width:240px;flex-shrink:0;background:linear-gradient(180deg,#0f1923,#141f2b);border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow:hidden}.ap-sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid rgba(255,255,255,.06)}.ap-brand-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:linear-gradient(135deg,#c0392b,#e74c3c);border-radius:var(--radius-md);color:#fff;flex-shrink:0}.ap-brand-name{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:#e8edf2;letter-spacing:.06em}.ap-brand-sub{font-size:var(--font-size-xs);color:#5a7a8f;text-transform:uppercase;letter-spacing:.08em}.ap-sidebar-nav{flex:1;padding:var(--space-3) var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);overflow-y:auto}.ap-nav-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-3);background:none;border:none;border-radius:var(--radius-md);color:#6a8a9f;font-size:var(--font-size-sm);cursor:pointer;transition:all .15s;text-align:left}.ap-nav-item:hover{background-color:#ffffff0f;color:#c8d8e8}.ap-nav-item.active{background-color:#c0392b26;color:#e8a090;border-left:2px solid #e74c3c}.ap-sidebar-footer{padding:var(--space-4) var(--space-4);border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;gap:var(--space-3)}.ap-admin-user{flex:1;min-width:0}.ap-admin-avatar{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#c0392b33;border-radius:50%;color:#e8a090;margin-bottom:var(--space-1)}.ap-admin-label{font-size:10px;color:#4a6070;text-transform:uppercase;letter-spacing:.06em}.ap-admin-email{font-size:var(--font-size-xs);color:#7a9ab0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ap-logout-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;background:none;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:#6a8a9f;cursor:pointer;transition:all .15s;flex-shrink:0}.ap-logout-btn:hover{background-color:#c0392b26;border-color:#c0392b4d;color:#e8a090}.ap-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.ap-topbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border);flex-shrink:0}.ap-page-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.ap-topbar-actions{display:flex;gap:var(--space-3)}.ap-content{flex:1;overflow-y:auto;padding:var(--space-6)}.ap-tab-content{display:flex;flex-direction:column;gap:var(--space-4)}.ap-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-4)}.ap-stat-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);display:flex;align-items:center;gap:var(--space-4)}.ap-stat-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-md);flex-shrink:0}.ap-stat-icon.blue{background:#1f3a5f1a;color:var(--color-primary)}.ap-stat-icon.green{background:#2ecc711a;color:var(--color-success)}.ap-stat-icon.amber{background:#f39c121a;color:var(--color-warning)}.ap-stat-icon.purple{background:#9b59b61a;color:#9b59b6}.ap-stat-icon.teal{background:#1abc9c1a;color:#1abc9c}.ap-stat-icon.red{background:#e74c3c1a;color:var(--color-error)}.ap-stat-details{flex:1}.ap-stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--space-1);text-transform:uppercase;letter-spacing:.05em}.ap-stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.ap-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.ap-card-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);color:var(--color-text-primary)}.ap-card-header h3{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);flex:1}.ap-card-header p{margin:4px 0 0;font-size:var(--font-size-sm)}.ap-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-4)}.ap-activity-list{padding:var(--space-2) 0}.ap-activity-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border)}.ap-activity-item:last-child{border-bottom:none}.ap-activity-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}.ap-activity-dot.success{background-color:var(--color-success)}.ap-activity-dot.failed{background-color:var(--color-error)}.ap-activity-dot.warning{background-color:var(--color-warning)}.ap-activity-body{flex:1;font-size:var(--font-size-sm)}.ap-activity-action{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ap-activity-user{color:var(--color-text-secondary)}.ap-activity-time{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap}.ap-health-list{padding:var(--space-2) 0}.ap-health-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border)}.ap-health-item:last-child{border-bottom:none}.ap-health-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-primary)}.ap-health-meta{display:flex;justify-content:space-between;padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-companies-summary{padding:var(--space-2) 0}.ap-company-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border)}.ap-company-row:last-child{border-bottom:none}.ap-company-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ap-company-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-table-controls{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.ap-search-wrap{position:relative;flex:1;min-width:200px}.ap-search-wrap svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);pointer-events:none;z-index:1}.ap-search{width:100%;padding:var(--space-2) var(--space-3) var(--space-2) 40px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-app);outline:none;transition:all .2s}.ap-search:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.ap-select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-app);outline:none;cursor:pointer;min-width:140px}.ap-table-wrap{overflow-x:auto}.ap-table{width:100%;border-collapse:collapse}.ap-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.ap-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.ap-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-primary)}.ap-table tr:last-child td{border-bottom:none}.ap-table tr:hover td{background-color:var(--color-bg-hover)}.ap-mono{font-family:Courier New,monospace;font-size:var(--font-size-xs)}.ap-bold{font-weight:var(--font-weight-medium)}.ap-muted{color:var(--color-text-secondary)}.ap-right{text-align:right}.ap-empty{text-align:center;padding:var(--space-8);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ap-table-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);font-size:var(--font-size-sm)}.ap-row-actions,.ap-user-actions-wrap{display:flex;align-items:center;gap:var(--space-1)}.ap-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.ap-icon-btn:hover{background-color:var(--color-bg-hover);color:var(--color-primary)}.ap-icon-btn.ap-danger:hover{background-color:#e74c3c1a;color:var(--color-error)}.ap-user-cell{display:flex;align-items:center;gap:var(--space-3)}.ap-user-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));border-radius:50%;color:#fff;font-size:11px;font-weight:var(--font-weight-semibold);flex-shrink:0}.ap-role-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.ap-role-badge.system-admin{background-color:#c0392b1a;color:#c0392b}.ap-role-badge.company-admin{background-color:#1f3a5f1a;color:var(--color-primary)}.ap-role-badge.manager{background-color:#9b59b61a;color:#8e44ad}.ap-role-badge.viewer{background-color:#7f8c8d1a;color:var(--color-text-secondary)}.ap-mfa-on{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-success)}.ap-mfa-off{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-menu-wrap{position:relative}.ap-dropdown-menu{position:absolute;right:0;top:calc(100% + 4px);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:170px;z-index:100;overflow:hidden}.ap-dropdown-menu button{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background:none;border:none;font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;transition:background .15s;text-align:left}.ap-dropdown-menu button:hover{background-color:var(--color-bg-hover)}.ap-dropdown-menu button.ap-menu-danger{color:var(--color-error)}.ap-dropdown-menu button.ap-menu-danger:hover{background-color:#e74c3c14}.ap-roles-layout{display:grid!important;grid-template-columns:280px 1fr;gap:var(--space-4);align-items:start}.ap-roles-list-panel .ap-card{overflow:visible}.ap-role-item{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .15s}.ap-role-item:last-child{border-bottom:none}.ap-role-item:hover{background-color:var(--color-bg-hover)}.ap-role-item.active{background-color:#1f3a5f0f;border-left:3px solid var(--color-primary)}.ap-role-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.ap-role-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-system-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background-color:#c0392b14;border:1px solid rgba(192,57,43,.2);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:#c0392b}.ap-permissions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2);padding:var(--space-5)}.ap-perm-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);border:1px solid transparent}.ap-perm-item.granted{background-color:#2ecc7112;color:var(--color-success);border-color:#2ecc7126}.ap-perm-item.denied{background-color:var(--color-bg-app);color:var(--color-text-secondary);border-color:var(--color-border)}.ap-settings-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:var(--space-4);align-items:start}.ap-settings-body{padding:var(--space-2) 0}.ap-setting-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.ap-setting-row:last-child{border-bottom:none}.ap-setting-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ap-setting-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:2px}.ap-setting-input{width:80px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-app);outline:none;text-align:center}.ap-setting-input.ap-setting-input-wide{width:200px;text-align:left}.ap-setting-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.ap-settings-save-row{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);display:flex;justify-content:flex-end}.ap-toggle{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0;cursor:pointer}.ap-toggle input{opacity:0;width:0;height:0}.ap-toggle-slider{position:absolute;inset:0;background-color:var(--color-border);border-radius:24px;transition:.2s}.ap-toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px #0003}.ap-toggle input:checked+.ap-toggle-slider{background-color:var(--color-primary)}.ap-toggle input:checked+.ap-toggle-slider:before{transform:translate(20px)}.ap-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .15s;border:1px solid transparent}.ap-btn-primary{background-color:var(--color-primary);color:#fff}.ap-btn-primary:hover{background-color:var(--color-primary-dark, #162e4d)}.ap-btn-secondary{background-color:var(--color-bg-surface);color:var(--color-text-primary);border-color:var(--color-border)}.ap-btn-secondary:hover{background-color:var(--color-bg-hover)}.ap-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.ap-modal{background-color:var(--color-bg-surface);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.ap-modal-wide{max-width:680px}.ap-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.ap-modal-header h2{margin:0;font-size:var(--font-size-lg);color:var(--color-text-primary)}.ap-modal-body{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.ap-modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-top:1px solid var(--color-border)}.ap-field{display:flex;flex-direction:column;gap:var(--space-2)}.ap-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ap-field input,.ap-field select{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-app);outline:none;transition:all .2s}.ap-field input:focus,.ap-field select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.ap-invite-note{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background-color:#1f3a5f0f;border:1px solid rgba(31,58,95,.15);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-primary)}.ap-permissions-edit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.ap-perm-checkbox{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:background .15s;border:1px solid var(--color-border)}.ap-perm-checkbox:hover{background-color:var(--color-bg-hover)}.ap-perm-checkbox input{accent-color:var(--color-primary);width:16px;height:16px;flex-shrink:0}@media (max-width: 900px){.ap-sidebar{width:200px}.ap-roles-layout,.ap-settings-grid{grid-template-columns:1fr!important}}.ap-mobile-nav{display:none;padding:var(--space-3) var(--space-4);border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff0a}.ap-mobile-nav select{width:100%;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md);background:#ffffff14;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;min-height:44px}@media (max-width: 640px){.ap-sidebar{display:none}.ap-mobile-nav{display:block}.ap-content{padding:var(--space-4)}.ap-topbar{padding:var(--space-3) var(--space-4);flex-wrap:wrap;gap:var(--space-2)}.ap-page-title{font-size:18px}.ap-topbar-actions{flex-wrap:wrap}.ap-cd-stat-grid{grid-template-columns:repeat(2,1fr)}.ap-cd-info-grid{grid-template-columns:1fr}}.ap-topbar-left{display:flex;flex-direction:column;gap:var(--space-1)}.ap-readonly-banner{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-secondary);user-select:none}.ap-refresh-btn{min-height:44px}@keyframes ap-spin-kf{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ap-spin{animation:ap-spin-kf .8s linear infinite}@media (prefers-reduced-motion: reduce){.ap-spin{animation:none}}.ap-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:260px;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ap-error-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);min-height:260px;text-align:center;color:var(--color-text-secondary)}.ap-error-card h3{margin:0;font-size:var(--font-size-base);color:var(--color-text-primary)}.ap-error-card p{margin:0;font-size:var(--font-size-sm)}.ap-error-card svg{color:var(--color-error)}.ap-refresh-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-6);background-color:#e74c3c0f;border-bottom:1px solid rgba(231,76,60,.2);font-size:var(--font-size-xs);color:var(--color-error);flex-shrink:0}.ap-refresh-error-retry{background:none;border:none;font-size:var(--font-size-xs);color:var(--color-error);text-decoration:underline;cursor:pointer;padding:0}.ap-refresh-error-retry:disabled{opacity:.5;cursor:default}.ap-deferred-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-10, 40px) var(--space-6);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:center;max-width:480px;margin:0 auto}.ap-deferred-icon{color:var(--color-text-secondary);opacity:.5}.ap-deferred-title{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.ap-deferred-message{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.ap-limited-notice{padding:var(--space-2) var(--space-5);font-size:var(--font-size-xs);color:var(--color-text-secondary);background-color:var(--color-bg-app);border-bottom:1px solid var(--color-border)}.ap-admin-info{flex:1;min-width:0}.ap-companies-table{min-width:800px}.ap-audit-table{min-width:960px}.ap-ph-header-text{flex:1;min-width:0}.ap-ph-header-text h3{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.ap-ph-header-text p{margin:3px 0 0;font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.5}.ap-ph-overall{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background-color:var(--color-bg-app);border-bottom:1px solid var(--color-border)}.ap-ph-overall-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.ap-ph-last-check{padding:var(--space-2) var(--space-5);font-size:var(--font-size-xs);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}.ap-ph-last-check-value{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ap-ph-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border)}.ap-ph-row:last-child{border-bottom:none}.ap-ph-row-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-primary)}.ap-ph-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.ap-ph-badge--lg{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ap-ph-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ap-ph-dot--lg{width:10px;height:10px}.ap-ph-dot--operational{background-color:var(--color-success)}.ap-ph-dot--degraded{background-color:var(--color-warning, #f39c12)}.ap-ph-dot--unavailable{background-color:var(--color-error)}.ap-ph-dot--unknown{background-color:var(--color-text-secondary)}.ap-ph-badge--operational{color:var(--color-success)}.ap-ph-badge--degraded{color:var(--color-warning, #f39c12)}.ap-ph-badge--unavailable{color:var(--color-error)}.ap-ph-badge--unknown{color:var(--color-text-secondary)}.ap-ph-manual{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background-color:var(--color-bg-app)}.ap-ph-manual-heading{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.ap-ph-manual-desc{margin:0 0 var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-ph-manual-list{margin:0 0 var(--space-2);padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1) var(--space-3)}.ap-ph-manual-list li{font-size:var(--font-size-xs);color:var(--color-text-secondary);display:flex;align-items:center;gap:5px}.ap-ph-manual-list li:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background-color:var(--color-text-secondary);opacity:.4;flex-shrink:0}.ap-ph-manual-note{margin:0;font-size:var(--font-size-xs);color:var(--color-text-secondary);font-style:italic;line-height:1.5;opacity:.8}@media (max-width: 900px){.ap-ph-manual-list{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.ap-ph-manual-list{grid-template-columns:1fr}.ap-ph-overall,.ap-ph-last-check,.ap-ph-row,.ap-ph-manual{padding-left:var(--space-4);padding-right:var(--space-4)}}.ap-users-table{min-width:920px}.ap-user-row{cursor:pointer;transition:background-color .12s ease}.ap-user-row:hover{background-color:var(--color-bg-hover, rgba(0, 0, 0, .03))}.ap-user-row:focus{outline:2px solid var(--color-primary, #3b82f6);outline-offset:-2px}.ap-user-identity-cell{display:flex;flex-direction:column;gap:2px}.ap-user-name{font-weight:600;color:var(--color-text-primary)}.ap-user-number{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-family:var(--font-mono, monospace)}.ap-company-chips{display:flex;flex-wrap:wrap;gap:4px}.ap-company-chip{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:var(--font-size-xs);background-color:var(--color-bg-subtle, rgba(0, 0, 0, .06));color:var(--color-text-secondary);white-space:nowrap}.ap-status-badge{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.ap-status-badge--active{background-color:#22c55e1f;color:#16a34a}.ap-status-badge--inactive{background-color:var(--color-bg-subtle, rgba(0, 0, 0, .06));color:var(--color-text-secondary)}.ap-status-badge--suspended{background-color:#fb923c24;color:#c2410c}.ap-role-badge{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.ap-role-badge--system-owner{background-color:#8b5cf624;color:#7c3aed}.ap-role-badge--system-admin,.ap-role-badge--system-administrator{background-color:#3b82f624;color:#1d4ed8}.ap-role-badge--system-support{background-color:#eab30824;color:#b45309}.ap-role-badge--system-read-only{background-color:var(--color-bg-subtle, rgba(0, 0, 0, .06));color:var(--color-text-secondary)}.ap-role-cell{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.ap-role-status-note{font-size:var(--font-size-xs);color:var(--color-text-secondary);opacity:.8}.ap-drawer-close:focus-visible{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px}.ap-drawer-overlay{position:fixed;inset:0;background-color:#00000052;z-index:200}.ap-drawer{position:fixed;top:0;right:0;bottom:0;width:480px;max-width:100vw;background-color:var(--color-bg-primary, #fff);border-left:1px solid var(--color-border, rgba(0, 0, 0, .1));z-index:201;display:flex;flex-direction:column;overflow:hidden;box-shadow:-4px 0 24px #0000001f}@media (prefers-reduced-motion: no-preference){.ap-drawer{animation:ap-drawer-slide-in .22s ease-out}@keyframes ap-drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}}.ap-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border, rgba(0, 0, 0, .08));flex-shrink:0;gap:var(--space-4)}.ap-drawer-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-md, 6px);background:transparent;cursor:pointer;color:var(--color-text-secondary);flex-shrink:0;transition:background-color .12s ease,color .12s ease}.ap-drawer-close:hover{background-color:var(--color-bg-hover, rgba(0, 0, 0, .06));color:var(--color-text-primary)}.ap-drawer-body{flex:1;overflow-y:auto;padding:var(--space-5)}.ap-drawer-section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3)}.ap-drawer-identity-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4) var(--space-6);margin-bottom:var(--space-2)}.ap-drawer-identity-field{display:flex;flex-direction:column;gap:3px}.ap-drawer-field-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500}.ap-drawer-field-value{font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-all}.ap-membership-card{border:1px solid var(--color-border, rgba(0, 0, 0, .1));border-radius:var(--radius-md, 8px);padding:var(--space-4);margin-bottom:var(--space-3)}.ap-membership-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);gap:var(--space-3)}.ap-membership-company{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary)}.ap-membership-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3) var(--space-6)}.ap-membership-field{display:flex;flex-direction:column;gap:2px}.ap-membership-field .ap-drawer-field-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-membership-field span:last-child{font-size:var(--font-size-sm);color:var(--color-text-primary)}@media (max-width: 640px){.ap-drawer{width:100vw;border-left:none}.ap-drawer-identity-grid,.ap-membership-grid{grid-template-columns:1fr}}.ap-cd-root{display:flex;flex-direction:column;gap:1.5rem}.ap-cd-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.ap-cd-title-block{display:flex;flex-direction:column;gap:.375rem}.ap-cd-company-name{margin:0;font-size:1.5rem;font-weight:700;color:var(--color-text-primary);line-height:1.2}.ap-cd-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.8rem;color:var(--color-text-secondary)}.ap-cd-meta-id{font-family:var(--font-mono, monospace);font-size:.72rem;color:var(--color-text-secondary)}.ap-cd-meta-sep{color:var(--color-border)}.ap-cd-actions{display:flex;gap:.5rem;flex-wrap:wrap;flex-shrink:0}.ap-btn-danger-outline{background:transparent;color:#b91c1c;border:1px solid #fca5a5;border-radius:var(--radius-md, 6px);padding:.4rem .75rem;font-size:.8rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.375rem;transition:background .15s,border-color .15s}.ap-btn-danger-outline:hover{background:#fee2e2;border-color:#ef4444;color:#7f1d1d}.ap-cd-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.ap-cd-stat-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.35rem}.ap-cd-stat-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-secondary)}.ap-cd-stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary);line-height:1.2}.ap-cd-stat-cap{font-size:var(--font-size-lg);font-weight:400;color:var(--color-text-secondary)}.ap-cd-stat-sub{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-lg);font-weight:600}.ap-cd-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}.ap-cd-col{display:flex;flex-direction:column;gap:1rem}.ap-dl{display:flex;flex-direction:column;margin:0;padding:0 var(--space-5) var(--space-2)}.ap-dl-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--color-border)}.ap-dl-row:last-child{border-bottom:none}.ap-dl-row dt{flex-shrink:0;font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.ap-dl-row dd{margin:0;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary);text-align:right;word-break:break-word}.ap-dl-row--total dt,.ap-dl-row--total dd{font-weight:700;color:var(--color-text-primary)}.ap-cd-usage-bar{margin:.75rem var(--space-5) var(--space-2)}.ap-cd-usage-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:.3rem}.ap-cd-usage-track{height:6px;background:var(--color-border);border-radius:3px;overflow:hidden}.ap-cd-usage-fill{height:100%;border-radius:3px;transition:width .3s ease}.ap-cd-pricing-note{margin:.75rem var(--space-5) var(--space-4);padding:.5rem .75rem;background:var(--color-bg-app);border-radius:4px;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.ap-cd-col .ap-card{overflow:visible}.ap-text-xs{font-size:.72rem!important}.ap-mono{font-family:var(--font-mono, monospace)}@media (max-width: 900px){.ap-cd-stats{grid-template-columns:repeat(2,1fr)}.ap-cd-detail-grid{grid-template-columns:1fr}}@media (max-width: 600px){.ap-cd-stats{grid-template-columns:1fr}}.ap-input{width:100%;padding:.45rem .65rem;border:1px solid var(--color-border);border-radius:var(--radius-md, 6px);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-text-primary);background:var(--color-bg-surface);outline:none;box-sizing:border-box;transition:border-color .15s}.ap-input:focus{border-color:var(--color-primary)}.wip-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.page-header h1{margin:0 0 .5rem}.page-subtitle{color:var(--color-text-secondary);margin:0}.filters-section{margin-bottom:1.5rem}.filters-row{display:flex;gap:1rem;align-items:flex-end}.filter-btn-group{display:flex;gap:.5rem;align-items:center;padding-top:1.625rem}.filter-btn-group button{height:100%;padding-top:.625rem;padding-bottom:.625rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group.search-filter{flex:1}.filter-group label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary);display:flex;align-items:center;gap:.375rem}.input-wrapper{position:relative}.search-input-wrapper input{width:100%;padding:.625rem 2.5rem .625rem 1rem;border:1px solid var(--color-border);border-radius:6px;font-size:.875rem}.clear-search-btn{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px}.clear-search-btn:hover{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.filter-group select{padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:6px;font-size:.875rem;min-width:150px}.placeholder-select{color:var(--color-text-secondary)}.disabled-button{opacity:.5;cursor:not-allowed}.property-table-container{overflow-x:auto}.property-table{width:100%;border-collapse:collapse;table-layout:fixed}.property-table th:nth-child(1){width:250px}.property-table th:nth-child(2){width:200px}.property-table th:nth-child(3){width:130px}.property-table th:nth-child(4){width:120px}.property-table th:nth-child(5){width:80px}.property-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.property-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);white-space:nowrap}.property-table th.sortable{cursor:pointer;user-select:none}.property-table th.sortable:hover{background-color:var(--color-bg-hover)}.th-content{display:flex;align-items:center;gap:.5rem}.active-sort-icon{color:var(--color-primary)}.property-table tbody tr{border-bottom:1px solid var(--color-border)}.property-table tbody tr.completed-row{opacity:.5}.property-table tbody tr:hover{background-color:var(--color-bg-hover)}.property-table td{padding:var(--space-3) var(--space-4);font-size:.875rem;color:var(--color-text-primary)}.description-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wip-property-link{color:var(--color-primary);text-decoration:none;font-weight:500;cursor:pointer}.wip-property-link:hover{text-decoration:underline;color:var(--color-primary)}.no-results{text-align:center;padding:3rem 1rem;color:var(--color-text-secondary)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.pagination-info{font-size:.875rem;color:var(--color-text-secondary)}.pagination-controls{display:flex;align-items:center;gap:1rem}.page-numbers{font-size:.875rem;color:var(--color-text-primary)}.resize-handle:hover{background:#3b82f633}.resize-handle:active{background:#3b82f666}.property-table th{position:relative;user-select:none}@media (max-width: 768px){.property-list-page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.page-header h1{font-size:22px}.page-actions{width:100%;flex-direction:column}.page-actions button,.page-actions a{width:100%}.page-actions a button{width:100%;min-height:44px}.filters-row{flex-direction:column;gap:10px}.filter-group,.search-filter{min-width:100%;width:100%}.filter-group select,.input-wrapper input{min-height:44px;font-size:16px}.pagination{flex-direction:column;gap:12px;align-items:stretch;text-align:center}.pagination-controls{justify-content:center}}.wip-cards-container{display:none}@media (max-width: 768px){.property-table-container{display:none}.wip-cards-container{display:flex;flex-direction:column;gap:10px;padding:4px 0}.wip-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #0000000d}.wip-card--done{opacity:.75}.wip-card__header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px 10px;background:#1f3a5f08;border-bottom:1px solid rgba(0,0,0,.06)}.wip-card__property{font-size:14px;font-weight:700;color:var(--color-primary);text-decoration:none;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wip-card__desc{padding:8px 14px 4px;font-size:13px;color:var(--color-text-secondary);line-height:1.4}.wip-card__rows{display:flex;flex-direction:column;gap:0;padding:4px 0}.wip-card__row{display:flex;justify-content:space-between;align-items:center;padding:7px 14px;font-size:13px;border-bottom:1px solid rgba(0,0,0,.04)}.wip-card__row:last-child{border-bottom:none}.wip-card__label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#64748b}.wip-card__stage{font-size:12px;color:var(--color-text-secondary)}.wip-card__footer{display:flex;gap:8px;padding:10px 14px;border-top:1px solid rgba(0,0,0,.06);background:#f8fafcb3}.wip-card__action{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border:1px solid rgba(31,58,95,.2);border-radius:7px;background:#fff;color:var(--color-primary);font-size:13px;font-weight:600;cursor:pointer;transition:background .13s;flex:1;justify-content:center}.wip-card__action:hover{background:#1f3a5f0f}}.wip-detail-page{padding:var(--space-6)}.wip-detail-page .page-header{margin-bottom:var(--space-8)}.wip-detail-page .wip-detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);width:100%}.wip-detail-page .card-title{margin:0;padding:0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.wip-audit-loading,.wip-audit-empty{padding:var(--space-4) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.wip-audit-empty-sub{margin-top:var(--space-1);font-size:var(--font-size-xs, 12px);color:var(--color-text-secondary);opacity:.75}.wip-audit-timeline{display:flex;flex-direction:column;gap:0}.wip-audit-event{padding:var(--space-4) 0;border-bottom:1px solid var(--color-border)}.wip-audit-event:last-child{border-bottom:none}.wip-audit-event-header{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.wip-audit-action-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.wip-audit-dot{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.wip-audit-actor{font-size:var(--font-size-sm);color:var(--color-text-primary)}.wip-audit-ts{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.wip-audit-icon{flex-shrink:0}.wip-audit-icon--create,.wip-audit-icon--complete{color:var(--color-success, #16a34a)}.wip-audit-icon--reopen{color:var(--color-info, #0284c7)}.wip-audit-icon--update{color:var(--color-primary)}.wip-audit-icon--delete{color:var(--color-error, #dc2626)}.wip-audit-changes{margin-top:var(--space-2);margin-left:calc(16px + var(--space-2));display:flex;flex-direction:column;gap:4px}.wip-audit-change-row{display:flex;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;font-size:var(--font-size-sm)}.wip-audit-field-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);min-width:110px}.wip-audit-old{color:var(--color-error, #dc2626);text-decoration:line-through;opacity:.8}.wip-audit-arrow{color:var(--color-text-secondary);font-size:11px}.wip-audit-new{color:var(--color-success, #16a34a);font-weight:var(--font-weight-medium)}.wip-audit-failure{margin-top:var(--space-1);margin-left:calc(16px + var(--space-2));font-size:var(--font-size-sm);color:var(--color-error, #dc2626)}.wip-detail-page h1{margin:0 0 var(--space-2) 0}.wip-detail-page .page-subtitle{color:var(--color-text-secondary);margin:0}.wip-detail-page .detail-grid{display:flex;flex-direction:column;gap:var(--space-6)}.wip-detail-page .detail-section{display:flex;flex-direction:column}.wip-detail-page .detail-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.wip-detail-page .detail-row:last-child{border-bottom:none}.wip-detail-page .detail-item{display:flex;flex-direction:column;gap:4px;min-width:0}.wip-detail-page .detail-item.full-width{grid-column:1 / -1}.wip-detail-page .detail-label{display:block;flex:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.wip-detail-page .detail-value{flex:none;text-align:left;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);word-wrap:break-word}.wip-detail-page .property-link{color:var(--color-primary);text-decoration:none}.wip-detail-page .property-link:hover{text-decoration:underline}@media (max-width: 768px){.wip-detail-page .detail-row{grid-template-columns:1fr}}.project-flowchart{margin-top:0;padding:32px 16px 28px;background:#f8faff;border-radius:12px;border:1px solid #e8edf8;overflow-x:auto;overflow-y:visible}.flowchart-scroll{display:flex;align-items:flex-start;gap:0;min-width:max-content;padding:0 8px}.flow-step{display:flex;align-items:flex-start}.flow-arrow{display:flex;align-items:center;height:84px;padding:0 4px;flex-shrink:0;position:relative}.flow-arrow:before{content:"";display:block;width:28px;height:2px;background:#cbd5e1;border-radius:1px}.flow-arrow:after{content:"";display:block;position:absolute;right:4px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #94a3b8}.flow-column{display:flex;flex-direction:column;align-items:stretch;gap:0}.flow-node-start,.flow-node-end{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.3px;flex-shrink:0;margin-top:10px}.flow-node-start{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 4px 14px #22c55e59}.flow-node-end{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 14px #3b82f659}.flow-step:first-of-type .flow-arrow,.flow-step:last-of-type .flow-arrow{height:84px}.flow-node-stage{position:relative;background:linear-gradient(145deg,#fbbf24,#f59e0b);color:#1a1a1a;width:150px;min-height:84px;padding:14px 26px 14px 30px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #f59e0b47,0 1px 3px #00000014;border-radius:10px;border:1.5px solid rgba(255,255,255,.5);transition:background .25s,box-shadow .25s}.flow-node-stage:hover{box-shadow:0 6px 20px #f59e0b61,0 1px 3px #0000001a}.flow-node-done{background:linear-gradient(145deg,#86efac,#4ade80)!important;box-shadow:0 4px 14px #22c55e38,0 1px 3px #0000000f!important;border-color:#fff9!important}.flow-label{cursor:pointer;line-height:1.35;word-break:break-word;text-align:center;font-size:12.5px;font-weight:600}.flow-label:hover{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.flow-label-done{text-decoration:line-through;opacity:.55}.flow-check-btn{position:absolute;top:6px;left:6px;background:#ffffff8c;border:1.5px solid rgba(0,0,0,.18);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#374151;padding:0;transition:background .15s,border-color .15s,color .15s;flex-shrink:0}.flow-check-btn:hover{background:#22c55e;border-color:#16a34a;color:#fff}.flow-node-done .flow-check-btn{background:#16a34a;border-color:#15803d;color:#fff}.flow-delete-btn{position:absolute;top:6px;right:6px;background:#0000001a;border:none;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#374151;padding:0;opacity:0;transition:opacity .15s,background .15s}.flow-node-stage:hover .flow-delete-btn{opacity:1}.flow-delete-btn:hover{background:#ef444433;color:#dc2626}.flow-edit-input{width:110px;background:#fff;border:1.5px solid #d97706;border-radius:6px;padding:5px 8px;font-size:12px;text-align:center;outline:none;box-shadow:0 0 0 3px #d9770626}.flow-subtask{position:relative;display:flex;align-items:center;gap:4px;background:#fff;border:1.5px solid #fcd34d;border-radius:7px;padding:7px 22px 7px 26px;margin-top:6px;width:150px;box-sizing:border-box;font-size:11.5px;font-weight:500;color:#374151;box-shadow:0 1px 4px #f59e0b1f;transition:background .2s,border-color .2s}.flow-subtask:before{content:"";position:absolute;left:-1px;top:0;bottom:0;width:3px;background:#fbbf24;border-radius:3px 0 0 3px}.flow-subtask-done{background:#f0fdf4;border-color:#86efac}.flow-subtask-done:before{background:#4ade80}.flow-subtask-connector{display:none}.flow-check-btn-sub{position:absolute;left:5px;top:50%;transform:translateY(-50%);width:16px;height:16px;background:#f59e0b1f;border:1.5px solid #fcd34d}.flow-check-btn-sub:hover{background:#22c55e;border-color:#16a34a;color:#fff}.flow-subtask-done .flow-check-btn-sub{background:#16a34a;border-color:#15803d;color:#fff}.flow-delete-btn-sub{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:15px;height:15px;opacity:0}.flow-subtask:hover .flow-delete-btn-sub{opacity:1}.flow-sublabel{cursor:pointer;line-height:1.35;word-break:break-word;flex:1;font-size:11.5px}.flow-sublabel:hover{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}.flow-edit-input-sub{width:95px;font-size:11px;padding:3px 6px}.flow-add-subtask-btn{display:flex;align-items:center;justify-content:center;gap:4px;background:transparent;border:1.5px dashed #cbd5e1;border-radius:7px;padding:5px 10px;font-size:11px;font-weight:600;color:#94a3b8;cursor:pointer;margin-top:6px;width:150px;box-sizing:border-box;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.flow-add-subtask-btn:hover{border-color:#f59e0b;color:#d97706;background:#f59e0b0d}.flow-subtask-add-wrap{display:flex;align-items:center;gap:5px;margin-top:6px;width:150px}.flow-add-btn{display:flex;align-items:center;justify-content:center;gap:6px;background:#fff;border:2px dashed #cbd5e1;border-radius:10px;padding:0 18px;height:84px;font-size:12px;font-weight:600;color:#94a3b8;cursor:pointer;white-space:nowrap;width:130px;transition:border-color .15s,color .15s,background .15s}.flow-add-btn:hover{border-color:#f59e0b;color:#d97706;background:#f59e0b0a}.flow-add-input-wrap{display:flex;align-items:center;gap:6px;height:84px}.flow-add-input{width:130px;border:2px solid #f59e0b;border-radius:8px;padding:8px 10px;font-size:12px;outline:none;background:#fff;box-shadow:0 0 0 3px #f59e0b1f}.flow-add-input-sub{width:95px;padding:4px 7px;font-size:11px}.flow-add-confirm{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border:none;border-radius:7px;padding:6px 12px;font-size:11.5px;font-weight:700;cursor:pointer;box-shadow:0 2px 6px #f59e0b4d;white-space:nowrap}.flow-add-cancel{background:transparent;color:#94a3b8;border:1.5px solid #e2e8f0;border-radius:7px;padding:6px 10px;font-size:11.5px;cursor:pointer;white-space:nowrap}@media (max-width: 768px){.flowchart-container{overflow-x:hidden;padding:16px}.flowchart-scroll,.flowchart-steps{flex-direction:column;align-items:stretch;min-width:unset;gap:8px}}.wip-chart-page{padding:28px 32px;max-width:100%}.wip-chart-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:12px;color:var(--color-text-secondary, #64748b)}.wip-chart-loading-icon{opacity:.4}.wip-chart-header{margin-bottom:24px}.wip-chart-title-row{display:flex;align-items:center;gap:14px;margin-bottom:8px;flex-wrap:wrap}.wip-chart-icon-wrap{width:44px;height:44px;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #f59e0b4d;flex-shrink:0}.wip-chart-title{font-size:24px;font-weight:700;color:var(--color-text, #1e293b);margin:0;line-height:1.2}.wip-chart-property{font-size:13px;color:var(--color-text-secondary, #64748b);margin:2px 0 0}.wip-chart-status-badge{padding:5px 14px;border-radius:20px;font-size:12px;font-weight:700;border:1px solid;white-space:nowrap}.wip-chart-desc{font-size:14px;color:var(--color-text-secondary, #64748b);margin:0;padding-left:58px;line-height:1.5}.wip-chart-stats{display:grid;grid-template-columns:1fr 2fr;gap:16px;margin-bottom:24px}.wip-stat-card{display:flex;align-items:center;gap:14px;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-radius:12px;padding:16px 20px;box-shadow:0 1px 4px #0000000d}.wip-stat-progress{align-items:flex-start}.wip-stat-icon{flex-shrink:0;margin-top:2px}.wip-stat-icon.green{color:#22c55e}.wip-stat-icon.blue{color:#3b82f6}.wip-stat-icon.amber{color:#f59e0b}.wip-stat-value{font-size:20px;font-weight:700;color:var(--color-text, #1e293b);line-height:1}.wip-stat-label{font-size:12px;color:var(--color-text-secondary, #64748b);margin-top:3px}.wip-stat-progress-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.wip-stat-progress-row .wip-stat-value{font-size:16px}.wip-progress-bar-bg{height:8px;background:#f1f5f9;border-radius:99px;overflow:hidden;width:100%}.wip-progress-bar-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#22c55e);border-radius:99px;transition:width .4s ease}.wip-chart-body{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:24px;box-shadow:0 1px 4px #0000000d}.wip-chart-body-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:8px}.wip-chart-body-title{font-size:16px;font-weight:700;color:var(--color-text, #1e293b);margin:0}.wip-chart-body-hint{font-size:12px;color:var(--color-text-secondary, #94a3b8);margin:0}.wip-chart-body .project-flowchart{margin-top:0;background:#f8faff;border-color:#e8edf8;padding:24px 20px;min-height:160px}@media (max-width: 640px){.wip-chart-stats{grid-template-columns:1fr}.wip-chart-desc{padding-left:0}}.wip-completed-page{padding:28px 32px;max-width:100%}.wip-completed-header{margin-bottom:24px}.wip-completed-title-row{display:flex;align-items:center;gap:14px}.wip-completed-icon-wrap{width:44px;height:44px;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #22c55e4d;flex-shrink:0}.wip-completed-title{font-size:24px;font-weight:700;color:var(--color-text, #1e293b);margin:0;line-height:1.2}.wip-completed-subtitle{font-size:13px;color:var(--color-text-secondary, #64748b);margin:2px 0 0}.wip-completed-search-row{margin-bottom:24px}.wip-completed-search-wrap{position:relative;display:flex;align-items:center;max-width:420px}.wip-completed-search-icon{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.wip-completed-search{width:100%;padding:10px 36px;border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:13px;background:#fff;color:var(--color-text, #1e293b);outline:none;transition:border-color .15s,box-shadow .15s}.wip-completed-search:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a}.wip-completed-search-clear{position:absolute;right:10px;background:transparent;border:none;cursor:pointer;color:#94a3b8;display:flex;align-items:center;padding:2px}.wip-completed-search-clear:hover{color:#475569}.wip-completed-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:12px;color:var(--color-text-secondary, #64748b)}.wip-completed-loading-icon{opacity:.35}.wip-completed-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:320px;gap:12px;text-align:center;color:var(--color-text-secondary, #64748b)}.wip-completed-empty-icon{opacity:.25;color:#22c55e}.wip-completed-empty h3{font-size:18px;font-weight:600;color:var(--color-text, #1e293b);margin:0}.wip-completed-empty p{font-size:14px;margin:0 0 8px}.wip-completed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:24px}.wip-completed-card{background:#fff;border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 4px #0000000d;transition:box-shadow .2s,border-color .2s}.wip-completed-card:hover{box-shadow:0 4px 16px #00000017;border-color:#bbf7d0}.wip-completed-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.wip-completed-card-property{font-size:15px;font-weight:700;color:var(--color-text, #1e293b);line-height:1.3}.wip-completed-card-desc{font-size:13px;color:var(--color-text-secondary, #64748b);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wip-completed-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wip-completed-meta-tag{background:#f1f5f9;border-radius:6px;padding:3px 9px;font-size:11.5px;font-weight:600;color:#475569}.wip-completed-meta-person{font-size:12px;color:#64748b}.wip-completed-progress{background:#f8fafc;border-radius:8px;padding:10px 12px;border:1px solid #f1f5f9}.wip-completed-progress-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.wip-completed-progress-label{font-size:12px;color:#64748b}.wip-completed-progress-pct{font-size:13px;font-weight:700;color:#22c55e}.wip-completed-progress-bar-bg{height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.wip-completed-progress-bar-fill{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:99px;transition:width .4s ease}.wip-completed-subtask-count{font-size:11px;color:#94a3b8;margin:5px 0 0}.wip-completed-card-date{display:flex;align-items:center;gap:5px;font-size:11.5px;color:#94a3b8;margin-top:auto}.wip-completed-card-actions{display:flex;align-items:center;gap:8px;border-top:1px solid #f1f5f9;padding-top:10px;margin-top:2px}.wip-completed-action-link{flex:1;text-align:center;padding:7px 12px;font-size:12.5px;font-weight:600;color:var(--color-text-secondary, #64748b);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;text-decoration:none;transition:background .15s,color .15s}.wip-completed-action-link:hover{background:#f8fafc;color:var(--color-text, #1e293b)}.wip-completed-chart-btn{display:flex;align-items:center;gap:5px;padding:7px 12px;font-size:12.5px;font-weight:600;color:#f59e0b;background:transparent;border:1px solid #f59e0b;border-radius:8px;cursor:pointer;transition:background .15s}.wip-completed-chart-btn:hover{background:#f59e0b12}.wip-completed-pagination{display:flex;align-items:center;justify-content:center;gap:16px}.wip-completed-page-info{font-size:13px;color:var(--color-text-secondary, #64748b)}@media (max-width: 640px){.wip-completed-page{padding:20px 16px}.wip-completed-grid{grid-template-columns:1fr}}.approval-queue-page{padding:var(--space-6)}.approval-queue-page .page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.approval-queue-page .page-header h1{margin:0 0 var(--space-2) 0}.approval-queue-page .page-subtitle{color:var(--color-text-secondary);margin:0}.approval-queue-page .page-actions{display:flex;gap:var(--space-3);align-items:center}.ap-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.ap-stat-card{background:var(--color-bg-surface);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-xl);box-shadow:0 1px 3px #0000000a,0 1px 2px #00000005;padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);transition:box-shadow .2s,border-color .2s}.ap-stat-card:hover{box-shadow:0 4px 16px #00000014;border-color:#0000001a}.ap-stat-header{display:flex;align-items:center;gap:var(--space-2-5)}.ap-stat-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ap-stat-icon--pending{background:#1f3a5f1a;color:var(--color-primary)}.ap-stat-icon--urgent{background:#dc26261a;color:#dc2626}.ap-stat-icon--age{background:#f59e0b1a;color:#f59e0b}.ap-stat-icon--amount{background:#2c8c7b1a;color:var(--color-accent)}.ap-stat-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.ap-stat-value{font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.ap-stat-sub{font-size:11px;color:var(--color-text-secondary)}.aq-filters-section{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.aq-filters-row{display:flex;gap:var(--space-4);align-items:flex-start;flex-wrap:wrap}.approval-queue-page .filter-group{display:grid;grid-template-rows:20px 42px;row-gap:var(--space-2);align-content:start;min-width:130px}.approval-queue-page .filter-group label{height:20px;min-height:20px;line-height:20px;margin:0;display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);box-sizing:border-box}.approval-queue-page .search-filter{min-width:280px;flex:1}.approval-queue-page .input-wrapper{height:42px;position:relative}.approval-queue-page .input-wrapper input{width:100%;height:42px;padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;transition:all .2s;box-sizing:border-box}.approval-queue-page .input-wrapper input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.approval-queue-page .input-wrapper input::placeholder{color:var(--color-text-disabled)}.approval-queue-page .search-input-wrapper input{padding-right:var(--space-8)}.approval-queue-page .clear-search-btn{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;padding:0;display:flex;align-items:center;color:var(--color-text-secondary);cursor:pointer}.approval-queue-page .clear-search-btn:hover{color:var(--color-text-primary)}.approval-queue-page .filter-group select,.approval-queue-page .filter-group .register-filter-input{height:42px;min-height:42px;padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-surface);outline:none;cursor:pointer;transition:all .2s;box-sizing:border-box;width:100%}.approval-queue-page .filter-group select:focus,.approval-queue-page .filter-group .register-filter-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1f3a5f1a}.approval-queue-page .filter-group select.placeholder-select{color:var(--color-text-disabled)}.aq-amount-filter{min-width:110px}.aq-clear-group{min-width:auto}.aq-tabs-bar{display:flex;gap:0;padding:0 var(--space-6);border-bottom:1px solid var(--color-border)}.aq-tab{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.aq-tab:hover{color:var(--color-text-primary)}.aq-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.aq-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#1f3a5f14;color:var(--color-text-secondary);font-size:11px;font-weight:600;line-height:1}.aq-tab-count--active{background:#1f3a5f1f;color:var(--color-primary)}.approval-queue-table-wrapper{overflow-x:auto;width:100%}.approval-queue-table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed}.approval-queue-table thead{background-color:var(--color-bg-app);border-bottom:2px solid var(--color-border)}.approval-queue-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-queue-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-base);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aq-row{transition:background-color .15s}.aq-row:hover{background-color:var(--color-bg-hover)}.aq-row--urgent{background-color:#dc262608}.aq-row--urgent:hover{background-color:#dc26260f}.aq-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.aq-link:hover{text-decoration:underline}.aq-amount{font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold)}.aq-age{font-variant-numeric:tabular-nums;font-weight:500}.aq-age--high{color:#dc2626;font-weight:600}.aq-age--medium{color:#f59e0b}.aq-age--low{color:var(--color-text-secondary)}.aq-th-sortable{cursor:pointer;user-select:none;transition:background-color .15s}.aq-th-sortable:hover{background-color:#1f3a5f0a}.aq-th-sorted{background-color:#1f3a5f0f}.th-content{display:flex;align-items:center;gap:var(--space-2);padding-right:var(--space-2)}.active-sort-icon{color:var(--color-primary);opacity:1;flex-shrink:0}.sort-icon-dim{color:var(--color-text-secondary);opacity:0;transition:opacity .15s;flex-shrink:0}.aq-th-sortable:hover .sort-icon-dim{opacity:.4}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;user-select:none;background:transparent;z-index:10}.resize-handle:hover{background:#1f3a5f26}.resize-handle:active{background:#1f3a5f4d}.table-actions{display:flex;gap:var(--space-2);align-items:center}.no-results{padding:var(--space-10) var(--space-6);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.no-results svg{margin-bottom:var(--space-2)}.no-results h3{margin:0;color:var(--color-text-primary);font-size:18px;font-weight:700}.no-results p{margin:0;color:var(--color-text-secondary);max-width:380px;font-size:var(--font-size-sm);line-height:1.6}.aq-cards-container{display:none}@media (max-width: 768px){.approval-queue-page{padding:16px}.approval-queue-page .page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.approval-queue-page .page-header h1{font-size:22px}.approval-queue-page .page-actions{width:100%;flex-direction:column}.ap-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.ap-stat-value{font-size:22px}.approval-queue-table-wrapper{display:none}.aq-cards-container{display:flex;flex-direction:column;gap:12px;padding:12px var(--space-4)}.aq-filters-section{padding:16px}.aq-filters-row{flex-direction:column;gap:10px}.approval-queue-page .filter-group{min-width:100%;width:100%}.approval-queue-page .search-filter{min-width:100%}.approval-queue-page .filter-group{grid-template-rows:20px 44px}.approval-queue-page .filter-group select,.approval-queue-page .filter-group .register-filter-input{height:44px;min-height:44px;font-size:16px}.approval-queue-page .input-wrapper,.approval-queue-page .input-wrapper input{height:44px;min-height:44px}.aq-tabs-bar{padding:0 12px;overflow-x:auto}.aq-tab{padding:var(--space-3) var(--space-3);font-size:var(--font-size-sm)}.aq-card{border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface);overflow:hidden}.aq-card--urgent{border-left:3px solid #dc2626}.aq-card__header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#1f3a5f08;border-bottom:1px solid var(--color-border);gap:10px}.aq-card__property{font-size:15px;font-weight:600;color:var(--color-text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aq-card__amount{font-size:16px;font-weight:700;color:var(--color-primary);font-variant-numeric:tabular-nums;flex-shrink:0}.aq-card__meta{padding:10px 14px;display:flex;flex-direction:column;gap:6px}.aq-card__row{display:flex;gap:8px;font-size:13px;color:var(--color-text-primary);align-items:baseline}.aq-card__label{color:var(--color-text-secondary);font-size:12px;font-weight:500;min-width:80px;flex-shrink:0}.aq-card__desc{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.aq-card__footer{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-top:1px solid var(--color-border);gap:10px;flex-wrap:wrap}.aq-card__actions{display:flex;gap:8px}}.approval-completed-page{padding:28px 32px;max-width:100%}.approval-completed-header{margin-bottom:24px}.approval-completed-title-row{display:flex;align-items:center;gap:14px}.approval-completed-icon-wrap{width:44px;height:44px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #3b82f64d;flex-shrink:0}.approval-completed-title{font-size:24px;font-weight:700;color:var(--color-text, #1e293b);margin:0;line-height:1.2}.approval-completed-subtitle{font-size:13px;color:var(--color-text-secondary, #64748b);margin:2px 0 0}.approval-completed-filters{display:flex;gap:16px;margin-bottom:24px;align-items:center;flex-wrap:wrap}.approval-completed-search-wrap{position:relative;display:flex;align-items:center;flex:1;max-width:420px;min-width:280px}.approval-completed-search-icon{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.approval-completed-search{width:100%;padding:10px 36px;border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:13px;background:#fff;color:var(--color-text, #1e293b);outline:none;transition:border-color .15s,box-shadow .15s}.approval-completed-search:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.approval-completed-search-clear{position:absolute;right:10px;background:transparent;border:none;cursor:pointer;color:#94a3b8;display:flex;align-items:center;padding:2px}.approval-completed-search-clear:hover{color:#475569}.approval-completed-status-select{padding:10px 14px;border:1px solid var(--color-border, #e2e8f0);border-radius:10px;font-size:13px;background:#fff;color:var(--color-text, #1e293b);cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s;min-width:140px}.approval-completed-status-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.approval-completed-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:12px;color:var(--color-text-secondary, #64748b)}.approval-completed-loading-icon{opacity:.35}.approval-completed-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:320px;gap:12px;text-align:center;color:var(--color-text-secondary, #64748b)}.approval-completed-empty-icon{opacity:.25;color:#3b82f6}.approval-completed-empty h3{font-size:18px;font-weight:600;color:var(--color-text, #1e293b);margin:0}.approval-completed-empty p{font-size:14px;margin:0 0 8px}.approval-completed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;margin-bottom:24px}.approval-completed-card{background:#fff;border:1px solid var(--color-border, #e2e8f0);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 4px #0000000d;transition:box-shadow .2s,border-color .2s}.approval-completed-card:hover{box-shadow:0 4px 16px #00000017;border-color:#93c5fd}.approval-completed-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.approval-txn-link{font-family:Courier New,monospace;font-size:14px;font-weight:700;color:#3b82f6;text-decoration:none;transition:color .15s}.approval-txn-link:hover{color:#2563eb;text-decoration:underline}.approval-completed-card-property{font-size:15px;font-weight:700;color:var(--color-text, #1e293b);line-height:1.3}.approval-completed-card-category{font-size:12.5px;font-weight:600;color:#64748b;background:#f1f5f9;padding:3px 9px;border-radius:6px;display:inline-block;align-self:flex-start}.approval-completed-card-desc{font-size:13px;color:var(--color-text-secondary, #64748b);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.approval-completed-card-amount{font-size:18px;font-weight:700;color:#16a34a;font-variant-numeric:tabular-nums}.approval-completed-card-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#64748b}.approval-meta-label{font-weight:600;min-width:90px}.approval-rejection-reason{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;font-size:12px;color:#dc2626;margin-top:4px}.approval-completed-card-actions{display:flex;align-items:center;gap:8px;border-top:1px solid #f1f5f9;padding-top:12px;margin-top:4px}.approval-completed-view-btn{flex:1;padding:8px 12px;font-size:12.5px;font-weight:600;color:var(--color-text-secondary, #64748b);background:transparent;border:1px solid var(--color-border, #e2e8f0);border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.approval-completed-view-btn:hover{background:#f8fafc;color:var(--color-text, #1e293b)}.approval-completed-flow-btn{display:flex;align-items:center;gap:5px;padding:8px 12px;font-size:12.5px;font-weight:600;color:#3b82f6;background:transparent;border:1px solid #3b82f6;border-radius:8px;cursor:pointer;transition:background .15s}.approval-completed-flow-btn:hover{background:#3b82f612}.approval-completed-pagination{display:flex;align-items:center;justify-content:center;gap:16px}.approval-completed-page-info{font-size:13px;color:var(--color-text-secondary, #64748b)}@media (max-width: 640px){.approval-completed-page{padding:20px 16px}.approval-completed-grid{grid-template-columns:1fr}.approval-completed-filters{flex-direction:column;align-items:stretch}.approval-completed-search-wrap{max-width:100%}.approval-completed-status-select{width:100%}}.batch-payment-page{padding:var(--space-6);max-width:1600px;margin:0 auto}.batch-payment-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-4);background-color:var(--color-bg-app);border-radius:var(--radius-md);flex-wrap:wrap}.toolbar-summary{flex:1;display:flex;justify-content:center}.selection-summary{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background-color:var(--color-bg-primary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.summary-label{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.summary-count{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.summary-divider{color:var(--color-text-secondary)}.summary-amount{font-weight:var(--font-weight-bold);color:var(--color-primary);font-size:var(--font-size-lg)}.batch-payment-table{width:100%;border-collapse:collapse;table-layout:fixed}.batch-payment-table th,.batch-payment-table td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.batch-payment-table th{background-color:var(--color-bg-app);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.batch-payment-table tbody tr{transition:background-color .15s ease}.batch-payment-table tbody tr:hover{background-color:var(--color-bg-app)}.batch-payment-table th:nth-child(1),.batch-payment-table td:nth-child(1){width:40px;text-align:center}.batch-payment-table th:nth-child(2),.batch-payment-table td:nth-child(2){width:120px}.batch-payment-table th:nth-child(3),.batch-payment-table td:nth-child(3){width:100px}.batch-payment-table th:nth-child(4),.batch-payment-table td:nth-child(4){width:140px}.batch-payment-table th:nth-child(5),.batch-payment-table td:nth-child(5){width:200px}.batch-payment-table th:nth-child(6),.batch-payment-table td:nth-child(6){width:140px}.batch-payment-table th:nth-child(7),.batch-payment-table td:nth-child(7){width:110px}.batch-payment-table th:nth-child(8),.batch-payment-table td:nth-child(8){width:110px}.batch-payment-table th:nth-child(9),.batch-payment-table td:nth-child(9){width:140px}.batch-payment-table th:nth-child(10),.batch-payment-table td:nth-child(10){width:100px}.batch-payment-table input[type=checkbox]{cursor:pointer;width:16px;height:16px}.bp-cards-container{display:none}@media (max-width: 768px){.batch-payment-page{padding:16px}.page-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.batch-payment-toolbar{flex-direction:column;gap:12px;align-items:stretch}.search-box{width:100%}.search-box input{min-height:44px;font-size:16px}.toolbar-actions button{width:100%;min-height:44px}.batch-payment-table{display:none}.bp-cards-container{display:flex;flex-direction:column;gap:12px;margin-top:16px}.bp-card{border:1px solid var(--color-border);border-radius:10px;background:var(--color-bg-surface);overflow:hidden;cursor:pointer;transition:box-shadow .15s}.bp-card--selected{border-color:var(--color-primary);box-shadow:0 0 0 2px #1f3a5f1f}.bp-card__header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#1f3a5f08;border-bottom:1px solid var(--color-border);gap:10px}.bp-card__title-row{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.bp-card__checkbox{width:18px;height:18px;flex-shrink:0;accent-color:var(--color-primary)}.bp-card__property{font-size:15px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bp-card__amount{font-size:16px;font-weight:700;color:var(--color-primary);font-variant-numeric:tabular-nums;flex-shrink:0}.bp-card__meta{padding:10px 14px;display:flex;flex-direction:column;gap:6px}.bp-card__row{display:flex;gap:8px;font-size:13px;color:var(--color-text-primary);align-items:baseline}.bp-card__label{color:var(--color-text-secondary);font-size:12px;font-weight:500;min-width:90px;flex-shrink:0}.bp-card__desc{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.bp-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.bp-modal{background:#fff;border-radius:12px;padding:24px;max-width:480px;width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.bp-modal-title{font-size:18px;font-weight:700;margin:0 0 16px}.bp-modal-summary{background:var(--color-bg-secondary, #f8fafc);border-radius:8px;padding:16px;margin-bottom:20px}.bp-modal-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.bp-modal-label{font-size:13px;color:var(--color-text-secondary)}.bp-modal-value{font-weight:600}.bp-modal-value--primary{color:var(--color-primary);font-size:var(--font-size-lg)}.bp-modal-fields{display:flex;flex-direction:column;gap:16px}.bp-modal-field{display:flex;flex-direction:column;gap:6px}.bp-modal-field-label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.bp-modal-required{color:var(--color-error)}.bp-modal-input{width:100%;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);box-sizing:border-box}.bp-modal-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #1f3a5f1f}.bp-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}@media (max-width: 768px){.batch-payment-page{padding:16px}.batch-payment-toolbar{flex-direction:column;gap:10px;align-items:stretch}.batch-payment-toolbar>*{width:100%}.batch-payment-table-wrapper,.batch-payment-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.batch-payment-table{min-width:540px}.batch-payment-layout{flex-direction:column!important;gap:16px}.batch-payment-sidebar{width:100%!important}}.fh-page{display:flex;flex-direction:column;min-height:100%}.fh-header{padding:28px var(--space-6) 0}.fh-title{font-size:24px;font-weight:700;margin:0 0 var(--space-1) 0;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.fh-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.fh-tabs-strip{display:flex;align-items:center;gap:4px;padding:16px var(--space-6) 0;border-bottom:1px solid var(--color-border)}.fh-tab{position:relative;display:inline-flex;align-items:center;padding:8px 18px;font-size:13px;font-weight:500;color:var(--color-text-secondary);text-decoration:none;border-radius:8px 8px 0 0;border:1px solid transparent;border-bottom:none;margin-bottom:-1px;transition:color .15s ease,background-color .15s ease;white-space:nowrap}.fh-tab:hover{color:var(--color-primary);background-color:#1f3a5f0a}.fh-tab--active{color:var(--color-primary);font-weight:600;background:var(--color-bg-card, #ffffff);border-color:var(--color-border);border-bottom-color:var(--color-bg-card, #ffffff);z-index:1}.fh-content{flex:1}.fh-content .reports-page,.fh-content .transaction-list-page,.fh-content .batch-payment-page{padding-top:var(--space-5)}.fh-content .reports-page>.page-header,.fh-content .transaction-list-page>.page-header,.fh-content .batch-payment-page>.page-header{display:none}@media (max-width: 768px){.fh-header{padding:20px 16px 0}.fh-title{font-size:20px}.fh-tabs-strip{padding:12px 16px 0;gap:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.fh-tabs-strip::-webkit-scrollbar{display:none}.fh-tab{padding:8px 14px;font-size:12px;flex-shrink:0}}.global-search{position:relative;flex:1;max-width:420px}.search-input-wrapper{position:relative;display:flex;align-items:center;gap:14px;padding:8px 14px;background-color:#00000005;border:none;border-radius:20px;height:36px;transition:background-color .15s ease}.search-input-wrapper:hover{background-color:#0000000a}.search-input-wrapper:focus-within{background-color:#0000000d}.app-header .search-input-wrapper{border:1px solid var(--color-border);background-color:var(--color-bg-section, #eef2f6)}.app-header .search-input-wrapper:hover{background-color:#e8ecf2}.app-header .search-input-wrapper:focus-within{background-color:#fff;border-color:var(--color-border)}.search-icon{flex-shrink:0;color:var(--color-text-secondary);pointer-events:none;display:flex;align-items:center}.search-input{border:none!important;outline:none!important;box-shadow:none!important;-webkit-appearance:none;background:none;flex:1;font-size:14px;color:var(--color-text-primary);line-height:1.4;min-width:0;padding:0;caret-color:var(--color-primary)}.search-input::placeholder{color:var(--color-text-secondary);font-size:14px;opacity:.7}.search-input:focus{outline:none;box-shadow:none}.search-input:focus::placeholder{opacity:.5}.search-loader{color:var(--color-text-secondary);animation:spin .8s linear infinite;flex-shrink:0;opacity:.6}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;max-height:480px;overflow-y:auto;background:var(--color-bg-surface);border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-lg);box-shadow:0 0 0 1px #00000005,0 4px 8px #0000000a,0 12px 24px #00000014;z-index:1000;animation:slideDown .2s cubic-bezier(.16,1,.3,1);will-change:transform,opacity}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.search-dropdown::-webkit-scrollbar{width:8px}.search-dropdown::-webkit-scrollbar-track{background:transparent}.search-dropdown::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:20px}.search-dropdown::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-secondary)}.search-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-6);color:var(--color-text-secondary);gap:var(--space-3);text-align:center}.search-state .spinner{animation:spin .8s linear infinite}.search-hint{font-size:var(--font-size-sm);margin:0;color:var(--color-text-tertiary)}.search-section{padding:var(--space-2) 0}.search-section:not(:last-child){border-bottom:1px solid var(--color-border)}.search-section-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.search-section-header svg{color:var(--color-text-tertiary)}.result-count{margin-left:auto;padding:2px 6px;background-color:var(--color-bg-secondary);border-radius:20px;font-size:11px;font-weight:var(--font-weight-medium)}.clear-recent-btn{margin-left:auto;display:flex;align-items:center;justify-content:center;padding:4px;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.clear-recent-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover)}.search-result{display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:none;border:none;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background-color .12s ease;border-radius:0;position:relative}.search-result:hover{background-color:#00000005}.search-result.selected{background-color:#1f3a5f0f}.search-result:active{background-color:#1f3a5f14}.result-icon{margin-top:2px;color:var(--color-text-secondary);flex-shrink:0}.result-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.result-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-subtitle{font-size:var(--font-size-xs);color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-metadata{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:2px}.search-highlight{background-color:#ffd5004d;color:inherit;font-weight:var(--font-weight-semibold);padding:0 2px;border-radius:2px}.recent-search{font-size:var(--font-size-sm)}.recent-search .result-title{font-weight:var(--font-weight-normal)}@media (max-width: 768px){.global-search{max-width:100%}.search-dropdown{max-height:60vh;left:-16px;right:-16px;width:calc(100vw - 32px)}.search-result{padding:var(--space-3-5) var(--space-3)}.result-title{white-space:normal;line-height:1.4}.result-subtitle{white-space:normal;line-height:1.3}}@media (prefers-contrast: high){.search-highlight{background-color:#ff0;color:#000}.search-result.selected{outline:2px solid var(--color-primary);outline-offset:-2px}}@media (prefers-reduced-motion: reduce){.search-dropdown,.search-loader,.search-state .spinner{animation:none}}.app-header{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 var(--space-8);background:#ffffffeb;backdrop-filter:blur(12px) saturate(180%);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 1px 2px #00000008;position:sticky;top:0;z-index:var(--z-sticky)}.header-left{display:flex;align-items:center;gap:var(--space-5);flex:1}.app-title{font-size:26px;font-weight:700;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.03em;line-height:1.2}.header-right{display:flex;align-items:center;gap:var(--space-3)}.header-icon-btn{position:relative;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2-5);background:none;color:var(--color-text-secondary);border-radius:var(--radius-lg);transition:all .15s ease}.header-icon-btn:hover{background-color:var(--color-bg-app);color:var(--color-primary);transform:translateY(-1px)}.header-icon-btn .badge{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background-color:var(--color-error);color:#fff;font-size:11px;font-weight:var(--font-weight-semibold);border-radius:9px}.user-btn{padding:var(--space-2) var(--space-3)}.user-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.notifications-menu,.notifications-btn{position:relative}.notification-badge{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:11px;font-weight:var(--font-weight-bold);border-radius:9px;border:2px solid white;box-shadow:0 2px 4px #ef444466}.notifications-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 24px #00000026,0 0 0 1px #0000000d;width:380px;max-height:500px;z-index:1000;animation:fadeIn .15s ease;overflow:hidden;display:flex;flex-direction:column}.notifications-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:#fff}.notifications-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.notifications-count{font-size:var(--font-size-sm);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.notifications-list{overflow-y:auto;max-height:400px;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;background:#fff}.notifications-list::-webkit-scrollbar{width:6px}.notifications-list::-webkit-scrollbar-track{background:transparent}.notifications-list::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:3px}.notification-item{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-subtle);cursor:pointer;transition:background-color .15s ease;background:#fff}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--color-bg-hover)}.notification-item:active{transform:scale(.98)}.notification-item.high .notification-icon{background-color:#ef44441a}.notification-item.medium .notification-icon{background-color:#fbbf241a}.notification-item.low .notification-icon{background-color:#3b82f61a}.alert-severity-icon.high{color:#ef4444}.alert-severity-icon.medium{color:#f59e0b}.alert-severity-icon.low{color:#3b82f6}.notification-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background-color:var(--color-bg-app)}.notification-content{flex:1;min-width:0;position:relative}.notification-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color .15s}.notification-item:hover .notification-title{color:var(--color-primary)}.notification-property{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-date{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.notification-dismiss-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-tertiary);cursor:pointer;transition:all .15s ease;opacity:0}.notification-item:hover .notification-dismiss-btn{opacity:1}.notification-dismiss-btn:hover{background-color:#ef44441a;color:#ef4444}.no-notifications{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-5);gap:var(--space-3);color:var(--color-text-tertiary);background:#fff}.no-notifications p{margin:0;font-size:var(--font-size-sm)}.notifications-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);background:#fff}.view-all-btn{width:100%;padding:var(--space-2-5) var(--space-4);background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .15s ease}.view-all-btn:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.user-menu{position:relative}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;min-width:180px;z-index:1000;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:none;border:none;color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:background-color .15s ease}.dropdown-item:hover{background-color:var(--color-bg-hover)}.dropdown-item:first-child{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.dropdown-user-info{padding:12px 16px 10px;border-bottom:1px solid var(--color-border)}.dropdown-user-name{font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.dropdown-user-email{font-size:.75rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.dropdown-item:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.mobile-menu-btn{display:none;padding:var(--space-2);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all .2s}.mobile-menu-btn:hover{background-color:var(--color-bg-app);color:var(--color-primary)}.mobile-search-btn,.mobile-search-close{display:none}.hdr-company-wrap{display:flex;align-items:center;gap:var(--space-2)}.hdr-company-name{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.hdr-company-select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-sm);padding:4px 8px;cursor:pointer;max-width:200px}.hdr-company-select:focus{outline:2px solid var(--color-primary);outline-offset:1px}@media (max-width: 768px){.app-header{height:56px;padding:0 16px}.header-left{gap:12px}.app-title{font-size:20px}.global-search{display:none}.header-right{gap:8px}.header-icon-btn{min-width:44px;min-height:44px;padding:8px}.user-name{display:none}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.user-dropdown{right:-8px}.notifications-dropdown{width:calc(100vw - 32px);right:-8px;max-height:420px}.notifications-list{max-height:300px}.notification-item{padding:var(--space-3) var(--space-4)}.mobile-search-btn{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px}.app-header--mobile-search .mobile-menu-btn,.app-header--mobile-search .app-title,.app-header--mobile-search .header-right{display:none}.app-header--mobile-search .header-left{flex:1;gap:8px}.app-header--mobile-search .global-search{display:flex;flex:1;max-width:none}.mobile-search-close{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;flex-shrink:0;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all .15s ease}.mobile-search-close:hover{background-color:var(--color-bg-app);color:var(--color-primary)}}.help-overlay{position:fixed;inset:0;background:#0000;z-index:1100;pointer-events:none;transition:background .25s ease}.help-overlay.open{background:#00000059;pointer-events:all}.help-drawer{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:92vw;background:#fff;border-left:1px solid rgba(0,0,0,.08);box-shadow:-4px 0 24px #0000001a;z-index:1101;display:flex;flex-direction:column;transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);overflow:hidden}.help-drawer.open{transform:translate(0)}.help-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid rgba(0,0,0,.07);background:linear-gradient(135deg,#1f3a5f,#2c4a74);flex-shrink:0}.help-drawer-title-group{display:flex;align-items:flex-start;gap:12px}.help-drawer-title-icon{color:#fffc;margin-top:2px;flex-shrink:0}.help-drawer-title{font-size:15px;font-weight:700;color:#fff;line-height:1.3}.help-drawer-subtitle{font-size:12px;color:#ffffffa6;margin-top:2px}.help-drawer-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:#ffffff1f;border:none;border-radius:6px;color:#fffc;cursor:pointer;transition:background .15s;flex-shrink:0}.help-drawer-close:hover{background:#ffffff38;color:#fff}.help-drawer-body{flex:1;overflow-y:auto;padding:8px 0 24px}.help-section{padding:16px 20px 4px}.help-section+.help-section{border-top:1px solid rgba(0,0,0,.06);margin-top:8px}.help-section-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary, #64748b);margin-bottom:10px}.help-guide-list{display:flex;flex-direction:column;gap:2px}.help-guide-row{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border-radius:8px;background:none;border:none;cursor:pointer;text-align:left;transition:background .13s}.help-guide-row:hover{background:#1f3a5f0d}.help-guide-row:hover .help-guide-arrow{transform:translate(2px)}.help-guide-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#1f3a5f12;color:var(--color-primary, #1F3A5F);flex-shrink:0}.help-guide-text{flex:1;min-width:0}.help-guide-label{font-size:13px;font-weight:600;color:var(--color-text-primary, #1e293b);line-height:1.3}.help-guide-desc{font-size:12px;color:var(--color-text-secondary, #64748b);margin-top:1px;line-height:1.4}.help-guide-arrow{color:var(--color-text-secondary, #64748b);flex-shrink:0;transition:transform .15s ease}.help-action-list{display:flex;flex-direction:column;gap:2px}.help-action-row{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:7px;background:none;border:none;cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text-primary, #1e293b);text-align:left;width:100%;transition:background .13s,color .13s}.help-action-row:hover{background:#2c8c7b12;color:var(--color-accent, #2C8C7B)}.help-action-icon{color:var(--color-accent, #2C8C7B);flex-shrink:0}.help-docs-card{background:#1f3a5f0a;border:1px solid rgba(31,58,95,.1);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.help-docs-icon{color:var(--color-primary, #1F3A5F);opacity:.7}.help-docs-heading{font-size:13px;font-weight:600;color:var(--color-text-primary, #1e293b);margin-bottom:4px}.help-docs-body{font-size:12px;color:var(--color-text-secondary, #64748b);line-height:1.5}.help-docs-link{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--color-primary, #1F3A5F);color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s;align-self:flex-start}.help-docs-link:hover{opacity:.85}.sidebar{width:260px;background:#fafbfc;border-right:1px solid rgba(0,0,0,.06);flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;transition:width .2s cubic-bezier(.4,0,.2,1);will-change:width;transform:translateZ(0);backface-visibility:hidden}.sidebar.collapsed{width:70px}.sidebar.collapsed .sidebar-link .sidebar-label-wrapper{opacity:0;pointer-events:none;max-width:0}.sidebar-nav{display:flex;flex-direction:column;padding:var(--space-6) var(--space-4);gap:var(--space-2);flex:1;overflow-y:auto}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all .15s ease;position:relative;cursor:pointer}.drag-handle{display:flex;align-items:center;opacity:0;transition:opacity .2s ease;cursor:grab;width:18px;flex-shrink:0;position:absolute;left:4px}.drag-handle:active{cursor:grabbing}.sidebar-link:hover .drag-handle{opacity:1}.sidebar.collapsed .drag-handle{display:none}.sidebar-link:hover{background-color:#1f3a5f0d;color:var(--color-text-primary);text-decoration:none;transform:translate(2px)}.sidebar-link.active{background:#1f3a5f14;color:var(--color-primary);font-weight:600}.sidebar-link.active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:linear-gradient(180deg,var(--color-primary),var(--color-accent));border-radius:0 2px 2px 0}.sidebar-link svg{flex-shrink:0}.sidebar-controls{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid rgba(0,0,0,.06)}.company-logo{flex:1;display:flex;align-items:center;justify-content:flex-start;min-width:0}.company-logo img{max-width:100%;max-height:40px;object-fit:contain;display:block}.sidebar.collapsed .company-logo{display:none}.sidebar-control-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.sidebar-control-btn:hover{background-color:#1f3a5f14;color:var(--color-primary)}.sidebar-control-btn .rotate{transform:rotate(180deg)}.sidebar.collapsed .sidebar-controls{justify-content:center;padding:var(--space-4) var(--space-2)}.sidebar.collapsed .sidebar-link{justify-content:flex-start;padding:var(--space-3) var(--space-2)}.sidebar-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px}.icon-badge{position:absolute;top:-6px;right:-8px;display:flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:var(--color-error);color:#fff;border-radius:9px;font-size:11px;font-weight:var(--font-weight-semibold);line-height:1}.icon-count-badge{position:absolute;top:-8px;right:-6px;display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;background:#ef4444;color:#fff;border-radius:8px;font-size:10px;font-weight:600;line-height:1;box-shadow:0 1px 3px #0003;z-index:1}.sidebar.collapsed .icon-count-badge{display:flex}.sidebar-label-wrapper{display:flex;align-items:center;justify-content:space-between;flex:1;gap:var(--space-2);overflow:hidden;max-width:200px;white-space:nowrap;opacity:1;transition:max-width .2s cubic-bezier(.4,0,.2,1),opacity .15s ease}.label-badge{display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--color-error);color:#fff;border-radius:10px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:1}.sidebar-divider{height:1px;background:#0000000f;margin:var(--space-4) 0}@media (max-width: 768px){.sidebar{position:fixed;left:-260px;top:0;bottom:0;z-index:1000;width:260px;transition:left .3s ease}.sidebar.mobile-open{left:0;box-shadow:2px 0 8px #00000026}.mobile-menu-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:999}.mobile-menu-overlay.active{display:block}}.sidebar-help-widget{display:flex;align-items:center;gap:10px;margin:0 10px 10px;padding:11px 13px;background:#1f3a5f0d;border:1px solid rgba(31,58,95,.1);border-radius:10px;cursor:pointer;text-align:left;width:calc(100% - 20px);transition:background .15s,border-color .15s;flex-shrink:0}.sidebar-help-widget:hover{background:#1f3a5f17;border-color:#1f3a5f33}.sidebar-help-widget.collapsed{justify-content:center;padding:10px}.sidebar-help-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:var(--color-primary, #1F3A5F);color:#fff;flex-shrink:0}.sidebar-help-text{display:flex;flex-direction:column;gap:1px;min-width:0}.sidebar-help-heading{font-size:12px;font-weight:700;color:var(--color-text-primary);white-space:nowrap}.sidebar-help-sub{font-size:11px;color:var(--color-accent, #2C8C7B);font-weight:500;white-space:nowrap}.app-layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-content{display:flex;flex:1;overflow:hidden}.main-content{flex:1;overflow-y:auto;background-color:var(--color-bg-app);padding:var(--space-6)}@media (max-width: 768px){.main-content{padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}}.cu-page{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6);max-width:100%}.cu-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.cu-header-left{display:flex;flex-direction:column;gap:var(--space-1)}.cu-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.cu-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.cu-header-actions{display:flex;align-items:center;gap:var(--space-3)}.cu-refresh-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background .15s,border-color .15s}.cu-refresh-btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong)}.cu-refresh-btn:disabled{opacity:.55;cursor:not-allowed}.cu-company-selector{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.cu-company-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.cu-company-select{padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;min-width:180px}.cu-filters{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.cu-search{flex:1;min-width:200px;max-width:320px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-sm)}.cu-search:focus{outline:none;border-color:var(--color-primary)}.cu-filter-select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer}.cu-result-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-left:auto;white-space:nowrap}.cu-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.cu-section-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.cu-section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:var(--space-2)}.cu-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px var(--space-2);border-radius:999px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:1}.cu-badge--count{background:var(--color-bg-app);color:var(--color-text-secondary);border:1px solid var(--color-border);min-width:22px}.cu-badge--active{background:#d1fae5;color:#065f46}.cu-badge--suspended{background:#fef3c7;color:#92400e}.cu-badge--inactive{background:#f3f4f6;color:#6b7280}.cu-badge--owner{background:#ede9fe;color:#5b21b6}.cu-badge--admin{background:#dbeafe;color:#1e40af}.cu-badge--member{background:#f0fdf4;color:#166534}.cu-badge--pending{background:#fef9c3;color:#713f12}.cu-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.cu-table{width:100%;border-collapse:collapse;min-width:700px}.cu-table thead{background:var(--color-bg-app)}.cu-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid var(--color-border)}.cu-table td{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-primary);border-bottom:1px solid var(--color-border);vertical-align:middle}.cu-table tbody tr:hover{background:var(--color-bg-hover)}.cu-table tbody tr:last-child td{border-bottom:none}.cu-name-cell{display:flex;flex-direction:column;gap:2px}.cu-name-primary{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.cu-name-secondary{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.cu-self-badge{display:inline-block;margin-left:var(--space-1);padding:1px 6px;border-radius:999px;font-size:10px;font-weight:var(--font-weight-semibold);background:var(--color-primary);color:#fff;vertical-align:middle}.cu-text-muted{color:var(--color-text-secondary);font-style:italic}.cu-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-10) var(--space-6);text-align:center}.cu-state-icon{width:40px;height:40px;color:var(--color-text-secondary)}.cu-state-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0}.cu-state-msg{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;max-width:360px}.cu-state-btn{padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity .15s}.cu-state-btn:hover:not(:disabled){opacity:.88}.cu-state-btn:disabled{opacity:.55;cursor:not-allowed}.cu-skeleton-row td{padding:var(--space-3) var(--space-4)}.cu-skeleton-cell{height:14px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg-hover) 50%,var(--color-border) 75%);background-size:200% 100%;animation:cu-shimmer 1.4s infinite}@keyframes cu-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.biz-route-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);min-height:320px;padding:var(--space-8);text-align:center}.biz-route-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.biz-route-msg{font-size:var(--font-size-base);color:var(--color-text-primary);margin:0;max-width:420px}.biz-route-msg--error{color:var(--color-danger, #dc2626)}.biz-route-sub{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;max-width:360px}.biz-route-btn{padding:var(--space-2) var(--space-5);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity .15s}.biz-route-btn:hover:not(:disabled){opacity:.88}.biz-route-btn:disabled{opacity:.55;cursor:not-allowed}.biz-route-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:biz-spin .75s linear infinite}@keyframes biz-spin{to{transform:rotate(360deg)}}.biz-route-company-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);width:100%;max-width:380px}.biz-route-company-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.biz-route-company-btn:hover{border-color:var(--color-primary);background:var(--color-bg-hover)}.biz-route-company-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.biz-route-company-role{font-size:var(--font-size-sm);color:var(--color-text-secondary)}@media (max-width: 640px){.cu-page{padding:var(--space-4)}.cu-header{flex-direction:column;align-items:stretch}.cu-header-actions{justify-content:flex-end}.cu-filters{flex-direction:column;align-items:stretch}.cu-search{max-width:100%}.cu-result-count{margin-left:0}}.cu-actions-cell{width:48px;padding:var(--space-2) var(--space-3)!important;text-align:center}.cu-actions-menu{position:relative;display:inline-block}.cu-actions-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);font-size:18px;line-height:1;letter-spacing:1px;cursor:pointer;transition:background .12s,border-color .12s,color .12s}.cu-actions-btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border);color:var(--color-text-primary)}.cu-actions-btn:disabled{opacity:.4;cursor:not-allowed}.cu-actions-dropdown{position:absolute;right:0;top:calc(100% + 4px);min-width:148px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001f;z-index:50;overflow:hidden}.cu-actions-item{display:block;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;text-align:left;font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;transition:background .1s}.cu-actions-item:hover{background:var(--color-bg-hover)}.cu-actions-item--destructive{color:var(--color-danger, #dc2626)}.cu-actions-item--destructive:hover{background:#fef2f2}.cu-page-error{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);font-size:var(--font-size-sm);color:#991b1b}.cu-page-error-dismiss{flex-shrink:0;background:transparent;border:none;color:#991b1b;font-size:14px;cursor:pointer;padding:0 var(--space-1);opacity:.7}.cu-page-error-dismiss:hover{opacity:1}.cu-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--space-4)}.cu-modal-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 16px 48px #0000002e;width:100%;max-width:440px;max-height:calc(100vh - var(--space-8));overflow-y:auto;display:flex;flex-direction:column}.cu-modal-header{padding:var(--space-5) var(--space-5) 0;display:flex;flex-direction:column;gap:var(--space-1)}.cu-modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.cu-modal-title--destructive{color:var(--color-danger, #dc2626)}.cu-modal-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.cu-modal-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.cu-modal-info{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.cu-modal-warning{font-size:var(--font-size-sm);color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);padding:var(--space-3);margin:0;line-height:1.5}.cu-modal-warning--strong{color:#991b1b;background:#fef2f2;border-color:#fecaca}.cu-modal-error{font-size:var(--font-size-sm);color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);padding:var(--space-3);margin:0}.cu-field-warning{font-size:var(--font-size-sm);color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-top:var(--space-1);margin-bottom:0}@media (prefers-color-scheme: dark){.cu-field-warning{color:#fcd34d;background:#1c1505;border-color:#78350f}}.cu-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-2)}.cu-field{display:flex;flex-direction:column;gap:var(--space-1)}.cu-field-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.cu-field-input,.cu-field-select,.cu-field-textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-app);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:inherit;transition:border-color .12s;box-sizing:border-box}.cu-field-input:focus,.cu-field-select:focus,.cu-field-textarea:focus{outline:none;border-color:var(--color-primary)}.cu-field-input:disabled,.cu-field-select:disabled,.cu-field-textarea:disabled{opacity:.55;cursor:not-allowed}.cu-field-textarea{resize:vertical;min-height:80px}.cu-field-readonly{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.cu-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity .15s,background .15s;white-space:nowrap;border:1px solid transparent}.cu-btn:disabled{opacity:.55;cursor:not-allowed}.cu-btn--primary{background:var(--color-primary);color:#fff}.cu-btn--primary:hover:not(:disabled){opacity:.88}.cu-btn--ghost{background:transparent;border-color:var(--color-border);color:var(--color-text-primary)}.cu-btn--ghost:hover:not(:disabled){background:var(--color-bg-hover)}.cu-btn--danger{background:var(--color-danger, #dc2626);color:#fff}.cu-btn--danger:hover:not(:disabled){opacity:.88}.spin{animation:cu-spin .75s linear infinite}@keyframes cu-spin{to{transform:rotate(360deg)}}
