/*! tailwindcss v4.1.17 | 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-border-style:solid;--tw-leading:initial;--tw-font-weight: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-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-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-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--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-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--leading-normal:1.5;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:oklch(var(--ring)/.5)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.top-1\/2,.top-\[50\%\]{top:50%}.right-2{right:calc(var(--spacing)*2)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-\[50\%\]{left:50%}.z-\[1050\]{z-index:1050}.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-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing)*-2)}.my-1{margin-block:calc(var(--spacing)*1)}.mt-4{margin-top:calc(var(--spacing)*4)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-4{margin-left:calc(var(--spacing)*4)}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.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}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.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-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-px{height:1px}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-\[240px\]{min-height:240px}.w-4{width:calc(var(--spacing)*4)}.w-20{width:calc(var(--spacing)*20)}.w-\[100px\]{width:100px}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.caption-bottom{caption-side:bottom}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;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-y-1\/2{--tw-translate-y: -50% ;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)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-default{cursor:default}.touch-none{touch-action:none}.resize{resize:both}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-3{grid-template-columns:repeat(3,minmax(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}.place-content-center{place-content:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.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)}.gap-7{gap:calc(var(--spacing)*7)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[4px\]{border-radius:4px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--destructive)30%,transparent)}}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-transparent{border-color:#0000}.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,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.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{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.fill-primary{fill:var(--primary)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-6{padding:calc(var(--spacing)*6)}.p-\[3px\]{padding:3px}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-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-1{padding-top:calc(var(--spacing)*1)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-1\.5{padding-bottom:calc(var(--spacing)*1.5)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-\[1\.5rem\]{--tw-leading:1.5rem;line-height:1.5rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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)}.whitespace-nowrap{white-space:nowrap}.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-white{color:var(--color-white)}.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}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-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-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-input{--tw-ring-color:var(--input)}.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)}}.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}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.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-\[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-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-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-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.running{animation-play-state:running}.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}.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] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *){opacity:.5}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing)*-2)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.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)}.last\:mt-0:last-child{margin-top:calc(var(--spacing)*0)}@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\/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\/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\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.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)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.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\/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\: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)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[state\=checked\]\:border-primary:has([data-state=checked]){border-color:var(--primary)}.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:color-mix(in oklab,var(--primary)5%,transparent)}}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing)*3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:calc(var(--radius) - 2px)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing)*1.5)}.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-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)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing)*1.5)}.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-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-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(2*var(--spacing)*-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(2*var(--spacing))}.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(2*var(--spacing)*-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(2*var(--spacing))}.data-\[size\=default\]\:h-7[data-size=default]{height:calc(var(--spacing)*7)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing)*8)}:is(.\*\:data-\[slot\=card\]\:bg-gradient-to-t>*)[data-slot=card]{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}:is(.\*\:data-\[slot\=card\]\:from-primary\/5>*)[data-slot=card]{--tw-gradient-from:var(--primary)}@supports (color:color-mix(in lab,red,red)){:is(.\*\:data-\[slot\=card\]\:from-primary\/5>*)[data-slot=card]{--tw-gradient-from:color-mix(in oklab,var(--primary)5%,transparent)}}:is(.\*\:data-\[slot\=card\]\:from-primary\/5>*)[data-slot=card]{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}:is(.\*\:data-\[slot\=card\]\:to-card>*)[data-slot=card]{--tw-gradient-to:var(--card);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}:is(.\*\:data-\[slot\=card\]\:shadow-xs>*)[data-slot=card]{--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-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing)*3)}: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-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--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)}.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-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\]\: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\=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\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing)*-1)}@media(min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}@media(min-width:48rem){.md\:gap-6{gap:calc(var(--spacing)*6)}.md\:py-6{padding-block:calc(var(--spacing)*6)}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@container card (min-width:250px){.\@\[250px\]\/card\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}}@container field-group (min-width:28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}}@container main (min-width:36rem){.\@xl\/main\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@container main (min-width:64rem){.\@5xl\/main\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(prefers-color-scheme:dark){.dark\:border-input{border-color:var(--input)}.dark\:bg-destructive\/60{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-input\/30{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:text-muted-foreground{color:var(--muted-foreground)}@media(hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:has-data-\[state\=checked\]\:bg-primary\/10:has([data-state=checked]){background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.dark\:has-data-\[state\=checked\]\:bg-primary\/10:has([data-state=checked]){background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}:is(.dark\:\*\:data-\[slot\=card\]\:bg-card>*)[data-slot=card]{background-color:var(--card)}.dark\:data-\[state\=active\]\:border-input[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&_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\(\[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)}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:data-\[slot\=field\]\:p-4>[data-slot=field]{padding:calc(var(--spacing)*4)}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing)*4)}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}@container field-group (min-width:28rem){.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing)*-1.5)}@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{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(90% 0 0);--input:oklch(90% 0 0);--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);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--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(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 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(70.4% .191 22.216);--border:0 0% 100%/10%;--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--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(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}html,body{margin:0;padding:0}:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400}.page{background-color:#fff}.page.page-header{background-color:#fff;margin:36px auto 0;padding:20px}body{min-width:320px;min-height:100vh;margin:0}h1{margin:0;font-size:1.2rem;font-weight:600;line-height:1.1}h3{margin:0;font-size:1.3rem;font-weight:600;line-height:1.1}h4{color:#414141;margin:0;font-size:.8rem;font-weight:600;line-height:.9}ul{margin:0;padding:0;list-style:none}ul li{margin:0;padding:5px 0 0;font-size:.8rem;list-style:none}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{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-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@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))}}.interface-panel{background:radial-gradient(100% 100% at 50.05% 0%,#f3f6fb,#efecf4);border-width:0px 1.2px 1.2px 0px;border-style:solid;border-color:#efecf4;border-radius:28px;padding:10px}.interface-panel-header{padding:10px;border-bottom:1px solid #e5e7eb}.interface-panel-item{margin:10px}.interface-info{display:flex;flex-direction:column;gap:10px}.interface-info-splitter{padding-top:16px;border-top:none}.interface-info-splitter h4{padding-left:16px}.interface-info-item+.interface-info-splitter{margin-top:10px;border-top:1px solid #e5e7eb}.interface-info-content{flex:1;overflow-y:auto;min-height:0}.interface-info-item{margin:16px;gap:16px;display:flex;flex-direction:column;align-items:stretch}.interface-panel-light{background:#fffffff2;box-shadow:0 162px 64.8px #1e2f4603,0 91.2px 54px #1e2f460d,0 40.8px 40.8px #1e2f4617,0 9.6px 21.6px #1e2f461a,inset 0 -1.2px #1e2f4640,inset 0 1.2px #fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;overflow:hidden}.base-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.base-modal-content{background:#fff;border-radius:8px;padding:24px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026;animation:slideUp .2s ease-out;position:relative}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.base-modal--small{max-width:400px}.base-modal--medium{max-width:500px}.base-modal--large{max-width:700px}.base-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.base-modal-title{margin:0;font-size:1rem;font-weight:600;color:#333}.base-modal-close{background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#666;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;flex-shrink:0}.base-modal-close:hover{background:#f5f5f5;color:#333}.base-modal-close:active{background:#e9e9e9}.base-modal-body{color:#333}.base-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:16px;border-top:1px solid #e0e0e0}.base-modal-error{background:#fee;color:#c33;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;border:1px solid #fcc}.suggestions{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.suggestion-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:4px 8px;font-size:12px;cursor:pointer;transition:all .2s ease;color:#495057}.suggestion-btn:hover{background:#e9ecef;border-color:#adb5bd}.suggestion-btn:active{background:#dee2e6;transform:translateY(1px)}@media(max-width:768px){.base-modal-content{width:95%;padding:20px;max-height:95vh}.base-modal--small,.base-modal--medium,.base-modal--large{max-width:100%}}.language-selector{position:relative;display:inline-block}.language-button{display:flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:14px;color:#333;transition:all .2s ease;min-width:60px}.language-button:hover{background-color:#007bff1a}.language-button:focus{outline:none;background-color:#007bff26}.flag{font-size:16px;line-height:1}.language-name{font-weight:500;flex:1;text-align:left}.arrow{font-size:10px;color:#666;transition:transform .2s ease;opacity:0}.language-button:hover .arrow{opacity:1}.arrow.up{transform:rotate(180deg)}.language-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;margin-top:4px;overflow:hidden;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.language-option{display:flex;align-items:center;justify-content:center;width:100%;padding:8px 12px;background:#fff;border:none;cursor:pointer;font-size:14px;color:#333;text-align:center;transition:background-color .2s ease}.language-option:hover{background-color:#f8f9fa}.language-option.active{background-color:#e3f2fd;color:#007bff;font-weight:500}.language-option:first-child{border-radius:6px 6px 0 0}.language-option:last-child{border-radius:0 0 6px 6px}@media(max-width:768px){.language-button{min-width:50px;padding:4px 8px}.flag{font-size:14px}}.breadcrumbs{display:flex;align-items:center;color:#666;margin:0;padding:0}.breadcrumb-item{text-decoration:none;color:#666;transition:color .2s ease}.breadcrumb-item:hover{color:#333}.breadcrumb-item.active{color:#333;font-weight:500}.breadcrumb-separator{margin:0 8px;color:#999}#header{background:#fff;border-bottom:1px solid #e0e0e0;padding:0;position:fixed;left:0;top:0;right:0;font-size:.88rem;z-index:5}.read-only-indicator{margin-right:15px;padding:4px 8px;background:#f0f8ff;border:1px solid #b3d9ff;border-radius:4px;font-size:.8rem}.read-only-text{color:#06c;font-weight:500}#header .header-content{margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:36px}#header .header-left{display:flex;align-items:center;gap:20px}#header .header-right{display:flex;align-items:center;gap:15px}#header .header-auth{display:flex;align-items:center}#header .user-info{display:flex;align-items:center;gap:15px}#header .loading-indicator{display:flex;align-items:center;color:#666}#header .loading-indicator span{opacity:.7}#header .auth-buttons{display:flex;align-items:center;gap:15px}#header .auth-action{cursor:pointer;color:#007bff;text-decoration:none;transition:color .2s ease}#header .auth-action:hover{color:#0056b3;text-decoration:underline}.static-content{margin:1rem 0}.hero-section{text-align:center;padding:60px 20px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;margin:40px 0}.hero-section h1{font-size:3rem;margin-bottom:20px;color:#2c3e50;font-weight:700}.hero-description{font-size:1.3rem;color:#34495e;margin-bottom:50px;line-height:1.6;max-width:800px;margin-left:auto;margin-right:auto}.features-section,.modules-section{margin:50px 0}.features-section h2,.modules-section h2{font-size:2rem;color:#2c3e50;margin-bottom:30px;text-align:center}.features-grid,.modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:30px}.feature-card,.module-card{background:#fff;padding:30px;border-radius:12px;box-shadow:0 4px 6px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover,.module-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.feature-card h3,.module-card h3{font-size:1.4rem;color:#2c3e50;margin-bottom:15px;font-weight:600}.feature-card p,.module-card p{color:#7f8c8d;line-height:1.6;margin:0}.cta-section{margin-top:50px;padding:30px;background:#3498db1a;border-radius:12px;border:2px solid #3498db}.cta-section p{font-size:1.2rem;color:#2c3e50;margin:0;font-weight:500}@media(max-width:768px){.hero-section{padding:40px 15px}.hero-section h1{font-size:2.5rem}.hero-description{font-size:1.1rem}.features-grid,.modules-grid{grid-template-columns:1fr;gap:20px}.feature-card,.module-card{padding:20px}}.welcome{text-align:center;padding:1rem}.welcome h1{font-size:2.5rem;margin-bottom:20px;color:#333}.welcome p{font-size:1.2rem;color:#666;margin-bottom:40px}.auth-buttons{display:flex;gap:15px;justify-content:center}.user-welcome{margin-bottom:40px;padding-bottom:20px;border-bottom:1px solid #e0e0e0}.user-welcome h1{font-size:2rem;color:#333;margin:0}.projects-section,.companies-section{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.section-header h2{font-size:1.5rem;color:#333;margin:0}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state p{font-size:1.1rem;margin-bottom:20px}.project-group,.company-links{margin-bottom:30px}.project-group h3{font-size:1.2rem;color:#555;margin-bottom:15px;padding-bottom:8px;border-bottom:1px solid #eee}.project-links{display:flex;flex-direction:column;gap:8px}.project-link{color:#007bff;text-decoration:none;font-size:1rem;padding:8px 0;transition:color .2s ease;display:inline-block;max-width:fit-content}.project-link:hover{color:#0056b3}.company-links{display:flex;flex-direction:column;gap:8px}.company-link{color:#007bff;text-decoration:none;font-size:1rem;padding:8px 0;transition:color .2s ease}.company-link:hover{color:#0056b3}@media(max-width:768px){.home-page{padding:15px}.welcome h1{font-size:2rem}.section-header{flex-direction:column;gap:15px;align-items:flex-start}}.error-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.error-page-content{text-align:center;max-width:500px;width:100%}.error-actions{display:flex;gap:10px;justify-content:center;align-items:center;margin-top:20px}.error-message{color:#e74c3c;font-size:14px;padding:12px 16px;background-color:#fdf2f2;border:1px solid #fecaca;border-radius:6px;margin-bottom:20px}.project-section{margin-top:20px;padding-top:20px;border-top:1px solid #e0e0e0}.project-section:first-child{margin-top:0;padding-top:0;border-top:none}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{font-size:1.3rem;color:#333;margin:0}.project-section h3,.project-section h2{font-size:1.3rem;color:#333;margin:0 0 20px}.project-name-section{margin-bottom:20px}.name-display{display:flex;align-items:center;gap:16px}.project-name{font-size:1.2rem;font-weight:500;color:#333;flex:1}.name-edit-form{display:flex;flex-direction:column;gap:12px}.name-input{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1.1rem;transition:border-color .2s ease}.name-input:focus{outline:none;border-color:#007bff}.name-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.name-actions{display:flex;gap:12px}.modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:20px}.module-item{padding:16px;border:1px solid #e0e0e0;border-radius:8px;background-color:#f9f9f9}.module-item label{display:flex;align-items:center;gap:8px;font-weight:500;color:#333;cursor:pointer}.project-info p{margin:10px 0;font-size:1.1rem;color:#666}.project-info p:first-child{margin-top:0}.project-info p:last-child{margin-bottom:0}.suggestions{margin-top:8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.suggestion-label{font-size:12px;color:#666;font-weight:500}.suggestion-btn{background:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:4px 8px;font-size:12px;color:#333;cursor:pointer;transition:all .2s ease}.suggestion-btn:hover{background:#e9e9e9;border-color:#ccc}.suggestion-btn:active{background:#ddd;transform:translateY(1px)}.generators-list{display:flex;flex-direction:column;gap:12px}.generator-item{padding:12px 0;border-bottom:1px solid #f0f0f0}.generator-item:last-child{border-bottom:none}.generator-link{color:#007bff;text-decoration:none;font-size:1rem;font-weight:500;transition:color .2s ease}.generator-link:hover{color:#0056b3}.no-generators{text-align:center;padding:40px 20px;color:#666}.no-generators p{margin:0;font-size:16px}.fonts-list{display:flex;flex-direction:column;gap:12px}.font-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #eee;border-radius:6px;background:#fafafa}.font-info{flex:1}.font-name{font-weight:600;color:#333;margin-bottom:4px}.font-details{display:flex;gap:16px;font-size:12px;color:#666}.font-details span{background:#e9ecef;padding:2px 6px;border-radius:4px}.font-actions{display:flex;gap:8px;align-items:center}.no-fonts{text-align:center;padding:40px 20px;color:#666;font-style:italic}@media(max-width:768px){.project-page{padding:20px 15px}.project-header{flex-direction:column;gap:20px;align-items:flex-start}.project-header h1{font-size:2rem}}.font-edit-modal{max-width:500px;width:90%}.font-edit-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #e0e0e0}.font-edit-modal .modal-header h3{margin:0;font-size:1.2rem;color:#333}.font-edit-modal .modal-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.font-edit-modal .modal-close-btn:hover{background-color:#f0f0f0}.font-edit-modal .suggestions{margin-top:8px;display:flex;flex-wrap:wrap;gap:5px;align-items:center}.font-edit-modal .suggestion-label{font-size:12px;color:#666;margin-right:8px}.font-edit-modal .suggestion-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:3px;padding:4px 8px;font-size:12px;cursor:pointer;transition:all .2s;color:#495057}.font-edit-modal .suggestion-btn:hover{background:#e9ecef;border-color:#adb5bd}.font-edit-modal .error-message{background:#f8d7da;color:#721c24;padding:10px;border-radius:4px;margin-bottom:15px;border:1px solid #f5c6cb}.font-edit-modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:15px;border-top:1px solid #e0e0e0}.key-editing{display:flex;align-items:center;gap:15px;margin-bottom:15px}.key-editing input{flex:1;padding:8px;border:1px solid var(--border-color);border-radius:4px}.key-display{display:flex;align-items:center;gap:15px;margin-bottom:15px}.key-display h4{margin:0;flex:1;font-size:16px}.position-color-row{display:flex;gap:15px;align-items:flex-end}.position-color-row .position-inputs{flex:0 0 auto}.position-color-row .color-input{flex:0 0 50%}.position-inputs{display:flex;gap:15px}.position-input{display:flex;flex-direction:column;gap:5px;width:80px}.position-input label{font-size:14px;font-weight:500;color:#495057}.alignment-icons{display:flex;align-items:center;border:1px solid #e9ecef;border-radius:6px;overflow:hidden}.alignment-icons .alignment-icon{display:flex;align-items:center;justify-content:center;width:36px;height:29px;border:none;border-radius:0;cursor:pointer;transition:all .2s ease;color:#6c757d;background:transparent;position:relative;margin:0}.alignment-icon svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.alignment-icon:hover{background:#f8f9fa;color:#4c6ef5}.alignment-icon input[type=radio]{display:none}.alignment-icon input[type=radio]:checked+svg{color:#fff}.alignment-icon:has(input[type=radio]:checked){background:#4c6ef5;color:#fff}.anchor-button-container{position:relative}.anchor-button{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:#495057;transition:all .2s ease;min-width:120px;text-align:left}.anchor-button:hover{border-color:#4c6ef5;background:#fff;box-shadow:0 2px 8px #007bff26}.anchor-popup{position:absolute;top:0;left:0;z-index:1000;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 10px 25px #0000001a;padding:0;width:350px}.anchor-popup-header{padding:12px 16px 8px;font-size:14px;font-weight:600;color:#495057;border-bottom:1px solid #e9ecef;background:#f8f9fa;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.anchor-popup-close{background:none;border:none;font-size:18px;color:#6c757d;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;line-height:1}.anchor-popup-close:hover{background:#e9ecef;color:#495057}.anchor-option{display:flex;align-items:center;gap:15px;padding:8px 12px;cursor:pointer;font-size:14px;color:#495057;border-radius:6px;transition:all .2s ease;margin:2px 0}.anchor-option:hover{background:#f8f9fa;color:#007bff}.anchor-option input[type=checkbox]{margin:0 8px 0 0;cursor:pointer;width:16px;height:16px;accent-color:#007bff}.anchor-option span{flex:1;font-weight:400}.checkbox-label{display:flex;align-items:center;gap:15px;cursor:pointer;font-size:14px;color:#495057;padding:8px 0}.checkbox-label input[type=checkbox]{margin:0;cursor:pointer;width:16px;height:16px;accent-color:#007bff}.checkbox-label span{flex:1;font-weight:400}.anchor-section{margin-bottom:12px;padding:0 16px}.anchor-section:last-child{margin-bottom:16px}.anchor-section-title{font-size:12px;font-weight:600;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid #e9ecef}.size-color-row,.font-size-alignment-row{display:flex;gap:15px;align-items:flex-end}.font-size-alignment-row .size-input{flex:0 0 auto;width:80px}.font-size-alignment-row .font-input{flex:1}.font-size-alignment-row .baseline-input{flex:0 0 50%}.size-input{flex:0 0 auto;display:flex;flex-direction:column;gap:5px;width:80px}.color-input{display:flex;flex-direction:column;gap:5px;position:relative}.size-input label,.color-input label{font-size:14px;font-weight:500;color:#495057}.font-baseline-row{display:flex;gap:15px;align-items:flex-end}.font-input{flex:1;display:flex;flex-direction:column;gap:5px}.baseline-input{display:flex;flex-direction:column;gap:5px}.font-input label,.baseline-input label{font-size:14px;font-weight:500;color:#495057}.font-input select,.baseline-input select{font-size:14px;max-width:none}.anchor-x-input,.anchor-y-input{flex:1}.align-input,.point-input,.alignment-select,.point-select{flex:0 0 50%;display:flex;flex-direction:column;gap:5px}.anchor-x-input label,.anchor-y-input label,.align-input label,.point-input label,.alignment-select label,.point-select label{font-size:14px;font-weight:500;color:#495057}.anchor-row select{font-size:14px;max-width:none}.align-input select,.point-input select,.alignment-select select,.point-select select{font-size:14px}.number-input{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;outline:none;transition:border-color .2s;width:100%;box-sizing:border-box}.number-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.public-checkbox{display:flex;align-items:center;-webkit-user-select:none;user-select:none;font-size:14px;color:#333}.public-checkbox>div{transform:scale(.875);transform-origin:center}.color-picker-component{background:#fff;padding:9px}.color-picker-component-tabs{display:flex;border-bottom:1px solid #e0e0e0;margin-bottom:10px}.color-picker-component-tab{flex:1;padding:5px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:13px;font-weight:500;color:#666;transition:all .2s ease}.color-picker-component-tab:hover{background:#f8f9fa;color:#333}.color-picker-component-tab.active{border-bottom-color:#4a89dc;color:#4a89dc;background:#f8f9fa}.color-picker-component-content{min-height:120px}.color-picker-component-slider-group{display:flex;flex-direction:column;gap:12px}.color-picker-component-slider-item{display:flex;align-items:center;gap:10px;width:100%}.color-picker-component-slider-item label{min-width:20px;font-size:13px;font-weight:500;color:#333;flex-shrink:0}.color-picker-component input[type=range].color-picker-component-slider{flex:1;height:8px;border-radius:4px;background:#e0e0e0;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0;width:auto;min-width:auto;max-width:none;border:none;box-shadow:none}.color-picker-component input[type=range].color-picker-component-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#4a89dc;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.color-picker-component input[type=range].color-picker-component-slider::-webkit-slider-track{height:8px;border-radius:4px;background:#e0e0e0}.color-picker-component input[type=range].color-picker-component-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#4a89dc;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.color-picker-component input[type=range].color-picker-component-slider::-moz-range-track{height:8px;border-radius:4px;background:#e0e0e0}.color-picker-component input[type=text].color-picker-component-number{width:60px;padding:4px 6px;border:1px solid #ddd;border-radius:4px;font-size:12px;text-align:center;flex-shrink:0}.color-picker-component input[type=text].color-picker-component-number:focus{outline:none;border-color:#4a89dc;box-shadow:0 0 0 2px #4a89dc33}.color-picker-component-hex-input{display:flex;align-items:center;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #f0f0f0}.color-picker-component-hex-input label{font-size:13px;font-weight:500;color:#333;min-width:30px}.color-picker-component input[type=text].color-picker-component-hex-field{flex:1;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:12px;font-family:monospace;text-transform:uppercase}.color-picker-component input[type=text].color-picker-component-hex-field:focus{outline:none;border-color:#4a89dc;box-shadow:0 0 0 2px #4a89dc33}.color-picker-component-slider-item:nth-child(1) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:#0ff}.color-picker-component-slider-item:nth-child(2) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:#f0f}.color-picker-component-slider-item:nth-child(3) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:#ff0}.color-picker-component-slider-item:nth-child(4) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:#000}.color-picker-component-rgb-panel .color-picker-component-slider-item:nth-child(1) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:red}.color-picker-component-rgb-panel .color-picker-component-slider-item:nth-child(2) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:#0f0}.color-picker-component-rgb-panel .color-picker-component-slider-item:nth-child(3) input[type=range].color-picker-component-slider::-webkit-slider-thumb{background:#00f}.color-input{display:flex;flex-direction:column;gap:5px;position:relative;width:fit-content}.color-picker-popup{position:absolute;top:100%;left:0;z-index:1000;background:#fff;border:1px solid #e9ecef;border-radius:12px;box-shadow:0 10px 25px #0000001a;padding:10px;margin-top:8px;min-width:300px}.color-button-content{display:flex;align-items:center;gap:15px}.color-preview{width:14px;height:14px;border-radius:3px;border:1px solid #e9ecef;flex-shrink:0}.color-input label{font-size:14px;font-weight:500;color:#495057}.anchor-point-selector{display:flex;flex-direction:column;gap:8px}.anchor-point-label{font-size:14px;font-weight:500;color:#495057}.anchor-point-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;width:fit-content;background-color:#dbdde1;border:1px solid #dbdde1}.anchor-point-button{width:36px;height:36px;padding:0;position:relative;transition:all .2s}.anchor-point-button.selected{background-color:#007bff;color:#fff;border-color:#007bff}.anchor-point-button.is-default{opacity:.7}.radio-option-with-content{display:flex;flex-direction:column;gap:6px;flex:1;position:relative}.elements-edit-button{background:#f8f9fa;border:1px solid #ced4da;border-radius:4px;padding:4px 12px;font-size:14px;cursor:pointer;color:#495057;transition:all .2s;min-width:36px}.elements-edit-button:hover{background:#e9ecef;border-color:#007bff;color:#007bff}.anchor-elements-popup{position:absolute;z-index:1000;background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 10px 25px #00000026;min-width:280px;max-width:400px;margin-top:4px;top:100%;left:0}.popup-header{padding:12px 16px;border-bottom:1px solid #e9ecef;background:#f8f9fa;border-radius:8px 8px 0 0;font-size:14px;font-weight:600;color:#495057}.popup-content{max-height:300px;overflow-y:auto;padding:8px 0}.popup-empty{padding:16px;text-align:center;color:#6c757d;font-size:14px}.elements-list{display:flex;flex-direction:column}.element-option{display:flex;align-items:center;gap:10px;padding:8px 16px;cursor:pointer;transition:background .2s}.element-option:hover{background:#f8f9fa}.element-option span{font-size:14px;color:#495057;flex:1}.popup-actions{display:flex;gap:8px;justify-content:flex-end;padding:12px 16px;border-top:1px solid #e9ecef;background:#f8f9fa;border-radius:0 0 8px 8px}.alignment-select,.point-select{display:flex;flex-direction:column;gap:5px;flex:1;min-width:150px}.alignment-select label,.point-select label{font-size:14px;font-weight:500;color:#495057;display:flex;flex-direction:column;gap:5px}.alignment-select select,.point-select select{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;outline:none;transition:border-color .2s;background-color:#fff;cursor:pointer}.alignment-select select:hover,.point-select select:hover{border-color:#007bff}.alignment-select select:focus,.point-select select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.text-frames-panel{display:flex;flex-direction:column;gap:20px}.add-text-frame{display:flex;gap:10px;margin-bottom:15px}.add-text-frame input{flex:1;padding:10px 15px;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);font-size:14px}.text-frames-list{display:flex;flex-direction:column;gap:15px}.section-label{display:block;margin-bottom:8px;font-weight:600;color:#495057;font-size:14px}.path-type-select{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;outline:none;transition:border-color .2s}.path-type-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.position-size-row{display:flex;gap:15px;align-items:flex-end}.position-inputs,.size-inputs{display:flex;gap:15px}.position-input,.size-input{display:flex;flex-direction:column;gap:5px;width:80px}.position-input label,.size-input label{font-size:14px;font-weight:500;color:#495057}.position-controls,.size-controls,.number-input{display:none}.anchor-row{display:flex;gap:15px;align-items:flex-end}.anchor-input{display:flex;flex-direction:column;gap:5px;width:120px}.anchor-input label{font-size:14px;font-weight:500;color:#495057}.pdf-path-input{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;outline:none;transition:border-color .2s}.pdf-path-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.paths-panel{padding:16px;border-bottom:1px solid #e9ecef}.panel-header{margin-bottom:16px}.panel-header h3{margin:0 0 12px;font-size:16px;font-weight:600;color:#495057}.add-path-controls{display:flex;gap:8px;margin-bottom:12px}.path-key-input{flex:1;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;outline:none;transition:border-color .2s}.path-key-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.add-path-btn{padding:8px 16px;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s}.add-path-btn:hover{background-color:#0056b3}.paths-list{display:flex;flex-direction:column;gap:8px}.path-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #e9ecef;border-radius:6px;cursor:pointer;transition:all .2s;background-color:#f8f9fa}.path-item:hover{background-color:#e9ecef;border-color:#ced4da}.path-item.selected{background-color:#e3f2fd;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.path-info{display:flex;flex-direction:column;gap:4px}.path-key{font-weight:600;color:#495057;font-size:14px}.path-type{font-size:12px;color:#6c757d;text-transform:capitalize}.delete-path-btn{background:none;border:none;color:#dc3545;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s}.delete-path-btn:hover{background-color:#f8d7da}.empty-state{text-align:center;padding:24px;color:#6c757d}.empty-state p{margin:4px 0;font-size:14px}.jp-visual-editor{overflow:visible}.jp-visual-editor .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.jp-visual-editor .header-controls{display:flex;align-items:center;gap:12px;overflow:visible}.jp-visual-editor .background-color-picker{position:relative;overflow:visible}.jp-visual-editor .color-button-content{display:flex;align-items:center;gap:8px}.jp-visual-editor .color-preview{width:16px;height:16px;border-radius:2px;border:1px solid #ddd}.jp-visual-editor .header h3{margin:0;font-size:16px;font-weight:600;color:#333}.jp-visual-editor .document-size{font-size:12px;color:#666;background:#f8f9fa;padding:4px 8px;border-radius:4px}.jp-visual-editor .description{margin:0 0 16px;font-size:14px;color:#666;line-height:1.4}.jp-visual-editor .canvas-container{margin-top:16px;margin-bottom:16px;display:flex;justify-content:center}.jp-visual-editor .canvas-wrapper{position:relative;display:inline-block}.jp-visual-editor .coordinate-axes{position:absolute;top:0;left:0;z-index:10}.jp-visual-editor .axis{position:absolute;background:#333}.jp-visual-editor .x-axis{width:20px;height:2px;background:#dc3545;top:0;left:0}.jp-visual-editor .y-axis{width:2px;height:20px;background:#007bff;top:0;left:0}.jp-visual-editor .arrow-head{position:absolute;width:0;height:0;border-style:solid}.jp-visual-editor .x-axis .arrow-head{top:-3px;right:-4px;border-width:4px 0 4px 6px;border-color:transparent transparent transparent #dc3545}.jp-visual-editor .y-axis .arrow-head{bottom:-4px;left:-3px;border-width:6px 4px 0 4px;border-color:#007bff transparent transparent transparent}.jp-visual-editor .controls-section{margin-bottom:16px}.jp-visual-editor .controls-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.jp-visual-editor .selection-indicator{display:flex;align-items:center;gap:8px;margin-left:auto}.jp-visual-editor .selection-badge{font-size:12px;padding:4px 10px;background:#007bff;color:#fff;border-radius:12px;font-weight:500}.jp-visual-editor .display-label{font-size:14px;font-weight:500;color:#333;white-space:nowrap}.jp-visual-editor .display-select{padding:6px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;min-width:200px}.jp-visual-editor .display-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.jp-visual-editor .checkbox-group{display:flex;align-items:center;gap:8px}.jp-visual-editor .checkbox-label{font-size:14px;color:#333;cursor:pointer;-webkit-user-select:none;user-select:none}.jp-visual-editor .divider{margin:16px 0;border:none;border-top:1px solid #e9ecef}.component-editor{background:#fff;border-radius:16px;box-shadow:var(--shadow-sm);padding:16px}.component-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.component-name{margin:0;font-size:16px;font-weight:600;color:#333;cursor:pointer;-webkit-user-select:none;user-select:none}.component-name:hover{color:#007bff}.component-name-input{margin:0;padding:2px 6px;font-size:16px;font-weight:600;color:#333;background:#fff;border:2px solid #007bff;border-radius:4px;outline:none;font-family:inherit}.component-delete{background:none;border:none;font-size:24px;line-height:1;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.component-delete:hover{background:#fee;color:#dc3545}.component-canvas-container{display:flex;justify-content:center}.component-canvas{display:block}.config-json-viewer{background:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow-sm);padding:20px;width:100%;display:flex;flex-direction:column}.config-json-viewer h3{margin:0 0 15px;font-size:18px;color:var(--text-primary)}.json-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.json-header h3{margin:0;color:var(--text-primary)}.config-textarea{width:100%;height:200px;max-height:200px;margin-bottom:15px;padding:15px;font-family:monospace;font-size:13px;line-height:1.4;border:1px solid var(--border-color);border-radius:var(--border-radius-sm);resize:none;background:var(--bg-code);color:var(--text-code)}.preview-column{flex:1;max-width:600px;padding:20px;background:#f8f9fa;border-left:1px solid #dee2e6;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.preview-controls{display:flex;gap:10px;margin-bottom:15px}.preview-item{background:#fff}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.preview-header h4{margin:0;font-size:16px;color:#333}.preview-actions{display:flex;gap:8px;align-items:center}.fill-data-btn{background:#17a2b8;color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.fill-data-btn:hover{background:#138496}.data-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.data-form{background:#fff;padding:20px;border-radius:8px;box-shadow:0 4px 12px #0000004d;max-width:400px;width:90%;max-height:80vh;overflow-y:auto}.data-form h5{margin:0 0 20px;color:#333;font-size:18px}.data-form-buttons{display:flex;gap:10px;margin-top:20px}.save-data-btn{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.save-data-btn:hover{background:#218838}.cancel-data-btn{background:#6c757d;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.cancel-data-btn:hover{background:#5a6268}.preview-content{position:relative;box-shadow:0 2px 4px #0000001a}.data-preview{margin-top:10px;padding:10px;background:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.data-preview h6{margin:0 0 8px;font-size:14px;color:#495057}.data-item{font-size:12px;margin-bottom:4px;color:#6c757d}.data-item:last-child{margin-bottom:0}.remove-preview-btn{background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.remove-preview-btn:hover{background:#c82333}.preview-image{display:block;width:100%!important;border:1px solid #eee}.preview-placeholder{padding:40px;text-align:center;color:#6c757d;background:#f1f1f1;margin-top:10px}.preview-image-error{opacity:.5;filter:grayscale(50%)}.preview-image-container{position:relative;display:block;width:100%}.preview-error{margin-top:10px;padding:10px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:12px;line-height:1.4}.preview-error-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#dc3545d9;color:#ffffffd9;padding:15px 20px;border-radius:8px;font-size:14px;line-height:1.4;text-align:center;max-width:80%;box-shadow:0 4px 12px #0000004d;z-index:10}.draggable-error-overlay{position:absolute;background:#dc3545e6;color:#fff;padding:12px 16px;border-radius:6px;font-size:13px;line-height:1.3;text-align:center;max-width:200px;box-shadow:0 2px 8px #0003;z-index:10;-webkit-user-select:none;user-select:none}.draggable-error-overlay:hover{background:#dc3545;box-shadow:0 4px 12px #0000004d}.visual-editor-header-actions{position:absolute;right:380px;top:20px;padding:16px;display:flex;gap:16px}.visual-editor-header-actions button img{display:block;width:18px;height:18px}.preview-floating-window{position:fixed;background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;display:flex;flex-direction:column;resize:both;overflow:hidden;min-width:400px;min-height:300px}.preview-window-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f5f5f5;border-bottom:1px solid #e0e0e0;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none;pointer-events:auto}.preview-window-title{font-weight:600;font-size:14px;color:#333}.preview-window-header-actions{display:flex;align-items:center;gap:8px;pointer-events:auto}.preview-icon-btn{width:20px;height:20px;padding:0;border:none;background:none;cursor:pointer}.preview-icon-btn .icon-mask{display:inline-block;width:20px;height:20px;background-color:#666}.preview-icon-btn.active .icon-mask{background-color:#1f77ff}.icon-mask.horizontal{-webkit-mask:url(../../../assets/tabler-icon-items-horizontal.svg) no-repeat center / contain;mask:url(../../../assets/tabler-icon-items-horizontal.svg) no-repeat center / contain}.icon-mask.vertical{-webkit-mask:url(../../../assets/tabler-icon-items-vertical.svg) no-repeat center / contain;mask:url(../../../assets/tabler-icon-items-vertical.svg) no-repeat center / contain}.preview-window-close{background:none;border:none;font-size:24px;line-height:1;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.preview-window-close:hover{background:#e0e0e0;color:#333}.preview-window-content{display:flex;flex-direction:column;overflow:hidden;flex:1}.preview-items-container{overflow-y:auto;padding:12px 16px;flex:1}.preview-window-resize-handle{position:absolute;right:0;bottom:0;width:20px;height:20px;cursor:nwse-resize;z-index:10;pointer-events:auto;background:linear-gradient(135deg,transparent 0%,transparent 50%,#999 50%,#999 55%,transparent 55%,transparent 60%,#999 60%,#999 65%,transparent 65%,transparent 70%,#999 70%,#999 75%,transparent 75%);border-bottom-right-radius:8px}.preview-window-resize-handle:hover{background:linear-gradient(135deg,transparent 0%,transparent 50%,#666 50%,#666 55%,transparent 55%,transparent 60%,#666 60%,#666 65%,transparent 65%,transparent 70%,#666 70%,#666 75%,transparent 75%)}@media(prefers-color-scheme:dark){.preview-floating-window{background:#2a2a2a;border-color:#444}.preview-window-header{background:#1e1e1e;border-bottom-color:#444}.preview-window-title{color:#e0e0e0}.preview-window-close{color:#999}.preview-window-close:hover{background:#333;color:#e0e0e0}.preview-window-resize-handle{background:linear-gradient(135deg,transparent 0%,transparent 50%,#666 50%,#666 55%,transparent 55%,transparent 60%,#666 60%,#666 65%,transparent 65%,transparent 70%,#666 70%,#666 75%,transparent 75%)}.preview-window-resize-handle:hover{background:linear-gradient(135deg,transparent 0%,transparent 50%,#999 50%,#999 55%,transparent 55%,transparent 60%,#999 60%,#999 65%,transparent 65%,transparent 70%,#999 70%,#999 75%,transparent 75%)}}.properties-groups{display:flex;flex-direction:column;gap:10px}.properties-group{margin:20px 0 6px}.properties-group h4{margin-bottom:20px}.properties-group-content{margin-bottom:10px}.document-properties .size-inputs{display:flex;gap:10px;align-items:center}.document-properties .size-input-wrapper{flex:1}.public-generator-checkbox{display:flex;align-items:center;-webkit-user-select:none;user-select:none;font-size:14px;color:#333}.public-generator-checkbox>div{transform:scale(.875);transform-origin:center}.properties-panel{position:fixed;right:20px;top:20px;bottom:20px;width:340px;border-left:1px solid #e0e0e0;display:flex;flex-direction:column;z-index:10}.properties-panel-header{display:flex;align-items:start;justify-content:space-between;flex-shrink:0;padding:28px 16px 12px;font-size:.85rem;position:sticky;top:0;background-color:var(--background, #fff);z-index:1;border-bottom:1px solid #e0e0e0}.properties-panel-header>div{display:flex;align-items:center;gap:8px}.properties-panel-header img{display:block;width:18px;height:18px}.properties-panel-content{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;min-height:0;max-height:100%}.properties-panel-footer{flex-shrink:0;margin-top:auto;padding-top:16px;border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:12px}.properties-panel-footer .preview-checkbox{display:flex;align-items:center;-webkit-user-select:none;user-select:none;font-size:14px;color:#333}.properties-panel-footer .preview-checkbox>div{transform:scale(.875);transform-origin:center}.properties-empty{text-align:center;color:#999;padding:40px 20px}.properties-empty p{margin:0;font-size:14px}.properties-info{padding:12px;background:#f5f5f5;border-radius:6px}.properties-info p{margin:0;font-size:14px;color:#666}.properties-info strong{color:#333;font-family:monospace}.jp-data-items{background:#fff;border-radius:8px;margin-bottom:16px;flex:1;display:flex;flex-direction:column;overflow:hidden;font-size:.8rem}.jp-data-items>div[data-state]{display:flex;flex-direction:column;flex:1;overflow:hidden}.jp-data-items div[role=tabpanel]{flex:1;overflow:hidden;display:flex;flex-direction:column}.jp-data-items .header{display:flex;flex-direction:row!important;justify-content:space-between;align-items:center;margin-bottom:12px;flex-shrink:0}.jp-data-items .library-placeholder{padding:20px;text-align:center;color:#999}.jp-data-items .library-placeholder h4{margin:0 0 8px;font-size:16px;color:#666}.jp-data-items .library-placeholder p{margin:0;font-size:14px}.jp-data-items .file-drop-zone{border:2px dashed #d0d5dd;border-radius:8px;padding:32px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:all .2s ease;cursor:pointer;background:#f9fafb;margin-bottom:16px}.jp-data-items .file-drop-zone:hover{border-color:#667eea;background:#f5f7ff}.jp-data-items .file-drop-zone.dragging{border-color:#667eea;background:#e8edff;border-style:solid}.jp-data-items .file-drop-zone img{opacity:.6;transition:opacity .2s ease}.jp-data-items .file-drop-zone:hover img,.jp-data-items .file-drop-zone.dragging img{opacity:1}.jp-data-items .drop-zone-text{margin:0;font-size:14px;color:#6b7280;font-weight:500}.jp-data-items .file-drop-zone.dragging .drop-zone-text{color:#667eea}.jp-data-items .file-drop-zone.uploading{border-color:#10b981;background:#f0fdf4;cursor:not-allowed}.jp-data-items .file-drop-zone.uploading .drop-zone-text{color:#10b981}.jp-data-items .upload-spinner{display:flex;align-items:center;justify-content:center}.jp-data-items .spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #10b981;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.jp-data-items .reset-selection-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:#666;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.jp-data-items .reset-selection-btn:hover{background:#f0f0f0;color:#333}.jp-data-items .item-hierarchy{display:flex;flex-direction:column;gap:2px}.jp-data-items .item-hierarchy,.jp-data-items .text-main,.jp-data-items .dependency-content{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.jp-data-items .text-main{display:flex;align-items:center;gap:8px;padding:3px;color:#495057;transition:all .1s ease;cursor:pointer;border-radius:4px}.jp-data-items .text-main:hover{color:#333;background:#f1f1f1}.jp-data-items .text-main.selected{background:#e3f2fd;color:#1976d2}.jp-data-items .text-icon{display:block;width:18px;height:18px;flex-shrink:0;opacity:.7;transition:opacity .2s ease}.jp-data-items .text-main:hover .text-icon,.jp-data-items .text-main.selected .text-icon{opacity:1}.jp-data-items .text-key{font-weight:500}.jp-data-items .dependency-content{display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:14px;color:#495057;transition:all .2s ease;cursor:pointer;border-radius:0}.jp-data-items .dependency-content:hover{color:#333;background:#f8f9fa}.jp-data-items .dependency-content.selected{background:#e3f2fd;color:#1976d2}.jp-data-items .files-list{margin-bottom:16px}.jp-data-items .files-loading{display:flex;align-items:center;gap:8px;padding:8px 0;color:#666;font-size:14px}.jp-data-items .card-grid{display:grid;grid-template-columns:1fr;gap:6px}.jp-data-items .card-item{border:1px solid #e5e7eb;border-radius:8px;padding:8px 10px;background:#fff}.jp-data-items .card-info{flex:1;min-width:0}.jp-data-items .card-name{font-size:13px;font-weight:600;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.jp-data-items .card-details{font-size:11px;color:#666}.jp-data-items .files-empty{padding:8px 0;text-align:center;color:#666;font-size:14px}.jp-data-items .fonts-list{margin-bottom:16px}.jp-data-items .fonts-loading{display:flex;align-items:center;gap:8px;padding:8px 0;color:#666;font-size:14px}.jp-data-items .fonts-grid{display:flex;flex-direction:column;gap:4px}.jp-data-items .font-item{display:flex;align-items:center;padding:2px 4px}.jp-data-items .font-info{flex:1;min-width:0}.jp-data-items .font-name{font-size:13px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}.jp-data-items .font-details{font-size:11px;color:#666}.jp-data-items .fonts-empty{padding:8px 0;text-align:center;color:#666;font-size:14px}.config-editor{display:flex;width:100%;height:100vh}.sidebar{width:270px;flex-shrink:0;gap:4px;display:flex;flex-direction:column}.application{display:flex;align-items:center;gap:8px;padding:8px 12px;flex-wrap:wrap}.app-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .2s;line-height:0}.app-icon img{display:block;border-radius:4px}.app-icon:hover{opacity:.8}.application .separator{display:block}.application .separator svg{width:20px;height:20px}.application .project-name{color:#333;word-break:break-word;flex:1;min-width:0;font-size:1rem}.dev-mode-toggle{margin-top:auto;padding:12px 12px 8px;display:flex;align-items:center;-webkit-user-select:none;user-select:none;font-size:13px;color:#666}.dev-mode-toggle>div{transform:scale(.875);transform-origin:center}.main-content-container{width:100%;margin:10px;display:flex;flex-direction:column;overflow:hidden}.main-content-title{padding-top:16px;padding-bottom:22px;margin-left:10px;flex-shrink:0}.main-content{width:750px;flex-shrink:0;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.panel-container{display:flex;flex-direction:column;width:100%;margin:0 auto;border-radius:var(--border-radius);gap:20px;padding:10px}.radio-group{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto}*,*:before,*:after{box-sizing:border-box}html{height:100%}body{min-height:100%;position:relative}:root{--primary-color: #4a89dc;--primary-dark: #3a70c2;--bg-light: #f5f7fa;--bg-dark: #2d353c;--bg-secondary: #3a454d;--bg-hover: #47535c;--bg-code: #f8f9fa;--text-primary: #333;--text-secondary: #666;--text-code: #444;--border-color: #e0e0e0;--button-text-color: #e0e0e0;--border-radius: 8px;--border-radius-sm: 4px;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .08);--transition: all .2s ease}body{margin:0;padding:0;line-height:1.6}h3{margin-top:.8rem;margin-bottom:.8rem}p{margin-top:.5rem;margin-bottom:.5rem}.panel{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.existing-fields{margin-bottom:30px}.existing-fields h4{margin-bottom:15px;color:var(--text-primary)}.field-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border:1px solid var(--border-color);border-radius:4px;margin-bottom:8px;background:#f8f9fa}.field-info{flex:1}.field-options{font-size:12px;color:var(--text-secondary);margin-top:4px}.remove-field-btn{background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.remove-field-btn:hover{background:#c82333}.add-field-form{border-top:1px solid var(--border-color);padding-top:20px}.add-field-form h4{margin-bottom:15px;color:var(--text-primary)}.field-actions{display:flex;gap:8px;align-items:center}.edit-field-btn{background:#ffc107;color:#212529;border:none;border-radius:50%;width:24px;height:24px;font-size:12px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.edit-field-btn:hover{background:#e0a800}.field-edit-form{width:100%;padding:15px;background:#f8f9fa;border-radius:4px;margin-top:10px}.edit-buttons{display:flex;gap:10px;margin-top:15px}.save-btn{background:#28a745;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s}.save-btn:hover{background:#218838}.cancel-btn{background:#6c757d;color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;transition:background-color .2s}.cancel-btn:hover{background:#5a6268}.selected-text-editor{margin-top:20px;padding:20px;background:#f8f9fa;border:1px solid var(--border-color);border-radius:8px}.selected-text-editor h4{margin:0 0 15px;color:var(--text-primary);font-size:16px;font-weight:600}.generator-page{margin:0;padding:0}.save-button-container{margin-bottom:15px;display:flex;align-items:center;gap:20px}.preview-checkbox-label{display:flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;color:#333}.preview-checkbox-label span{line-height:1}@media(prefers-color-scheme:dark){.preview-checkbox-label{color:#e0e0e0}}.create-company-page{margin:0 auto;padding:40px 20px}.create-company-container{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000001a}.create-company-container h1{margin:0 0 30px;font-size:1.8rem;color:#333;text-align:center}.create-company-form{display:flex;flex-direction:column;gap:20px}@media(max-width:768px){.create-company-page{padding:20px 15px}.create-company-container{padding:20px}.form-actions{flex-direction:column}}.create-project-page{margin:0 auto;padding:40px 20px}.create-project-container{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000001a}.create-project-form{display:flex;flex-direction:column;gap:20px}.error-message{color:#e74c3c;font-size:14px;padding:8px 12px;background-color:#fdf2f2;border:1px solid #fecaca;border-radius:4px}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:10px}@media(max-width:768px){.create-project-page{padding:20px 15px}.create-project-container{padding:20px}.form-actions{flex-direction:column}}.company-page{margin:0 auto;padding:20px}.loading,.error{text-align:center;padding:40px;font-size:18px}.error{color:#e74c3c}.company-header{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e0e0e0}.company-header h1{font-size:2rem;color:#333;margin:0}.company-content{display:grid;gap:40px}.company-info,.company-projects{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000001a}.company-info h2,.company-projects h2{font-size:1.5rem;color:#333;margin:0 0 20px}.info-grid{display:grid;gap:15px}.info-item{display:flex;align-items:center;gap:10px}.info-item .label{font-weight:500;color:#555;min-width:100px}.info-item .value{color:#333}.projects-list{display:flex;flex-direction:column;gap:10px}.project-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.project-item:last-child{border-bottom:none}.project-item .project-link{color:#007bff;text-decoration:none;font-size:1rem;transition:color .2s ease}.project-item .project-link:hover{color:#0056b3}.project-item .project-date{color:#666;font-size:.9rem}.empty-state{text-align:center;padding:40px 20px;color:#666;font-style:italic}@media(max-width:768px){.company-page{padding:15px}.company-header h1{font-size:1.5rem}.company-info,.company-projects{padding:20px}.project-item{flex-direction:column;align-items:flex-start;gap:5px}}.profile-page{padding:60px 20px 20px;max-width:1200px;margin:0 auto;min-height:calc(100vh - 80px)}.profile-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.profile-header{background:#f8f9fa;padding:20px 30px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.profile-header h1{margin:0;color:#333;font-size:1.5rem;font-weight:600}.edit-button{background:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.edit-button:hover{background:#0056b3}.profile-content{padding:30px}.profile-section{margin-bottom:40px}.profile-section:last-child{margin-bottom:0}.profile-section h2{margin:0 0 20px;color:#333;font-size:1.2rem;font-weight:600;border-bottom:2px solid #007bff;padding-bottom:8px}.profile-info{display:grid;gap:15px}.info-item{display:flex;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid #f0f0f0}.info-item:last-child{border-bottom:none}.info-item label{font-weight:600;color:#555;min-width:150px}.info-item span{color:#333}.hash-value{font-family:monospace;background:#f8f9fa;padding:4px 8px;border-radius:4px;font-size:.9rem}.profile-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:1rem}.profile-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.stat-item{text-align:center;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0}.stat-number{font-size:2rem;font-weight:700;color:#007bff;margin-bottom:8px}.stat-label{color:#666;font-size:.9rem}.recent-list{display:flex;flex-direction:column;gap:12px}.recent-item{padding:15px;background:#f8f9fa;border-radius:6px;border:1px solid #e0e0e0}.recent-name{font-weight:600;color:#333;margin-bottom:8px}.recent-meta{display:flex;gap:15px;align-items:center;font-size:.9rem;color:#666}.company-tag{background:#007bff;color:#fff;padding:2px 8px;border-radius:12px;font-size:.8rem}.file-type{background:#28a745;color:#fff;padding:2px 8px;border-radius:12px;font-size:.8rem}.file-size{color:#666}.recent-date{color:#999}.profile-actions{padding:20px 30px;background:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;gap:15px;justify-content:flex-end}.save-button{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.save-button:hover:not(:disabled){background:#218838}.save-button:disabled{background:#6c757d;cursor:not-allowed}.cancel-button{background:#6c757d;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.cancel-button:hover:not(:disabled){background:#5a6268}.cancel-button:disabled{background:#adb5bd;cursor:not-allowed}.profile-loading,.profile-error{text-align:center;padding:60px 20px}.profile-error h2{color:#dc3545;margin-bottom:15px}.profile-error button{background:#007bff;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;margin-top:15px}.profile-error button:hover{background:#0056b3}@media(max-width:768px){.profile-page{padding:60px 10px 20px}.profile-content{padding:20px}.profile-header{padding:15px 20px;flex-direction:column;gap:15px;align-items:flex-start}.stats-grid{grid-template-columns:repeat(2,1fr)}.info-item{flex-direction:column;align-items:flex-start;gap:5px}.info-item label{min-width:auto}.recent-meta{flex-direction:column;align-items:flex-start;gap:5px}}*{box-sizing:border-box}:root{--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem}.app{max-width:2400px;margin:0 auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.upload-section{margin:var(--spacing-xl) 0}.file-upload-label{display:inline-flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:var(--border-radius-lg);cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;font-size:var(--font-size-lg);font-weight:500}.file-upload-label:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.file-upload-label:active{transform:translateY(0)}.upload-icon{font-size:1.5rem}.upload-text{white-space:nowrap}.loading{margin:var(--spacing-xl) 0;padding:var(--spacing-xl);background:#e3f2fd;border-radius:var(--border-radius-lg);border:2px solid #2196f3}.loading p{margin:0;color:#1976d2;font-size:var(--font-size-lg);font-weight:500}.results-section{margin-top:var(--spacing-2xl);text-align:left}.header-info{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 8px 25px #667eea4d;display:flex;justify-content:space-between;align-items:center}.header-info h2{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-3xl);font-weight:600}.header-info p{margin:var(--spacing-sm) 0;font-size:var(--font-size-lg);opacity:.9}.download-btn{margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:var(--border-radius-md);cursor:pointer;font-size:var(--font-size-md);font-weight:500;transition:all .3s ease}.download-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.routes-container{display:grid;gap:2rem}.route-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;overflow:hidden;border:1px solid #e0e0e0}.route-header{padding:.2rem 0;display:flex;align-items:center;gap:1rem}.route-header h3{margin:0;font-size:1.3rem;font-weight:600}.route-header p{margin:0;opacity:.9;font-size:.9rem}.days-container{padding:1.5rem;display:grid;gap:1.5rem}.day-card{background:#f8f9fa;border-radius:12px;padding:1.5rem;border:1px solid #e9ecef}.day-controls{display:flex;gap:.5rem}.control-btn{background:#6c757d;color:#fff;border:none;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:1rem;transition:all .3s ease;box-shadow:0 2px 6px #6c757d4d}.control-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px #6c757d66}.improve-btn{background:#28a745;box-shadow:0 2px 6px #28a7454d}.improve-btn:hover{background:#218838;box-shadow:0 4px 10px #28a74566}.worsen-btn{background:#dc3545;box-shadow:0 2px 6px #dc35454d}.worsen-btn:hover{background:#c82333;box-shadow:0 4px 10px #dc354566}.regenerate-btn{background:#ff9800;box-shadow:0 2px 6px #ff98004d}.regenerate-btn:hover{background:#f57c00;box-shadow:0 4px 10px #ff980066}.params-display{margin-top:1.5rem;padding:1rem;background:#ffffff1a;border-radius:8px;border:1px solid rgba(255,255,255,.2)}.params-display h4{margin:0 0 .75rem;font-size:1rem;opacity:.9}.params-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem}.param-item{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0}.param-label{font-size:.9rem;opacity:.8}.param-value{font-weight:600;font-size:.9rem;background:#fff3;padding:2px 6px;border-radius:4px}.values-section{margin-bottom:1.5rem}.values-section h5{margin:0 0 .75rem;color:#495057;font-size:1.1rem;font-weight:600}.values-list{display:flex;flex-wrap:wrap;gap:.25rem;padding:.25rem;background:#fff;border-radius:8px;border:1px solid #dee2e6}.time-value{background:#e3f2fd;color:#1976d2;padding:2px 6px;border-radius:4px;font-size:.8rem;font-weight:500;border:1px solid #bbdefb}.intervals-section h5{margin:0 0 .75rem;color:#495057;font-size:1.1rem;font-weight:600}.intervals-list{display:flex;flex-direction:column;gap:.5rem}.interval-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #dee2e6;transition:all .2s ease}.interval-item:hover{border-color:#adb5bd;box-shadow:0 2px 8px #0000001a}.interval-number{background:#667eea;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.interval-time{font-weight:600;color:#2c3e50;font-size:1rem}.interval-details{color:#6c757d;font-size:.9rem;margin-left:auto}.no-intervals{color:#6c757d;font-style:italic;text-align:center;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px dashed #dee2e6}.info{margin-top:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.info p{margin:.5rem 0;color:#6c757d;font-size:.95rem}.info p:first-child{margin-top:0}.info p:last-child{margin-bottom:0}.day-params{margin-bottom:1.5rem;padding:1rem;background:#e8f4fd;border-radius:8px;border:1px solid #bee5eb}.day-params-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.day-params-header h5{margin:0;color:#0c5460;font-size:1rem;font-weight:600}.toggle-params-btn{background:#6c757d1a;color:#6c757d;border:none;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:1rem;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.toggle-params-btn:hover{background:#6c757d;color:#fff;transform:translateY(-1px);box-shadow:0 4px 10px #6c757d66}.day-params-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.day-param-item{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0}.day-param-label{font-size:.8rem;color:#495057;font-weight:500}.day-param-value{font-weight:600;font-size:.8rem;background:#fff;color:#0c5460;padding:2px 6px;border-radius:4px;border:1px solid #bee5eb}.time-graphs-section{margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;border:1px solid #dee2e6;box-shadow:0 2px 8px #0000001a}.time-graphs-section h4{margin:0 0 1rem;color:#495057;font-size:1.2rem;font-weight:600}.time-graphs-grid{display:flex;flex-direction:column;gap:1rem}.time-graph-day{border:1px solid #e9ecef;border-radius:8px;padding:.5rem;background:#f8f9fa}.time-graph-item{width:100%}.canvas-wrapper{border-radius:6px;background:#fff}.graph-legend{padding:.75rem;background:#e8f4fd;border-radius:6px;border:1px solid #bee5eb;margin-top:1rem}.legend-text{margin:0;font-size:.85rem;color:#0c5460;line-height:1.4}.raw-data-graph{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;padding:1.5rem;margin-bottom:2rem;border:1px solid #e0e0e0}.raw-data-graph h3{margin:0 0 1rem;color:#2c3e50;font-size:1.3rem;font-weight:600;text-align:center}.routes-graphs{display:grid;gap:1.5rem;margin-bottom:1rem}.route-graph{background:#f8f9fa;border-radius:12px;padding:1rem;border:1px solid #e9ecef}.route-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.route-info{flex:1}.export-btn{background:#28a745;color:#fff;border:none;border-radius:var(--border-radius-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:all .3s ease;white-space:nowrap}.export-btn:hover{background:#218838;transform:translateY(-1px)}.export-btn:active{transform:translateY(0)}.preview-btn{background:#4709d8;color:#fff;border:none;border-radius:var(--border-radius-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:all .3s ease;white-space:nowrap}.preview-btn:hover{background:#005ef5;transform:translateY(-1px)}.preview-btn:active{transform:translateY(0)}.craft-btn{background:#ff9800;color:#fff;border:none;border-radius:var(--border-radius-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:all .3s ease;white-space:nowrap}.craft-btn:hover{background:#f57c00;transform:translateY(-1px)}.craft-btn:active{transform:translateY(0)}.route-graph h4{margin:0 0 .5rem;color:#2c3e50;font-size:1.1rem;font-weight:600}.route-direction{margin:0 0 1rem;color:#343434;font-size:.9rem}.days-graphs{display:grid;gap:.5rem}.day-graph{background:transparent;border-radius:0;padding:.5rem 0;border:none}.day-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.9rem}.day-title{color:#495057;font-weight:600}.day-count{color:#6c757d;font-size:.8rem}.day-graph h5{margin:0 0 .5rem;color:#495057;font-size:1rem;font-weight:600}.day-info{margin:0 0 1rem;color:#6c757d;font-size:.9rem}.canvas-container{display:flex;justify-content:flex-start;margin-bottom:1rem;overflow-x:auto;padding:0}.canvas-container canvas{width:100%!important;max-width:100%;height:auto}.days-info{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.day-label{background:#e9ecef;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;color:#495057}.legend{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#666}.legend-color{width:12px;height:12px;border-radius:2px;border:1px solid #ccc}.interval-slider{background:transparent;border-radius:0;padding:.5rem 0;margin-bottom:1rem;border:none;box-shadow:none}.interval-type-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid #ced4da;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);color:#495057;background:#fff;cursor:pointer;transition:border-color .3s ease;min-width:120px}.slider-controls-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md);flex-wrap:wrap}.intervals-container{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.slider-control-item{display:flex;align-items:center;gap:var(--spacing-sm)}.add-interval-btn{background:#28a745;color:#fff;border:none;border-radius:var(--border-radius-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;font-size:var(--font-size-xl);font-weight:700;transition:all .3s ease;min-width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;overflow:hidden}.add-interval-btn:hover:not(:disabled){background:#218838}.add-interval-btn:disabled{background:#6c757d;cursor:not-allowed}.slider-container{display:flex;flex-direction:column;gap:.5rem}.interval-number{background:#667eea;color:#fff;width:1.5rem;height:1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;flex-shrink:0}.time-input{border:1px solid #ced4da;border-radius:var(--border-radius-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);width:5rem}.remove-interval-btn{background:transparent;color:#dc3545;border:1px solid #dc3545;border-radius:var(--border-radius-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;font-size:var(--font-size-xl);font-weight:700;transition:all .3s ease;min-width:24px;height:24px;display:flex;align-items:center;justify-content:center}.remove-interval-btn:hover:not(:disabled){background:#dc3545;color:#fff}.remove-interval-btn:disabled{background:transparent;color:#6c757d;border-color:#6c757d;cursor:not-allowed}.slider-track{position:relative;padding:.25rem 0}.slider-range{width:100%;height:6px;border-radius:3px;background:#e9ecef;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.slider-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--slider-color, #ff6b6b);cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.slider-range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--slider-color, #ff6b6b);cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.slider-labels{display:flex;justify-content:space-between;margin-top:.25rem;font-size:.8rem;color:#6c757d}.multi-slider{display:flex;flex-direction:column;gap:1rem}.custom-slider{position:relative;width:100%;height:8px;border-radius:4px;background:#e0e0e0;cursor:pointer;overflow:visible}.slider-track-bg{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:4px;background:#e0e0e0}.slider-thumb{position:absolute;top:50%;left:var(--slider-position, 50%);width:20px;height:20px;background:var(--slider-color, #667eea);border-radius:50%;transform:translate(-50%,-50%);cursor:grab;box-shadow:0 2px 8px #0000004d;transition:transform .1s ease}.slider-thumb:hover{transform:translate(-50%,-50%) scale(1.1)}.slider-thumb:active{cursor:grabbing;transform:translate(-50%,-50%) scale(1.2)}.interval-stats{margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:#6c757d;line-height:1.4}.interval-stat-row{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.stat-info{min-width:120px;flex-shrink:0}.interval-type-select{padding:2px 4px;border:1px solid #ced4da;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);color:#495057;background:#fff;cursor:pointer;transition:border-color .3s ease;min-width:100px;flex-shrink:0}.interval-type-select:hover{border-color:#adb5bd}.interval-type-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.stat-data{flex:1;text-align:left}.stat-trips{min-width:60px;text-align:right;flex-shrink:0}.interval-types-control{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:#f8f9fa;border-radius:var(--border-radius-md);border:1px solid #e9ecef}.interval-types-control h5{margin:0 0 var(--spacing-md) 0;color:#495057;font-size:var(--font-size-lg);font-weight:600}.interval-types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-sm)}.interval-type-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:#fff;border-radius:var(--border-radius-sm);border:1px solid #dee2e6}.interval-type-item .day-label{flex:1;font-size:var(--font-size-sm);color:#495057;font-weight:500}.interval-type-item .interval-type-select{min-width:140px;flex-shrink:0}.generator-preview{display:flex;flex-direction:column;width:100%;height:100%;gap:20px}.generator-preview-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #e0e0e0}.generator-preview-actions{display:flex;gap:8px}.generator-preview-canvas{flex:1;overflow:auto;padding:2rem}.data-list-container{margin-top:1rem}.data-list-container:focus{outline:none}.data-list-header{flex-shrink:0}.data-list-info{font-size:12px}.data-list-content{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.data-list-item{display:flex;gap:8px;padding:8px 12px;margin-bottom:4px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s}.data-list-item:hover{border-color:var(--primary)}.data-list-item.selected{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.data-list-item-number{flex:0 0 24px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--muted-foreground)}.data-list-item.selected .data-list-item-number{color:var(--primary-foreground)}.data-list-item-content{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0;overflow-x:auto;overflow-y:hidden}.data-list-item-field{display:flex;gap:8px;white-space:nowrap;font-size:12px}.data-list-item-key{font-weight:600;color:var(--muted-foreground);flex-shrink:0}.data-list-item.selected .data-list-item-key{color:var(--primary-foreground);opacity:.9}.data-list-item-value{color:var(--foreground);overflow:hidden;text-overflow:ellipsis;max-width:200px}.data-list-item.selected .data-list-item-value{color:var(--primary-foreground)}.data-list-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--muted-foreground);font-size:14px}.public-generator-page{display:flex;width:100%;height:100vh;gap:20px;padding:20px}.public-generator-form{flex:0 0 400px;width:400px;height:100%;display:flex;flex-direction:column;overflow:hidden}.public-generator-form>.interface-panel,.public-generator-form>.data-list-container{flex:1 1 0;min-height:0;overflow-y:auto}.public-generator-preview{flex:1;overflow:hidden}.register-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.docs-container{display:flex;min-height:calc(100vh - 60px);max-width:1400px;margin:0 auto}.docs-sidebar{width:280px;min-width:280px;background:var(--background, #ffffff);border-right:1px solid var(--border, #e5e7eb);padding:24px 0;overflow-y:auto;position:sticky;top:0;max-height:calc(100vh - 60px)}.docs-sidebar-header{padding:0 24px 16px;border-bottom:1px solid var(--border, #e5e7eb);margin-bottom:16px}.docs-sidebar-header h2{margin:0;font-size:20px;font-weight:600;color:var(--foreground, #111827)}.docs-section{margin-bottom:8px}.docs-section-title{padding:8px 24px;font-weight:600;font-size:14px;color:var(--foreground, #111827);text-transform:uppercase;letter-spacing:.5px;margin-top:16px;margin-bottom:4px}.docs-section-title:first-child{margin-top:0}.docs-nav-link{display:block;padding:8px 24px;color:var(--muted-foreground, #6b7280);text-decoration:none;font-size:14px;transition:all .2s;border-left:2px solid transparent}.docs-nav-link:hover{color:var(--foreground, #111827);background:var(--muted, #f9fafb)}.docs-nav-link.active{color:var(--primary, #3b82f6);background:var(--muted, #f9fafb);border-left-color:var(--primary, #3b82f6);font-weight:500}.docs-content{flex:1;padding:32px 48px;overflow-y:auto;max-width:900px}.docs-page{line-height:1.7}.docs-page h1{font-size:32px;font-weight:700;margin:0 0 16px;color:var(--foreground, #111827)}.docs-page h2{font-size:24px;font-weight:600;margin:32px 0 16px;color:var(--foreground, #111827)}.docs-page h3{font-size:20px;font-weight:600;margin:24px 0 12px;color:var(--foreground, #111827)}.docs-page p{margin:0 0 16px;color:var(--muted-foreground, #4b5563)}.docs-page ul,.docs-page ol{margin:0 0 16px;padding-left:24px;color:var(--muted-foreground, #4b5563)}.docs-page li{margin:8px 0}.docs-page pre{background:var(--muted, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:6px;padding:16px;overflow-x:auto;margin:16px 0}.docs-page code{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;background:var(--muted, #f9fafb);padding:2px 6px;border-radius:4px;color:var(--foreground, #111827)}.docs-page pre code{background:transparent;padding:0}.docs-home{padding:32px 48px;max-width:900px;margin:0 auto}.docs-home h1{font-size:36px;font-weight:700;margin:0 0 16px;color:var(--foreground, #111827)}.docs-home p{font-size:18px;color:var(--muted-foreground, #4b5563);margin:0 0 32px}.docs-sections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:32px}.docs-section-card{border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:24px;transition:all .2s;text-decoration:none;display:block;color:inherit}.docs-section-card:hover{border-color:var(--primary, #3b82f6);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.docs-section-card h3{margin:0 0 8px;font-size:20px;font-weight:600;color:var(--foreground, #111827)}.docs-section-card p{margin:0;font-size:14px;color:var(--muted-foreground, #6b7280)}@media(max-width:768px){.docs-container{flex-direction:column}.docs-sidebar{width:100%;position:relative;max-height:none;border-right:none;border-bottom:1px solid var(--border, #e5e7eb)}.docs-content,.docs-home{padding:24px}}
