*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans),system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--surface-0:60 11% 98%;--surface-1:0 0% 100%;--ds-surface-2:39 17% 94%;--ds-surface-3:39 16% 89%;--background:var(--surface-0);--foreground:0 0% 10%;--card:var(--surface-1);--card-foreground:var(--foreground);--popover:var(--surface-1);--popover-foreground:var(--foreground);--primary:213 59% 26%;--primary-foreground:0 0% 100%;--secondary:39 17% 94%;--secondary-foreground:var(--foreground);--ds-accent:8 60% 49%;--accent-foreground:0 0% 100%;--ds-info:213 59% 36%;--info-foreground:0 0% 100%;--ds-success:124 46% 33%;--success-foreground:0 0% 100%;--ds-warning:36 100% 35%;--warning-foreground:0 0% 100%;--ds-danger:8 60% 49%;--danger-foreground:0 0% 100%;--destructive:8 60% 49%;--destructive-foreground:0 0% 100%;--muted:var(--ds-surface-2);--muted-foreground:0 0% 42%;--ds-border:41 13% 83%;--input:41 13% 83%;--ring:213 59% 36%;--radius:0.375rem;--shadow-color:213 30% 15%;--shadow-strength-sm:0.04;--shadow-strength-md:0.08;--shadow-strength-lg:0.12}.dark{--surface-0:220 12% 9%;--surface-1:220 9% 12%;--ds-surface-2:220 8% 16%;--ds-surface-3:220 8% 19%;--background:var(--surface-0);--foreground:40 16% 91%;--card:var(--surface-1);--card-foreground:var(--foreground);--popover:var(--ds-surface-2);--popover-foreground:var(--foreground);--primary:213 41% 55%;--primary-foreground:220 12% 9%;--secondary:var(--ds-surface-2);--secondary-foreground:var(--foreground);--ds-accent:8 70% 62%;--accent-foreground:220 12% 9%;--ds-info:213 41% 60%;--info-foreground:220 12% 9%;--ds-success:124 38% 62%;--success-foreground:220 12% 9%;--ds-warning:32 70% 60%;--warning-foreground:220 12% 9%;--ds-danger:8 70% 62%;--danger-foreground:220 12% 9%;--destructive:8 70% 62%;--destructive-foreground:220 12% 9%;--muted:var(--ds-surface-2);--muted-foreground:220 5% 60%;--ds-border:220 7% 23%;--input:220 7% 23%;--ring:213 41% 60%;--shadow-color:0 0% 0%;--shadow-strength-sm:0.3;--shadow-strength-md:0.4;--shadow-strength-lg:0.5}*{border-color:hsl(var(--ds-border))}html{color-scheme:light}html.dark{color-scheme:dark}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-feature-settings:"rlig" 1,"calt" 1,"cv11" 1}:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring));--tw-ring-offset-width:2px;--tw-ring-offset-color:hsl(var(--background))}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.025em}.num,td.num,th.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width:1400px){.container{max-width:1400px}}.text-page-title{font-size:1.5rem;line-height:2rem;font-weight:600;letter-spacing:-.025em}.text-section-title{font-size:1rem;line-height:1.5rem;font-weight:500;letter-spacing:-.025em}.text-helper{font-size:.875rem;line-height:1.25rem}.text-helper,.text-label{color:hsl(var(--muted-foreground))}.text-label{font-size:.75rem;line-height:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.card-elevated,.card-interactive{border-radius:calc(var(--radius) - 2px);border-width:1px;border-color:hsl(var(--ds-border));background-color:hsl(var(--card));--tw-shadow:0 1px 2px 0 hsl(var(--shadow-color)/var(--shadow-strength-sm));--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.card-interactive{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;animation-duration:.15s}.card-interactive:hover{border-color:hsl(var(--foreground)/.15);--tw-shadow:0 4px 8px -2px hsl(var(--shadow-color)/var(--shadow-strength-md)),0 2px 4px -2px hsl(var(--shadow-color)/var(--shadow-strength-sm));--tw-shadow-colored:0 4px 8px -2px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@keyframes pulse-ring{0%,to{transform:scale(1);opacity:.35}50%{transform:scale(1.4);opacity:0}}.sr-only{clip:rect(0,0,0,0);border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-1{bottom:-.25rem}.-left-6{left:-1.5rem}.-right-0\.5{right:-.125rem}.-right-1{right:-.25rem}.-right-3{right:-.75rem}.-top-0\.5{top:-.125rem}.bottom-0{bottom:0}.bottom-0\.5{bottom:.125rem}.bottom-1{bottom:.25rem}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-1{left:.25rem}.left-2{left:.5rem}.left-3{left:.75rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.top-5{top:1.25rem}.top-\[50\%\]{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.order-1{order:1}.order-2{order:2}.col-span-2{grid-column:span 2/span 2}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-auto{margin-right:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.inline-grid{display:inline-grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[18px\]{height:18px}.h-\[1px\]{height:1px}.h-\[22px\]{height:22px}.h-\[82px\]{height:82px}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-56{max-height:14rem}.max-h-64{max-height:16rem}.max-h-72{max-height:18rem}.max-h-96{max-height:24rem}.max-h-\[200px\]{max-height:200px}.max-h-\[26rem\]{max-height:26rem}.max-h-\[45vh\]{max-height:45vh}.max-h-\[46vh\]{max-height:46vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[88vh\]{max-height:88vh}.max-h-\[calc\(100\%_-_1\.5rem\)\]{max-height:calc(100% - 1.5rem)}.max-h-\[calc\(100vh-13rem\)\]{max-height:calc(100vh - 13rem)}.max-h-\[calc\(100vh-22rem\)\]{max-height:calc(100vh - 22rem)}.max-h-screen{max-height:100vh}.min-h-0{min-height:0}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-52{width:13rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-60{width:15rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[--radix-popover-trigger-width\]{width:var(--radix-popover-trigger-width)}.w-\[18px\]{width:18px}.w-\[1px\]{width:1px}.w-\[22px\]{width:22px}.w-\[30rem\]{width:30rem}.w-\[3px\]{width:3px}.w-\[95vw\]{width:95vw}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-20{min-width:5rem}.min-w-24{min-width:6rem}.min-w-28{min-width:7rem}.min-w-32{min-width:8rem}.min-w-36{min-width:9rem}.min-w-4{min-width:1rem}.min-w-40{min-width:10rem}.min-w-5{min-width:1.25rem}.min-w-\[3\.5ch\]{min-width:3.5ch}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[1100px\]{max-width:1100px}.max-w-\[16rem\]{max-width:16rem}.max-w-\[240px\]{max-width:240px}.max-w-\[40ch\]{max-width:40ch}.max-w-\[calc\(100\%_-_var\(--board-props-w\)_-_2rem\)\]{max-width:calc(100% - var(--board-props-w) - 2rem)}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0{flex-shrink:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.translate-x-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.rotate-90,.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate:90deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.grid-cols-\[repeat\(auto-fill\2c minmax\(220px\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.grid-cols-\[repeat\(auto-fill\2c minmax\(320px\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.grid-cols-\[var\(--board-toolbar-w\)_1fr\]{grid-template-columns:var(--board-toolbar-w) 1fr}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-px{gap:1px}.gap-x-1\.5{-moz-column-gap:.375rem;column-gap:.375rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.-space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(-.25rem * var(--tw-space-x-reverse));margin-left:calc(-.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--ds-border))}.self-end{align-self:flex-end}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-l-none{border-top-left-radius:0;border-bottom-left-radius:0}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-r-sm{border-top-right-radius:calc(var(--radius) - 4px);border-bottom-right-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-0{border-left-width:0}.border-r{border-right-width:1px}.border-r-0{border-right-width:0}.border-t{border-top-width:1px}.border-\[hsl\(var\(--destructive\)\/0\.4\)\]{border-color:hsl(var(--destructive)/.4)}.border-\[hsl\(var\(--ds-info\)\/0\.3\)\]{border-color:hsl(var(--ds-info)/.3)}.border-\[hsl\(var\(--ds-info\)\/0\.4\)\]{border-color:hsl(var(--ds-info)/.4)}.border-\[hsl\(var\(--ds-success\)\/0\.3\)\]{border-color:hsl(var(--ds-success)/.3)}.border-\[hsl\(var\(--ds-success\)\/0\.4\)\]{border-color:hsl(var(--ds-success)/.4)}.border-\[hsl\(var\(--ds-warning\)\/0\.3\)\]{border-color:hsl(var(--ds-warning)/.3)}.border-\[hsl\(var\(--ds-warning\)\/0\.4\)\]{border-color:hsl(var(--ds-warning)/.4)}.border-background{border-color:hsl(var(--background))}.border-border{border-color:hsl(var(--ds-border))}.border-border\/40{border-color:hsl(var(--ds-border)/.4)}.border-border\/60{border-color:hsl(var(--ds-border)/.6)}.border-border\/70{border-color:hsl(var(--ds-border)/.7)}.border-danger\/40{border-color:hsl(var(--ds-danger)/.4)}.border-destructive{border-color:hsl(var(--destructive))}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/50{border-color:hsl(var(--primary)/.5)}.border-transparent{border-color:transparent}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-\[\#15171A\]{--tw-bg-opacity:1;background-color:rgb(21 23 26/var(--tw-bg-opacity,1))}.bg-\[hsl\(var\(--destructive\)\/0\.08\)\]{background-color:hsl(var(--destructive)/.08)}.bg-\[hsl\(var\(--ds-info\)\/0\.08\)\]{background-color:hsl(var(--ds-info)/.08)}.bg-\[hsl\(var\(--ds-info\)\/0\.1\)\]{background-color:hsl(var(--ds-info)/.1)}.bg-\[hsl\(var\(--ds-success\)\)\]{background-color:hsl(var(--ds-success))}.bg-\[hsl\(var\(--ds-success\)\/0\.08\)\]{background-color:hsl(var(--ds-success)/.08)}.bg-\[hsl\(var\(--ds-success\)\/0\.1\)\]{background-color:hsl(var(--ds-success)/.1)}.bg-\[hsl\(var\(--ds-success\)\/0\.12\)\]{background-color:hsl(var(--ds-success)/.12)}.bg-\[hsl\(var\(--ds-warning\)\/0\.08\)\]{background-color:hsl(var(--ds-warning)/.08)}.bg-\[hsl\(var\(--ds-warning\)\/0\.1\)\]{background-color:hsl(var(--ds-warning)/.1)}.bg-\[hsl\(var\(--ds-warning\)\/0\.12\)\]{background-color:hsl(var(--ds-warning)/.12)}.bg-\[hsl\(var\(--primary\)\/0\.06\)\]{background-color:hsl(var(--primary)/.06)}.bg-\[hsl\(var\(--primary\)\/0\.1\)\]{background-color:hsl(var(--primary)/.1)}.bg-\[hsl\(var\(--primary\)\/0\.12\)\]{background-color:hsl(var(--primary)/.12)}.bg-accent{background-color:hsl(var(--ds-accent))}.bg-accent\/15{background-color:hsl(var(--ds-accent)/.15)}.bg-background{background-color:hsl(var(--background))}.bg-black\/50{background-color:rgb(0 0 0/.5)}.bg-black\/80{background-color:rgb(0 0 0/.8)}.bg-border{background-color:hsl(var(--ds-border))}.bg-card{background-color:hsl(var(--card))}.bg-danger{background-color:hsl(var(--ds-danger))}.bg-danger\/10{background-color:hsl(var(--ds-danger)/.1)}.bg-danger\/15{background-color:hsl(var(--ds-danger)/.15)}.bg-destructive{background-color:hsl(var(--destructive))}.bg-muted{background-color:hsl(var(--muted))}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary)/.1)}.bg-primary\/15{background-color:hsl(var(--primary)/.15)}.bg-secondary{background-color:hsl(var(--secondary))}.bg-success\/15{background-color:hsl(var(--ds-success)/.15)}.bg-surface-1{background-color:hsl(var(--surface-1))}.bg-surface-2{background-color:hsl(var(--ds-surface-2))}.bg-surface-2\/60{background-color:hsl(var(--ds-surface-2)/.6)}.bg-surface-2\/70{background-color:hsl(var(--ds-surface-2)/.7)}.bg-surface-3{background-color:hsl(var(--ds-surface-3))}.bg-transparent{background-color:transparent}.bg-warning\/15{background-color:hsl(var(--ds-warning)/.15)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.fill-current{fill:currentColor}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-\[1px\]{padding:1px}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-0\.5{padding-bottom:.125rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-5{padding-bottom:1.25rem}.pb-6{padding-bottom:1.5rem}.pl-3{padding-left:.75rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pl-\[26px\]{padding-left:26px}.pr-1{padding-right:.25rem}.pr-10{padding-right:2.5rem}.pr-14{padding-right:3.5rem}.pr-2{padding-right:.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.font-sans{font-family:var(--font-sans),system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.text-\[0\.8rem\]{font-size:.8rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[7px\]{font-size:7px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-\[hsl\(var\(--destructive\)\)\]{color:hsl(var(--destructive))}.text-\[hsl\(var\(--ds-info\)\)\]{color:hsl(var(--ds-info))}.text-\[hsl\(var\(--ds-success\)\)\]{color:hsl(var(--ds-success))}.text-\[hsl\(var\(--ds-warning\)\)\]{color:hsl(var(--ds-warning))}.text-accent{color:hsl(var(--ds-accent))}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-danger{color:hsl(var(--ds-danger))}.text-danger-foreground{color:hsl(var(--danger-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground)/.5)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\/50{color:hsl(var(--muted-foreground)/.5)}.text-muted-foreground\/60{color:hsl(var(--muted-foreground)/.6)}.text-muted-foreground\/70{color:hsl(var(--muted-foreground)/.7)}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary-foreground\/80{color:hsl(var(--primary-foreground)/.8)}.text-success{color:hsl(var(--ds-success))}.text-warning{color:hsl(var(--ds-warning))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-primary{accent-color:hsl(var(--primary))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 hsl(var(--shadow-color)/var(--shadow-strength-md)),0 1px 2px -1px hsl(var(--shadow-color)/var(--shadow-strength-md));--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-\[0_0_0_1px_hsl\(var\(--ds-warning\)\/0\.15\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--ds-warning\)\/0\.15\)\]{--tw-shadow:0 0 0 1px hsl(var(--ds-warning)/0.15);--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 20px -4px hsl(var(--shadow-color)/var(--shadow-strength-lg)),0 4px 8px -4px hsl(var(--shadow-color)/var(--shadow-strength-md));--tw-shadow-colored:0 10px 20px -4px var(--tw-shadow-color),0 4px 8px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 8px -2px hsl(var(--shadow-color)/var(--shadow-strength-md)),0 2px 4px -2px hsl(var(--shadow-color)/var(--shadow-strength-sm));--tw-shadow-colored:0 4px 8px -2px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 hsl(var(--shadow-color)/var(--shadow-strength-sm));--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-2{outline-width:2px}.-outline-offset-2{outline-offset:-2px}.outline-destructive{outline-color:hsl(var(--destructive))}.outline-ring{outline-color:hsl(var(--ring))}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-inset{--tw-ring-inset:inset}.ring-primary{--tw-ring-color:hsl(var(--primary))}.ring-ring{--tw-ring-color:hsl(var(--ring))}.ring-warning\/40{--tw-ring-color:hsl(var(--ds-warning)/0.4)}.ring-offset-1{--tw-ring-offset-width:1px}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.ring-offset-card{--tw-ring-offset-color:hsl(var(--card))}.ring-offset-popover{--tw-ring-offset-color:hsl(var(--popover))}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[padding\]{transition-property:padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@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))}}@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))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-200{animation-duration:.2s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--ds-border));border-radius:8px;border:2px solid hsl(var(--background))}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground)/.5)}[data-radix-tabs-content]{height:100%;display:flex;flex-direction:column}.tab-transition{animation:fadeSlideIn .2s ease-out}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.history-drawer{width:100vw!important}}@media (min-width:769px){.history-drawer{max-width:360px}}.sql-builder-main{height:calc(100vh - 140px)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*{box-sizing:border-box}body,html{margin:0;padding:0}.home-page,.page{font-size:var(--fs-md);line-height:var(--lh-normal)}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);justify-content:center;border:var(--bw-1) solid var(--border-strong);background:var(--surface);color:var(--text);min-height:var(--control-h);padding:0 var(--sp-4);border-radius:var(--radius-md);font:inherit;font-size:var(--fs-md);font-weight:var(--fw-semibold);cursor:pointer}.btn:hover{background:var(--surface-2)}.btn-primary{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}.btn-primary:hover{background:var(--brand-hover)}.btn-accent{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.btn-accent:hover{background:var(--accent-hover)}.btn:disabled{opacity:.6;cursor:not-allowed}.input{width:100%;min-height:var(--control-h);padding:0 var(--sp-3);border:var(--bw-1) solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-md)}.input:focus{outline:var(--focus-width) solid var(--focus-ring);border-color:var(--focus)}select.input{padding:0 var(--sp-2)}.label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-2);margin-bottom:var(--sp-1);display:block}.card{background:var(--surface);border:var(--bw-1) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1)}.muted{color:var(--text-muted)}.skeleton{background:var(--surface-3);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:translateX(-100%);animation:sk-shimmer 1.2s var(--ease-standard) infinite}@keyframes sk-shimmer{to{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.toast-stack{position:fixed;top:var(--sp-4);left:50%;transform:translateX(-50%);z-index:var(--z-toast);flex-direction:column;gap:var(--sp-2);pointer-events:none;width:-moz-max-content;width:max-content;max-width:92vw}.toast,.toast-stack{display:flex;align-items:center}.toast{pointer-events:auto;gap:var(--sp-3);min-width:260px;max-width:480px;padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-md);font-size:var(--fs-sm);line-height:var(--lh-snug);box-shadow:var(--shadow-2);border:var(--bw-1) solid}.toast-warning{background:var(--warning-soft);color:var(--warning-ink);border-color:var(--warning)}.toast-danger{background:var(--danger-soft);color:var(--danger-ink);border-color:var(--danger)}.toast-success{background:var(--success-soft);color:var(--success-ink);border-color:var(--success)}.toast-info{background:var(--info-soft);color:var(--info-ink);border-color:var(--info)}.toast-msg{flex:1}.toast-x{background:transparent;border:0;color:inherit;cursor:pointer;font-size:var(--fs-xl);line-height:1;padding:0 var(--sp-1);border-radius:var(--radius-xs)}.toast-x:hover{opacity:.7}.dash{min-height:100vh}.dash-header{display:flex;align-items:center;gap:var(--sp-3);height:56px;padding:var(--sp-3) var(--sp-5);background:var(--brand);color:var(--on-brand);z-index:var(--z-topbar)}.dash-logo{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:var(--fw-heavy);flex:none}.dash-word{font-size:var(--fs-lg);font-weight:var(--fw-bold)}.dash-email{font-size:var(--fs-sm);color:var(--text-on-dark);opacity:.85}.btn-ghost-nav{background:transparent;color:var(--on-brand);border-color:rgba(255,255,255,.4)}.btn-ghost-nav:hover{background:rgba(255,255,255,.12)}.dash-main{max-width:1200px;margin:0 auto;padding:var(--sp-6);display:grid;grid-template-columns:1fr 1.4fr;gap:var(--sp-5)}.dash-people{grid-column:1/-1}.dash-card{padding:var(--sp-5)}.dash-card h2{margin-top:0;font-size:var(--fs-xl)}.dash-card h3{font-size:var(--fs-md);color:var(--text-2);margin:var(--sp-1) 0 var(--sp-2)}.dash-sub{border-top:var(--bw-1) solid var(--border);padding-top:var(--sp-3)}.dash-list{display:flex;flex-direction:column;gap:var(--sp-1);margin-bottom:var(--sp-4)}.dash-prow{justify-content:space-between;min-height:var(--row-h-comfortable)}.dash-prow.sel{background:var(--brand-soft);border-color:var(--brand)}.dash-brow{justify-content:space-between;min-height:var(--row-h)}.dash-brow-name{display:inline-flex;align-items:center;gap:var(--sp-2)}.dash-code{font-family:var(--font-mono)}.dash-code,.dash-open{font-size:var(--fs-xs);color:var(--text-muted)}.dash-form{flex-direction:column}.dash-form,.dash-form-row,.dash-member{display:flex;gap:var(--sp-2)}.dash-member{align-items:center;font-size:var(--fs-sm);padding:var(--sp-1) 0}.dash-brow-wrap{display:flex;align-items:stretch;gap:var(--sp-1)}.dash-brow-wrap .dash-brow{flex:1}.dash-iconbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:var(--row-h);min-height:var(--row-h);padding:0 var(--sp-2);border:var(--bw-1) solid var(--border-strong);background:var(--surface);color:var(--text-muted);border-radius:var(--radius-md);font:inherit;cursor:pointer}.dash-iconbtn:hover{background:var(--danger-soft);color:var(--danger-ink);border-color:var(--danger)}.dash-iconbtn:disabled{opacity:.6;cursor:not-allowed}.dash-iconbtn[data-holding]{background:var(--danger-soft);color:var(--danger-ink);border-color:var(--danger)}.lp-ring-track{stroke:currentColor;opacity:.25}.lp-ring-fill{stroke:var(--danger);stroke-linecap:round}.dash-remove{flex:none;min-height:var(--control-h-sm);padding:0 var(--sp-2);border:var(--bw-1) solid var(--border-strong);background:var(--surface);color:var(--text-muted);border-radius:var(--radius-md);font:inherit;font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.dash-remove:hover{background:var(--danger-soft);color:var(--danger-ink);border-color:var(--danger)}.dash-remove:disabled{opacity:.6;cursor:not-allowed}.dash-avatar{display:grid;place-items:center;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-bold);flex:none}.dash-avatar-sm{width:24px;height:24px;background:var(--accent-2);color:var(--on-accent-2)}.dash-avatar-lg{width:32px;height:32px;background:var(--brand);color:var(--on-brand)}.dash-role{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono)}.dash-people-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:var(--sp-5)}.dash-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.dash-chip{gap:var(--sp-2);border:var(--bw-1) solid var(--border);border-radius:var(--radius-pill);padding:var(--sp-1) var(--sp-3) var(--sp-1) var(--sp-1)}.dash-banner,.dash-chip{display:flex;align-items:center;font-size:var(--fs-sm)}.dash-banner{background:var(--danger-soft);color:var(--danger-ink);border:var(--bw-1) solid var(--danger);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-3);gap:var(--sp-3);margin-bottom:var(--sp-3)}.dash-banner .btn{min-height:var(--control-h-sm)}.dash-inline-err{color:var(--danger-ink);font-size:var(--fs-sm)}.dash-sk{height:var(--row-h)}@media (max-width:768px){.dash-main,.dash-people-grid{grid-template-columns:1fr}.dash-header{height:auto}.dash-form-row,.dash-header{flex-wrap:wrap}}.login-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.login-aside{background:linear-gradient(155deg,var(--brand),var(--brand-hover));color:var(--on-brand);padding:var(--sp-8);display:flex;flex-direction:column;justify-content:space-between;gap:var(--sp-6)}.login-brand{display:flex;align-items:center;gap:var(--sp-3);font-weight:var(--fw-bold);font-size:var(--fs-lg)}.login-logo{width:36px;height:36px;border-radius:var(--radius-md);background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:var(--fw-heavy);flex:none}.login-hero{font-size:var(--fs-3xl);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);margin:0 0 var(--sp-3);max-width:16ch}.login-hero .accent{color:var(--accent)}.login-sub{font-size:var(--fs-md);opacity:.82;max-width:34ch;margin:0}.login-foot,.login-sub{color:var(--text-on-dark)}.login-foot{font-size:var(--fs-xs);opacity:.6}.login-main{display:flex;align-items:center;justify-content:center;padding:var(--sp-7);background:var(--surface)}.login-form{width:100%;max-width:360px;display:flex;flex-direction:column;gap:var(--sp-4)}.login-title{margin:0 0 var(--sp-1);font-size:var(--fs-2xl)}.login-subtitle{font-size:var(--fs-sm);color:var(--text-muted)}.login-err{color:var(--danger-ink);background:var(--danger-soft);border:var(--bw-1) solid var(--danger);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-md);font-size:var(--fs-sm)}.login-submit{width:100%;min-height:var(--control-h-lg)}.login-dev{font-size:var(--fs-xs);text-align:center}@media (max-width:768px){.login-grid{grid-template-columns:1fr}.login-aside{min-height:96px;padding:var(--sp-4) var(--sp-5);flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--sp-3)}.login-foot,.login-story{display:none}.login-main{padding:var(--sp-5)}}.shell{position:fixed;inset:0;display:flex;background:var(--app-bg)}.shell-content{flex:1;min-width:0;height:100vh;overflow:auto;background:var(--ground)}.shell-nav{width:var(--nav-w);flex:none;display:flex;flex-direction:column;gap:2px;padding:var(--sp-3) var(--sp-2);color:var(--glass-nav-text);background:var(--glass-nav-bg);backdrop-filter:blur(var(--glass-blur));border-right:1px solid var(--glass-nav-border);overflow-y:auto;overflow-x:hidden;transition:width var(--dur-med) var(--ease-standard);z-index:var(--z-topbar)}.shell-collapsed .shell-nav{width:var(--nav-w-collapsed)}.shell-collapsed .nav-caret,.shell-collapsed .nav-lbl,.shell-collapsed .nav-sec,.shell-collapsed .nav-soon,.shell-collapsed .nav-sub,.shell-collapsed .nav-user-email,.shell-collapsed .nav-word{display:none}.nav-top{padding:var(--sp-1) var(--sp-2) var(--sp-3)}.nav-brand,.nav-top{display:flex;align-items:center;gap:var(--sp-2)}.nav-brand{min-width:0;overflow:hidden}.nav-logo{width:28px;height:28px;border-radius:7px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:900;flex:none}.nav-word{font-weight:var(--fw-bold);white-space:nowrap}.nav-toggle,.nav-word{font-size:var(--fs-lg)}.nav-toggle{margin-left:auto;background:transparent;border:0;color:var(--glass-nav-text-dim);cursor:pointer;width:28px;height:28px;border-radius:var(--radius-sm);flex:none}.nav-toggle:hover{background:var(--glass-nav-bg-hover);color:#fff}.nav-create{display:flex;align-items:center;gap:var(--sp-3);height:var(--control-h);margin:0 var(--sp-1) var(--sp-3);padding:0 var(--sp-3);border:0;border-radius:var(--radius-md);background:var(--accent);color:var(--on-accent);font:inherit;font-size:var(--fs-md);font-weight:var(--fw-semibold);cursor:pointer}.nav-create:hover{background:var(--accent-hover)}.nav-list{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:var(--sp-3);width:100%;height:var(--row-h);padding:0 var(--sp-3);border:0;background:transparent;color:var(--glass-nav-text);font:inherit;font-size:var(--fs-md);text-align:left;text-decoration:none;border-radius:var(--radius-md);cursor:pointer;position:relative;white-space:nowrap}.nav-item:hover{background:var(--glass-nav-bg-hover);color:#fff}.nav-item.active{color:var(--glass-nav-active);background:rgba(245,168,0,.1)}.nav-item.active:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;border-radius:0 2px 2px 0;background:var(--accent)}.nav-item.soon{opacity:.5;cursor:default}.nav-item.soon:hover{background:transparent;color:var(--glass-nav-text)}.nav-ic{width:var(--icon-md);height:var(--icon-md);display:grid;place-items:center;flex:none}.nav-ic svg{width:18px;height:18px}.nav-lbl{flex:1;overflow:hidden;text-overflow:ellipsis}.nav-soon{opacity:.7}.nav-sec,.nav-soon{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:var(--ls-caps)}.nav-sec{padding:var(--sp-3) var(--sp-3) var(--sp-1);color:var(--glass-nav-text-dim)}.nav-dot{width:10px;height:10px;border-radius:3px}.nav-caret{opacity:.6;font-size:var(--fs-xs)}.nav-sub{display:flex;flex-direction:column;padding-left:var(--sp-6)}.nav-subitem{display:block;padding:6px var(--sp-3);border-radius:var(--radius-sm);color:var(--glass-nav-text-dim);font-size:var(--fs-sm);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-subitem:hover{background:var(--glass-nav-bg-hover);color:#fff}.nav-subitem.active{color:var(--glass-nav-active)}.nav-empty{padding:6px var(--sp-3);font-size:var(--fs-xs);color:var(--glass-nav-text-dim)}.nav-bottom{margin-top:auto;padding-top:var(--sp-2);border-top:1px solid var(--glass-nav-border);display:flex;flex-direction:column;gap:2px}.nav-user{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);min-width:0}.nav-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent-2);color:var(--on-accent-2);display:grid;place-items:center;font-size:var(--fs-xs);font-weight:var(--fw-bold);flex:none}.nav-user-email{font-size:var(--fs-sm);color:var(--glass-nav-text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:768px){.shell-nav{width:var(--nav-w-collapsed)}.shell-nav .nav-caret,.shell-nav .nav-lbl,.shell-nav .nav-sec,.shell-nav .nav-soon,.shell-nav .nav-sub,.shell-nav .nav-user-email,.shell-nav .nav-word{display:none}}.page{max-width:960px;margin:0 auto;padding:var(--sp-6)}.page-head{margin-bottom:var(--sp-5)}.page-title{margin:0 0 var(--sp-1);font-size:var(--fs-2xl);line-height:var(--lh-snug)}.page-sub{margin:0;font-size:var(--fs-sm)}.person-list{display:flex;flex-direction:column}.person-row{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3)}.person-row+.person-row{border-top:var(--bw-1) solid var(--border)}.person-id{display:flex;flex-direction:column;min-width:0;flex:1}.person-name{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text)}.person-email,.person-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-email{font-size:var(--fs-xs);color:var(--text-muted)}.role-chip{display:inline-flex;align-items:center;gap:var(--sp-1);flex:none;padding:2px var(--sp-2);border:var(--bw-1) solid var(--border);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap}.role-chip.role-guest{background:var(--warning-soft);color:var(--warning-ink);border-color:var(--warning)}.status-badge{display:inline-flex;align-items:center;gap:var(--sp-1);flex:none;padding:2px var(--sp-2);border:var(--bw-1) solid;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.status-active{background:var(--success-soft);color:var(--success-ink);border-color:var(--success)}.status-invited{background:var(--warning-soft);color:var(--warning-ink);border-color:var(--warning)}.admin-grid{display:grid;grid-template-columns:360px 1fr;gap:var(--sp-5);align-items:start}.admin-secondary{margin-top:var(--sp-1);padding:var(--sp-3);background:var(--surface-2);border:var(--bw-1) solid var(--border);border-radius:var(--radius-md)}.admin-hint{margin:var(--sp-1) 0 0;font-size:var(--fs-xs);color:var(--text-muted)}.empty-state{display:grid;place-items:center;text-align:center;gap:var(--sp-3);padding:var(--sp-9) var(--sp-6)}.empty-title{margin:0;font-size:var(--fs-xl);font-weight:var(--fw-semibold);color:var(--text)}.empty-sub{margin:0;max-width:44ch;font-size:var(--fs-md);color:var(--text-muted)}.dash-empty{min-height:100vh;display:grid;place-items:center;padding:var(--sp-6)}.empty-mark{width:44px;height:44px;border-radius:var(--radius-md);background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:var(--fw-heavy);font-size:var(--fs-xl)}.nav-sec-row{display:flex;align-items:center;padding-right:var(--sp-2)}.nav-sec-row .nav-sec{flex:1}.nav-secbtn{flex:none;width:24px;height:24px;display:grid;place-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--glass-nav-text-dim);font-size:var(--fs-lg);line-height:1;cursor:pointer}.nav-secbtn:hover{background:var(--glass-nav-bg-hover);color:#fff}.nav-form{flex-direction:column;margin:0 var(--sp-1) var(--sp-2);padding:var(--sp-2);background:var(--glass-nav-bg-hover);border:var(--bw-1) solid var(--glass-nav-border);border-radius:var(--radius-md)}.nav-form,.nav-form-actions{display:flex;gap:var(--sp-2)}.nav-form .btn{flex:1;min-height:var(--control-h-sm);font-size:var(--fs-sm)}.nav-subitem{display:flex;align-items:center;gap:var(--sp-2)}.nav-subic{flex:none;width:14px;height:14px;display:grid;place-items:center}.nav-subic svg{width:14px;height:14px}.nav-subrow{display:flex;align-items:center;gap:var(--sp-1)}.nav-subrow .nav-subitem{flex:1;min-width:0}.nav-subdel{flex:none;width:26px;height:26px;display:grid;place-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--glass-nav-text-dim);cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.nav-subdel svg{width:14px;height:14px}.nav-subdel:focus-visible,.nav-subrow:focus-within .nav-subdel,.nav-subrow:hover .nav-subdel{opacity:1}.nav-subdel:hover{background:var(--danger-soft);color:var(--danger-ink)}@media (hover:none){.nav-subdel{opacity:1}}@media (prefers-reduced-motion:reduce){.nav-subdel{transition:none}}.nav-subadd{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:6px var(--sp-3);border:0;background:transparent;color:var(--glass-nav-text-dim);font:inherit;font-size:var(--fs-sm);text-align:left;border-radius:var(--radius-sm);cursor:pointer}.nav-subadd:hover{background:var(--glass-nav-bg-hover);color:#fff}.nav-subform{display:flex;gap:var(--sp-1);padding:var(--sp-1) var(--sp-3) var(--sp-2)}.nav-subform .btn,.nav-subform .input{min-height:var(--control-h-sm);font-size:var(--fs-sm)}.nav-subform .btn{flex:none;padding:0 var(--sp-3)}.shell-collapsed .nav-form,.shell-collapsed .nav-sec-row{display:none}@media (max-width:768px){.admin-grid{grid-template-columns:1fr}.shell-nav .nav-form,.shell-nav .nav-sec-row{display:none}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.page.task-page{max-width:1400px}.task-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.task-toolbar{display:flex;align-items:center;gap:var(--sp-2);flex:none}.task-split{display:grid;gap:var(--sp-4);align-items:start;grid-template-columns:minmax(0,1.4fr) minmax(380px,1fr)}.task-split[data-collapsed=true]{grid-template-columns:1fr}@media (max-width:1024px){.task-split{grid-template-columns:1fr}}.task-table-card{padding:0;overflow:hidden}@media (max-width:768px){.task-table-card{overflow-x:auto}}.task-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:var(--fs-sm);min-width:520px}.task-table thead th{height:var(--row-h);padding:0 var(--sp-2);text-align:left;background:var(--surface-3);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);border-bottom:var(--bw-1) solid var(--border);border-right:var(--bw-1) solid var(--border);white-space:nowrap}.task-table thead th:last-child{border-right:0}.task-row{height:var(--row-h-dense)}.task-row+.task-row{border-top:var(--bw-1) solid var(--border)}.task-row:hover{background:var(--surface-2)}.task-cell{padding:0;border-right:var(--bw-1) solid var(--border);vertical-align:middle;overflow:hidden}.task-cell:last-child{border-right:0}.task-cell-name{font-weight:var(--fw-medium)}.task-cell-name .dash-code{margin-right:var(--sp-2)}.task-cell-actions,.task-cell-date{white-space:nowrap}.task-cell-actions{text-align:center}.task-cellbtn{display:flex;align-items:center;gap:var(--sp-1);width:100%;min-height:var(--row-h-dense);padding:0 var(--sp-2);background:transparent;border:0;color:var(--text);font:inherit;font-size:var(--fs-sm);text-align:left;cursor:text;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-cellbtn:hover{background:var(--surface-3);box-shadow:inset 0 -1px 0 var(--border-strong)}.task-cellbtn.is-muted{color:var(--text-muted);cursor:text}.task-celltext{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-celltext,.task-editinput{padding:0 var(--sp-2);color:var(--text)}.task-editinput{width:100%;min-height:var(--row-h-dense);border:var(--bw-1) solid var(--focus);border-radius:var(--radius-sm);background:var(--surface);font:inherit;font-size:var(--fs-sm);outline:var(--focus-width) solid var(--focus-ring)}select.task-editinput{padding:0 var(--sp-1)}.task-cell--error{animation:task-err .4s var(--ease-standard)}@keyframes task-err{0%,to{box-shadow:inset 0 0 0 0 var(--danger)}30%{box-shadow:inset 0 0 0 2px var(--danger);background:var(--danger-soft)}}@media (prefers-reduced-motion:reduce){.task-cell--error{animation:none;box-shadow:inset 0 0 0 2px var(--danger)}}.task-addrow{background:var(--surface-2)}.task-addrow .task-editinput{border-color:var(--border-strong);outline:0}.task-addrow .task-editinput:focus{border-color:var(--focus);outline:var(--focus-width) solid var(--focus-ring)}.task-addbtn{min-height:var(--control-h-sm);padding:0 var(--sp-3);font-size:var(--fs-sm)}.task-addname::-moz-placeholder{color:var(--text-muted)}.task-addname::placeholder{color:var(--text-muted)}.task-empty-hint{padding:var(--sp-3) var(--sp-2);color:var(--text-muted);font-size:var(--fs-sm)}.task-readonly-note{padding:var(--sp-2) var(--sp-3);color:var(--text-muted);font-size:var(--fs-xs)}.task-prio{display:inline-flex;align-items:center;gap:var(--sp-1);flex:none;padding:2px var(--sp-2);border:var(--bw-1) solid;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:var(--fw-semibold);white-space:nowrap;background:var(--surface-2);color:var(--text-2);border-color:var(--border)}.task-prio-ic{width:12px;height:12px;flex:none}.task-prio.is-ghost{opacity:.55}.task-prio[data-priority=highest]{background:var(--danger-soft);color:var(--danger-ink);border-color:var(--danger)}.task-prio[data-priority=high]{background:var(--rag-a-soft);color:var(--rag-a-ink);border-color:var(--rag-a)}.task-prio[data-priority=medium]{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.task-prio[data-priority=low]{background:var(--info-soft);color:var(--info-ink);border-color:var(--info)}.task-prio[data-priority=lowest]{background:var(--surface-2);color:var(--text-muted);border-color:var(--border-strong)}.gantt-collapse{display:inline-flex;align-items:center;justify-content:center;width:var(--control-h-sm);height:var(--control-h-sm);flex:none;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.gantt-collapse:hover{background:var(--surface-2);color:var(--text)}.gantt{--gantt-gutter:150px;--gantt-bar-h:16px;display:flex;flex-direction:column;padding:var(--sp-3) var(--sp-4) var(--sp-4)}.gantt-head{display:flex;align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2)}.gantt-title{font-size:var(--fs-md);font-weight:var(--fw-semibold)}.gantt-legend{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-left:auto;font-size:var(--fs-2xs);color:var(--text-muted)}@media (max-width:768px){.gantt-legend{display:none}}.gantt-axis,.gantt-plot{position:relative}.gantt-axis{height:var(--row-h);border-bottom:var(--bw-1) solid var(--border)}.gantt-tick{position:absolute;top:0;transform:translateX(-50%);font-size:var(--fs-2xs);color:var(--text-muted);white-space:nowrap}.gantt-row{position:relative;display:grid;grid-template-columns:var(--gantt-gutter) 1fr;align-items:center;height:var(--row-h-dense)}.gantt-row+.gantt-row{border-top:var(--bw-1) solid var(--border)}.gantt-name{display:flex;align-items:center;gap:var(--sp-1);min-width:0;padding-right:var(--sp-2);font-size:var(--fs-sm);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-track{position:relative;height:100%}.gantt-row-delete{position:absolute;top:50%;left:calc(var(--gantt-gutter) - 26px);transform:translateY(-50%);z-index:2;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:var(--radius-md);background:var(--surface);color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .12s ease,background-color .12s ease,color .12s ease}.gantt-row-delete:focus-visible,.gantt-row-delete[data-holding],.gantt-row:hover .gantt-row-delete{opacity:1}.gantt-row-delete:hover,.gantt-row-delete[data-holding]{background:var(--danger-soft);color:var(--danger-ink)}.gantt-row-delete:disabled{opacity:0!important;pointer-events:none}.gantt-bar{position:absolute;top:50%;transform:translateY(-50%);height:var(--gantt-bar-h);min-width:6px;border-radius:var(--radius-sm);box-shadow:var(--shadow-1);display:flex;align-items:center;gap:2px;padding:0 4px;overflow:hidden}.gantt-bar-ic{width:10px;height:10px;flex:none}.gantt-bar-label{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-bar[data-priority=highest]{background:var(--danger);color:var(--on-danger)}.gantt-bar[data-priority=high]{background:var(--rag-a);color:var(--rag-on)}.gantt-bar[data-priority=medium]{background:var(--brand);color:var(--on-brand)}.gantt-bar[data-priority=low]{background:var(--info);color:var(--on-info)}.gantt-bar[data-priority=lowest]{background:var(--neutral-grey);color:var(--on-danger)}.gantt-nodates{position:absolute;top:50%;right:0;transform:translateY(-50%);padding:0 var(--sp-2);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-2xs)}.gantt-grid{position:absolute;left:var(--gantt-gutter);right:0;top:var(--row-h);bottom:0;pointer-events:none}.gantt-gridline{width:1px;background:var(--border)}.gantt-gridline,.gantt-today{position:absolute;top:0;bottom:0}.gantt-today{width:2px;border-left:var(--bw-2) dashed var(--board-today)}.gantt-today-lbl{position:absolute;top:calc(-1 * var(--row-h));transform:translateX(-50%);font-size:var(--fs-2xs);color:var(--rag-g-ink)}.gantt-empty{padding:var(--sp-6) var(--sp-3);text-align:center}@media (prefers-reduced-motion:reduce){.gantt-card{transition:none}}.home-page{max-width:1100px}.home-section+.home-section{margin-top:var(--sp-6)}.home-h{margin:0 0 var(--sp-3);font-size:var(--fs-xl);font-weight:var(--fw-semibold)}.home-h-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-3)}.home-h-row .home-h{margin:0}.home-grid{display:grid;gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.home-card{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-4);text-decoration:none;color:var(--text);transition:box-shadow var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.home-card:hover{box-shadow:var(--shadow-2);border-color:var(--border-strong)}.home-card-top{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.home-card-name{font-size:var(--fs-md);font-weight:var(--fw-semibold);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-card-sub{font-size:var(--fs-xs);color:var(--text-muted)}.home-mark{flex:none;width:32px;height:32px;border-radius:var(--radius-md);display:grid;place-items:center;background:var(--surface-3);color:var(--text-2);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.home-sk{height:82px;border-radius:var(--radius-lg)}@media (prefers-reduced-motion:reduce){.home-card{transition:none}}.home-mark svg{width:18px;height:18px}.empty-mark svg{width:22px;height:22px}.home-card-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.nav-pageform{flex-direction:column}.nav-pageform,.nav-seg{display:flex;gap:var(--sp-1)}.nav-seg{flex-wrap:wrap;padding:var(--sp-1) var(--sp-3) 0}.nav-segbtn{flex:1 1 auto;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-2);border:var(--bw-1) solid var(--glass-nav-border);background:transparent;color:var(--glass-nav-text-dim);border-radius:var(--radius-sm);font:inherit;font-size:var(--fs-2xs);cursor:pointer;white-space:nowrap}.nav-segbtn:hover{background:var(--glass-nav-bg-hover);color:#fff}.nav-segbtn.is-sel{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.nav-segbtn svg{width:14px;height:14px;flex:none}.page-addform{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3);margin-bottom:var(--sp-4)}.page-seg{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.page-segbtn{flex:1 1 140px;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--control-h);padding:0 var(--sp-3);border:var(--bw-1) solid var(--border-strong);background:var(--surface);color:var(--text-2);border-radius:var(--radius-md);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer}.page-segbtn:hover{background:var(--surface-2)}.page-segbtn.is-sel{background:var(--brand-soft);color:var(--brand-ink);border-color:var(--brand)}.page-segbtn svg{width:16px;height:16px;flex:none}.page-addrow{display:flex;gap:var(--sp-2)}.page-addrow .input{flex:1}@media (max-width:768px){.page-addrow{flex-wrap:wrap}}.page.plan-page{max-width:1500px}.plan-toolbar{gap:var(--sp-3)}.plan-legend{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-2xs);color:var(--text-muted)}@media (max-width:900px){.plan-legend{display:none}}.plan-card{padding:0;overflow:hidden;--plan-row-h:var(--row-h);--plan-head-h:var(--row-h);--plan-bar-h:16px;--plan-plot-pad:var(--sp-3)}.plan-body{display:grid;align-items:start;grid-template-columns:minmax(360px,1fr) minmax(380px,1.15fr)}.plan-body[data-collapsed=true]{grid-template-columns:1fr}.plan-tree-scroll{min-width:0;overflow:auto;max-height:calc(100vh - 210px);scrollbar-gutter:stable;border-right:var(--bw-1) solid var(--border)}.plan-body[data-collapsed=true] .plan-tree-scroll{border-right:0}.plan-time-scroll{min-width:0;overflow-y:auto;overflow-x:auto;max-height:calc(100vh - 210px);scrollbar-gutter:stable}.plan-tree-col{min-width:100%;width:-moz-max-content;width:max-content;font-size:var(--fs-sm)}.plan-tree-head{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:var(--plan-tree-cols,minmax(0,1fr) 108px 108px 118px);height:var(--plan-head-h);background:var(--surface-3);border-bottom:var(--bw-1) solid var(--border)}.plan-h{display:flex;padding:0 var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted);white-space:nowrap}.plan-h,.plan-row{align-items:center}.plan-row{display:grid;height:var(--plan-row-h);grid-template-columns:var(--plan-tree-cols,minmax(0,1fr) 108px 108px 118px);border-bottom:var(--bw-1) solid var(--border)}.plan-row:hover{background:var(--surface-2)}.plan-cell{min-width:0;height:100%;display:flex;align-items:center;padding:0 var(--sp-2);overflow:hidden}.plan-cell-name{gap:var(--sp-1);padding-left:0}.plan-cell-actions{gap:2px;padding:0 var(--sp-1);justify-content:flex-end}.plan-cell-check,.plan-h-check{justify-content:center;padding:0}.plan-bulkbar{position:fixed;left:50%;bottom:1.5rem;transform:translateX(-50%);z-index:50;max-width:calc(100vw - 2rem)}.plan-linked{flex:none;padding:0 4px;border-radius:var(--radius-xs);background:var(--surface-3);color:var(--text-muted);font-size:var(--fs-2xs);font-weight:var(--fw-semibold)}.plan-deliv-label{flex:none;max-width:34%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-xs)}.plan-progress{display:inline-flex;align-items:center;gap:var(--sp-1);width:100%}.plan-progress-bar{flex:1 1 auto;height:5px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.plan-progress-bar>span{display:block;height:100%;border-radius:var(--radius-pill);background:var(--brand)}.plan-progress-num{flex:none;font-size:var(--fs-2xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.plan-tags{display:inline-flex;gap:3px;overflow:hidden}.plan-tag{flex:none;padding:0 5px;border-radius:var(--radius-xs);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-2xs);white-space:nowrap}.plan-check{color:var(--rag-g,var(--brand))}.plan-caret{flex:none;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:transparent;border:0;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-xs)}.plan-caret:hover{background:var(--surface-3);color:var(--text)}.plan-caret--leaf{cursor:default}.plan-caret-ic{transition:transform var(--dur-fast) var(--ease-standard)}.plan-caret-ic.is-open{transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){.plan-caret-ic{transition:none}}.plan-namebtn{flex:1 1 auto;min-width:0}.plan-nametext{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-act{display:inline-flex;align-items:center;justify-content:center;flex:none;width:24px;height:24px;padding:0;background:transparent;border:var(--bw-1) solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.plan-act:hover{background:var(--surface-3);color:var(--text)}.plan-act:disabled{opacity:.4;cursor:not-allowed}.plan-act:disabled:hover{background:transparent;color:var(--text-muted)}.plan-act--danger:hover{background:var(--danger-soft);color:var(--danger-ink)}.plan-addrow{padding:var(--sp-1) var(--sp-2);background:var(--surface-2);border-top:var(--bw-1) solid var(--border)}.plan-addbtn{display:inline-flex;align-items:center;gap:var(--sp-1);min-height:var(--control-h-sm);padding:0 var(--sp-2);background:transparent;border:0;color:var(--brand-ink);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-semibold);cursor:pointer;border-radius:var(--radius-sm)}.plan-addbtn:hover{background:var(--surface-3)}.plan-addbtn:disabled{color:var(--text-disabled);cursor:default;background:transparent}.plan-empty{padding:var(--sp-8) var(--sp-4);text-align:center}.plan-empty .empty-title{font-size:var(--fs-lg)}.plan-time-col{position:relative;min-width:100%}.plan-axis{position:sticky;top:0;z-index:2;height:var(--plan-head-h);background:var(--surface-3);border-bottom:var(--bw-1) solid var(--border)}.plan-axis-track{position:absolute;top:0;bottom:0;left:var(--plan-plot-pad);right:var(--plan-plot-pad)}.plan-tick{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:var(--fs-2xs);color:var(--text-muted);white-space:nowrap}.plan-time-body{position:relative}.plan-time-overlay{position:absolute;top:0;bottom:0;left:var(--plan-plot-pad);right:var(--plan-plot-pad);pointer-events:none}.plan-gridline{width:1px;background:var(--border)}.plan-gridline,.plan-today{position:absolute;top:0;bottom:0}.plan-today{width:0;border-left:var(--bw-2) dashed var(--board-today)}.plan-today-lbl{position:absolute;top:2px;transform:translateX(-50%);padding:0 2px;border-radius:var(--radius-xs);background:var(--surface);font-size:var(--fs-2xs);color:var(--rag-g-ink)}.plan-time-row{height:var(--plan-row-h);border-bottom:var(--bw-1) solid var(--border)}.plan-time-track{position:relative;height:100%;margin:0 var(--plan-plot-pad)}.plan-bar{position:absolute;top:50%;transform:translateY(-50%);z-index:1;height:var(--plan-bar-h);min-width:8px;border-radius:var(--radius-sm);box-shadow:var(--shadow-1);display:flex;align-items:center;gap:2px;padding:0 4px;overflow:hidden}.plan-bar-ic{width:10px;height:10px;flex:none}.plan-bar-label{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-bar[data-priority=highest]{background:var(--danger);color:var(--on-danger)}.plan-bar[data-priority=high]{background:var(--rag-a);color:var(--rag-on)}.plan-bar[data-priority=medium]{background:var(--brand);color:var(--on-brand)}.plan-bar[data-priority=low]{background:var(--info);color:var(--on-info)}.plan-bar[data-priority=lowest]{background:var(--neutral-grey);color:var(--on-danger)}.plan-bar--summary{border-radius:var(--radius-xs);background:var(--surface-3);border:var(--bw-1) solid var(--border-strong);color:var(--text-2);box-shadow:none}.plan-nodates{position:absolute;top:50%;left:0;transform:translateY(-50%);padding:0 var(--sp-2);border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-2xs)}@media (max-width:900px){.plan-body{grid-template-columns:minmax(360px,1fr) minmax(380px,1.15fr)}}.tracker-timeline{--plan-row-h:calc(var(--row-h-dense) + var(--bw-1));--plan-head-h:2rem;--plan-bar-h:14px;--plan-plot-pad:var(--sp-3);display:flex;flex-direction:column;height:100%;min-height:0}.tracker-timeline-scroll{flex:1 1 auto;min-height:0;overflow:auto}.tracker-timeline-body{display:grid;align-items:start;min-width:820px;grid-template-columns:minmax(420px,1.35fr) minmax(340px,1fr)}@media (max-width:1024px){.tracker-timeline-body{grid-template-columns:minmax(360px,1.2fr) minmax(300px,1fr)}}.tracker-grid-col{min-width:0;border-right:var(--bw-1) solid var(--border)}.tracker-embedded tbody tr{height:var(--row-h-dense)}.tracker-embedded tbody td{height:var(--row-h-dense);max-height:var(--row-h-dense);padding-top:0;padding-bottom:0;box-sizing:border-box;white-space:nowrap;overflow:hidden}.tracker-embedded tbody td .flex-wrap{flex-wrap:nowrap}.plan-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:var(--sp-1);padding:0 5px;background:var(--brand-soft);color:var(--brand-ink);font-size:var(--fs-2xs);font-weight:var(--fw-semibold)}.plan-baseline,.plan-count{border-radius:var(--radius-pill)}.plan-baseline{position:absolute;top:calc(50% + var(--plan-bar-h) / 2 - 1px);height:3px;background:var(--neutral-grey);opacity:.7;z-index:0}.plan-bar.is-draggable{cursor:grab;touch-action:none}.plan-bar.is-draggable:active,.plan-bar.is-dragging{cursor:grabbing}.plan-bar.is-dragging{box-shadow:var(--shadow-2);z-index:4;opacity:.95}.plan-bar.is-draggable:focus-visible{outline:var(--focus-width) solid var(--focus-ring);outline-offset:1px}.plan-bar.is-draggable:after,.plan-bar.is-draggable:before{content:"";position:absolute;top:2px;bottom:2px;width:3px;border-radius:2px;background:currentColor;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.plan-bar.is-draggable:before{left:3px}.plan-bar.is-draggable:after{right:3px}.plan-bar.is-draggable:hover:after,.plan-bar.is-draggable:hover:before{opacity:.5}@media (prefers-reduced-motion:reduce){.plan-bar.is-draggable:after,.plan-bar.is-draggable:before{transition:none}}.plan-bar[data-slip=late]{box-shadow:var(--shadow-1),inset 0 0 0 var(--bw-2) var(--rag-r)}.plan-slip{margin-left:auto;flex:none;display:inline-flex;align-items:center;gap:2px;padding:0 4px;height:13px;border-radius:var(--radius-pill);font-size:var(--fs-2xs);font-weight:var(--fw-semibold)}.plan-slip[data-slip=late]{background:var(--rag-r-soft);color:var(--rag-r-ink)}.plan-slip[data-slip=early]{background:var(--rag-g-soft);color:var(--rag-g-ink)}.plan-bar--ghost{background:transparent;box-shadow:none;z-index:3;border:var(--bw-2) dashed var(--brand);color:var(--brand-ink);pointer-events:none}.plan-dep-layer{position:absolute;top:0;left:0;overflow:visible}.plan-dep-line{fill:none;stroke:var(--border-strong);stroke-width:1.5}.plan-dep-arrowhead{fill:var(--border-strong)}.plan-link-handle{position:absolute;top:50%;z-index:5;transform:translateY(-50%);margin-left:2px;width:12px;height:12px;padding:0;border-radius:var(--radius-pill);background:var(--surface);border:var(--bw-2) solid var(--brand);box-shadow:var(--shadow-1);cursor:crosshair;touch-action:none;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.plan-time-row:hover .plan-link-handle{opacity:1}.plan-link-handle:hover{background:var(--brand)}.plan-link-handle:focus-visible{opacity:1;outline:var(--focus-width) solid var(--focus-ring);outline-offset:1px}.plan-link-draft{fill:none;stroke:var(--brand);stroke-width:2;stroke-dasharray:4 3}.plan-time-row[data-linktarget=true]{background:var(--brand-soft)}@media (prefers-reduced-motion:reduce){.plan-link-handle{transition:none}}.plan-link-popover{position:fixed;z-index:70;width:244px;padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-2);box-shadow:var(--shadow-3)}.plan-link-pop-title{font-size:var(--fs-sm);font-weight:var(--fw-semibold)}.plan-link-pop-sub{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:var(--fs-xs);color:var(--text-muted)}.plan-link-pop-actions{display:flex;justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-1)}.plan-zoom{display:inline-flex;align-items:center;overflow:hidden;border:var(--bw-1) solid var(--border);border-radius:var(--radius-sm)}.plan-zoom-btn{height:var(--control-h-sm,28px);padding:0 var(--sp-2);background:var(--surface);border:0;border-left:var(--bw-1) solid var(--border);color:var(--text-2);font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer}.plan-zoom-btn:first-child{border-left:0}.plan-zoom-btn:hover{background:var(--surface-2)}.plan-zoom-btn.is-active{background:var(--brand);color:var(--on-brand)}.btn.btn-icon{width:32px;min-width:32px;padding-left:0;padding-right:0;justify-content:center;gap:0}.pop-xlsx{position:relative;display:inline-flex}.pop-xlsx-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:20;width:250px;padding:var(--sp-3);gap:var(--sp-2);background:var(--surface);border:var(--bw-1) solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-3)}.pop-xlsx-modes,.pop-xlsx-panel{display:flex;flex-direction:column}.pop-xlsx-modes{gap:var(--sp-1)}.pop-xlsx-mode{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);cursor:pointer}.pop-xlsx-cols{display:flex;flex-direction:column;gap:2px;max-height:240px;overflow:auto;border-top:var(--bw-1) solid var(--border);padding-top:var(--sp-2)}.pop-xlsx-col{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);cursor:pointer;padding:2px 0}.pop-xlsx-actions{display:flex;justify-content:flex-end;gap:var(--sp-2);border-top:var(--bw-1) solid var(--border);padding-top:var(--sp-2)}.plan-drag-handle{width:16px;flex:none;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);cursor:grab;touch-action:none;opacity:0;transition:opacity var(--dur-fast) var(--ease-standard)}.plan-row:hover .plan-drag-handle{opacity:1}.plan-drag-handle:active{cursor:grabbing}.plan-row.is-drag-source{opacity:.5}.plan-row.is-drop-before{box-shadow:inset 0 2px 0 0 var(--brand)}.plan-row.is-drop-after{box-shadow:inset 0 -2px 0 0 var(--brand)}.plan-row.is-drop-inside{background:var(--brand-soft);outline:var(--bw-1) dashed var(--brand);outline-offset:-1px}@media (prefers-reduced-motion:reduce){.plan-drag-handle{transition:none}}.plan-preview{margin-bottom:var(--sp-3);padding:var(--sp-3);border-left:3px solid var(--brand);background:var(--brand-soft)}.plan-preview-head{display:flex;align-items:flex-start;gap:var(--sp-3);justify-content:space-between;flex-wrap:wrap}.plan-preview-titles{min-width:0}.plan-preview-badge{display:inline-block;margin-bottom:var(--sp-1);padding:1px var(--sp-2);border-radius:var(--radius-pill);background:var(--warning-soft);color:var(--warning-ink);font-size:var(--fs-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.03em}.plan-preview-title{font-size:var(--fs-md);font-weight:var(--fw-semibold)}.plan-preview-sum{font-size:var(--fs-sm);margin-top:2px}.plan-preview-actions{display:flex;gap:var(--sp-2);flex:none}.plan-preview-empty{margin-top:var(--sp-2);font-size:var(--fs-sm)}.plan-preview-caption{margin:var(--sp-3) 0 var(--sp-1);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-2)}.plan-preview-table{border:var(--bw-1) solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.plan-preview-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);font-size:var(--fs-sm)}.plan-preview-row+.plan-preview-row{border-top:var(--bw-1) solid var(--border)}.plan-preview-row--head{background:var(--surface-3);color:var(--text-muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold)}.plan-preview-name{display:flex;align-items:center;gap:var(--sp-1);min-width:0}.plan-preview-dates,.plan-preview-nametext{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-preview-dates{color:var(--text-muted)}.plan-preview-dates--new{color:var(--brand-ink);font-weight:var(--fw-semibold)}.plan-preview-arrow{color:var(--text-muted);text-align:center}.plan-modal-scrim{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:var(--sp-8) var(--sp-4);background:rgba(0,0,0,.38);overflow:auto}.plan-modal{width:min(560px,100%);padding:0;max-height:calc(100vh - 2 * var(--sp-8));display:flex;flex-direction:column;box-shadow:var(--shadow-3)}.plan-modal-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3);border-bottom:var(--bw-1) solid var(--border)}.plan-modal-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold)}.plan-modal-close{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm)}.plan-modal-close:hover{background:var(--surface-2);color:var(--text)}.plan-modal-body{padding:var(--sp-3);overflow:auto}.plan-dep-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2)}.plan-dep-field{display:flex;flex-direction:column;gap:2px;min-width:0}.plan-dep-field--sm{grid-column:span 1}.plan-dep-lbl{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-muted)}.plan-dep-hint{margin-top:var(--sp-2);font-size:var(--fs-xs);color:var(--rag-r-ink)}.plan-dep-formactions{display:flex;justify-content:flex-end;margin-top:var(--sp-2)}.plan-dep-list{margin-top:var(--sp-4);border-top:var(--bw-1) solid var(--border);padding-top:var(--sp-3)}.plan-dep-listhead{font-weight:var(--fw-semibold);margin-bottom:var(--sp-2)}.plan-dep-empty,.plan-dep-listhead{font-size:var(--fs-sm)}.plan-dep-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.plan-dep-item{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);padding:4px var(--sp-2);border:var(--bw-1) solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.plan-dep-itemtext{display:flex;align-items:center;gap:var(--sp-1);min-width:0;font-size:var(--fs-sm);flex-wrap:wrap}.plan-dep-code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.plan-dep-badge{flex:none;padding:0 5px;border-radius:var(--radius-pill);background:var(--surface-3);color:var(--text-2);font-size:var(--fs-2xs);font-weight:var(--fw-semibold)}.plan-dep-arrowic{flex:none;color:var(--text-muted)}.pop-root{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;background:var(--surface-2)}.pop-toolbar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);background:var(--surface);border-bottom:var(--bw-1) solid var(--border);box-shadow:var(--shadow-1)}.pop-toolbar-title{display:flex;align-items:baseline;gap:var(--sp-2);min-width:0}.pop-toolbar-tag{flex:none;padding:1px var(--sp-2);border-radius:var(--radius-pill);background:var(--brand-soft);color:var(--brand-ink);font-size:var(--fs-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.03em}.pop-toolbar-name{font-size:var(--fs-md);font-weight:var(--fw-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pop-toolbar-actions{display:flex;align-items:center;gap:var(--sp-2);flex:none}.pop-toolbar-hint{font-size:var(--fs-xs)}@media (max-width:720px){.pop-toolbar-hint{display:none}}.pop-scroll{flex:1 1 auto;overflow:auto;padding:var(--sp-6);display:flex;justify-content:center}.pop-sheet{flex:none;width:1062px;min-height:733px;padding:14px 16px;background:var(--surface);color:var(--text);border:var(--bw-1) solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-3);display:flex;flex-direction:column;--plan-row-h:24px;--plan-head-h:26px;--plan-bar-h:13px;--plan-plot-pad:6px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.pop-sheet-head{flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);padding-bottom:var(--sp-2);border-bottom:var(--bw-2) solid var(--brand)}.pop-sheet-kicker{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--brand-ink)}.pop-sheet-title{font-size:var(--fs-xl);font-weight:var(--fw-bold);line-height:1.15}.pop-sheet-meta{flex:none;flex-direction:column;align-items:flex-end;gap:2px;font-size:var(--fs-xs);white-space:nowrap}.pop-legend,.pop-sheet-meta{display:flex;color:var(--text-muted)}.pop-legend{flex:none;flex-wrap:wrap;padding:var(--sp-2) 0;font-size:var(--fs-2xs)}.pop-legend,.pop-legend-group{align-items:center;gap:var(--sp-2)}.pop-legend-group{display:flex}.pop-legend-sep{width:1px;align-self:stretch;background:var(--border)}.pop-legend-item{display:inline-flex;align-items:center;gap:3px}.pop-legend-note{font-style:italic}.pop-split{flex:1 1 auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;border:var(--bw-1) solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.pop-grid{min-width:0;border-right:var(--bw-1) solid var(--border);font-size:var(--fs-2xs)}.pop-grid-head,.pop-grid-row{display:grid;grid-template-columns:minmax(90px,1fr) 52px 74px 74px 92px 26px 58px 40px;align-items:center}.pop-grid-head{height:var(--plan-head-h);background:var(--surface-3);border-bottom:var(--bw-1) solid var(--border)}.pop-h{display:flex;align-items:center;height:100%;padding:0 6px;font-weight:var(--fw-semibold);color:var(--text-muted);border-right:var(--bw-1) solid var(--border);white-space:nowrap}.pop-h:last-child{border-right:0}.pop-h-mid{justify-content:center}.pop-grid-row{height:var(--plan-row-h);border-bottom:var(--bw-1) solid var(--border)}.pop-grid-row:last-child{border-bottom:0}.pop-grid-row.is-summary{background:var(--surface-2);font-weight:var(--fw-semibold)}.pop-c{min-width:0;height:100%;display:flex;align-items:center;gap:4px;padding:0 6px;border-right:var(--bw-1) solid var(--border);overflow:hidden;white-space:nowrap}.pop-c:last-child{border-right:0}.pop-c-mid{justify-content:center}.pop-code{flex:none;font-family:var(--font-mono,monospace);font-size:var(--fs-2xs);color:var(--text-muted)}.pop-tasktext{overflow:hidden;text-overflow:ellipsis}.pop-c-date,.pop-c-deps,.pop-c-owner{color:var(--text-2);text-overflow:ellipsis}.pop-c-status :where(.badge,[class*=badge]){max-width:100%}.pop-slip{display:inline-flex;align-items:center;gap:2px;padding:0 4px;height:14px;border-radius:var(--radius-pill);font-weight:var(--fw-semibold)}.pop-slip[data-slip=late]{background:var(--rag-r-soft);color:var(--rag-r-ink)}.pop-slip[data-slip=early]{background:var(--rag-g-soft);color:var(--rag-g-ink)}.pop-slip[data-slip=on]{color:var(--text-muted)}.pop-slip-ic{flex:none}.pop-gantt{min-width:0;position:relative}.pop-gantt .plan-axis{background:var(--surface-3)}.pop-empty{flex:1 1 auto;flex-direction:column;justify-content:center;gap:4px;padding:var(--sp-8);text-align:center}.pop-empty,.pop-sheet-foot{display:flex;align-items:center}.pop-sheet-foot{flex:none;justify-content:space-between;margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:var(--bw-1) solid var(--border);font-size:var(--fs-2xs);color:var(--text-muted)}@media print{body.pop-open .pop-toolbar,body.pop-open>:not(.pop-root){display:none!important}body.pop-open .pop-root{position:static!important;overflow:visible!important;background:transparent!important;height:auto!important}body.pop-open .pop-scroll{overflow:visible!important;padding:0!important;display:block!important}body.pop-open .pop-sheet{width:100%!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}body.pop-open .plan-scroll{overflow:visible!important;max-height:none!important}}.file\:mr-3::file-selector-button{margin-right:.75rem}.file\:rounded-md::file-selector-button{border-radius:calc(var(--radius) - 2px)}.file\:border-0::file-selector-button{border-width:0}.file\:bg-primary::file-selector-button{background-color:hsl(var(--primary))}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:px-3::file-selector-button{padding-left:.75rem;padding-right:.75rem}.file\:py-1\.5::file-selector-button{padding-top:.375rem;padding-bottom:.375rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-primary-foreground::file-selector-button{color:hsl(var(--primary-foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:bottom-0:before{content:var(--tw-content);bottom:0}.before\:left-0:before{content:var(--tw-content);left:0}.before\:top-0:before{content:var(--tw-content);top:0}.before\:w-\[3px\]:before{content:var(--tw-content);width:3px}.before\:bg-accent\/70:before{content:var(--tw-content);background-color:hsl(var(--ds-accent)/.7)}.before\:bg-danger\/70:before{content:var(--tw-content);background-color:hsl(var(--ds-danger)/.7)}.before\:bg-primary\/70:before{content:var(--tw-content);background-color:hsl(var(--primary)/.7)}.before\:bg-success\/70:before{content:var(--tw-content);background-color:hsl(var(--ds-success)/.7)}.before\:bg-warning\/70:before{content:var(--tw-content);background-color:hsl(var(--ds-warning)/.7)}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.last\:border-0:last-child{border-width:0}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}.hover\:border-border:hover{border-color:hsl(var(--ds-border))}.hover\:border-foreground\/20:hover{border-color:hsl(var(--foreground)/.2)}.hover\:bg-\[hsl\(var\(--ds-success\)\/0\.9\)\]:hover{background-color:hsl(var(--ds-success)/.9)}.hover\:bg-danger\/10:hover{background-color:hsl(var(--ds-danger)/.1)}.hover\:bg-danger\/90:hover{background-color:hsl(var(--ds-danger)/.9)}.hover\:bg-destructive\/85:hover{background-color:hsl(var(--destructive)/.85)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive)/.9)}.hover\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\:bg-primary\/30:hover{background-color:hsl(var(--primary)/.3)}.hover\:bg-primary\/85:hover{background-color:hsl(var(--primary)/.85)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-surface-2:hover{background-color:hsl(var(--ds-surface-2))}.hover\:bg-surface-2\/50:hover{background-color:hsl(var(--ds-surface-2)/.5)}.hover\:bg-surface-2\/60:hover{background-color:hsl(var(--ds-surface-2)/.6)}.hover\:bg-surface-3:hover{background-color:hsl(var(--ds-surface-3))}.hover\:px-2\.5:hover{padding-left:.625rem;padding-right:.625rem}.hover\:text-danger:hover{color:hsl(var(--ds-danger))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-primary:hover{color:hsl(var(--primary))}.hover\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:file\:bg-primary\/90::file-selector-button:hover{background-color:hsl(var(--primary)/.9)}.focus\:border-input:focus{border-color:hsl(var(--input))}.focus\:bg-accent:focus{background-color:hsl(var(--ds-accent))}.focus\:bg-background:focus{background-color:hsl(var(--background))}.focus\:bg-primary:focus{background-color:hsl(var(--primary))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:text-danger:focus{color:hsl(var(--ds-danger))}.focus\:text-destructive:focus{color:hsl(var(--destructive))}.focus\:text-primary-foreground:focus{color:hsl(var(--primary-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:bg-surface-2:focus-visible{background-color:hsl(var(--ds-surface-2))}.focus-visible\:opacity-100:focus-visible{opacity:1}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.focus-visible\:ring-offset-surface-1:focus-visible{--tw-ring-offset-color:hsl(var(--surface-1))}.active\:bg-primary\/40:active{background-color:hsl(var(--primary)/.4)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\:opacity-100,.group\/navrow:hover .group-hover\/navrow\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted)/.4)}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive)/.3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity:1;color:rgb(254 242 242/var(--tw-text-opacity,1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color:#dc2626}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.aria-selected\:bg-accent[aria-selected=true]{background-color:hsl(var(--ds-accent))}.aria-selected\:bg-accent\/50[aria-selected=true]{background-color:hsl(var(--ds-accent)/.5)}.aria-selected\:text-accent-foreground[aria-selected=true]{color:hsl(var(--accent-foreground))}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.aria-selected\:opacity-30[aria-selected=true]{opacity:.3}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom],.data-\[side\=left\]\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right],.data-\[side\=top\]\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel],.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[state\=active\]\:border-primary[data-state=active]{border-color:hsl(var(--primary))}.data-\[selected\=true\]\:bg-surface-2[data-selected=true]{background-color:hsl(var(--ds-surface-2))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--ds-accent))}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=open\]\:bg-surface-2[data-state=open],.data-\[state\=selected\]\:bg-surface-2[data-state=selected]{background-color:hsl(var(--ds-surface-2))}.data-\[selected\=true\]\:text-foreground[data-selected=true]{color:hsl(var(--foreground))}.data-\[state\=active\]\:text-primary[data-state=active]{color:hsl(var(--primary))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=open\]\:text-foreground[data-state=open]{color:hsl(var(--foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity:0.8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}@media (min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:col-span-1{grid-column:span 1/span 1}.sm\:col-span-2{grid-column:span 2/span 2}.sm\:mt-0{margin-top:0}.sm\:max-w-lg{max-width:32rem}.sm\:max-w-md{max-width:28rem}.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[minmax\(0\2c 1fr\)_140px\]{grid-template-columns:minmax(0,1fr) 140px}.sm\:grid-cols-\[minmax\(0\2c 1fr\)_180px\]{grid-template-columns:minmax(0,1fr) 180px}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:items-start{align-items:flex-start}.sm\:items-end{align-items:flex-end}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:rounded-md{border-radius:calc(var(--radius) - 2px)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y:100%}}@media (min-width:768px){.md\:order-1{order:1}.md\:order-2{order:2}.md\:max-w-\[420px\]{max-width:420px}.md\:grid-cols-\[minmax\(0\2c 1fr\)_minmax\(0\2c 1\.4fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.md\:border-r{border-right-width:1px}.md\:border-t-0{border-top-width:0}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_minmax\(0\2c 1\.4fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}.lg\:grid-cols-\[minmax\(0\2c 260px\)_minmax\(0\2c 1fr\)\]{grid-template-columns:minmax(0,260px) minmax(0,1fr)}}.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]){background-color:hsl(var(--ds-accent))}.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside){background-color:hsl(var(--ds-accent)/.5)}.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:text-\[hsl\(var\(--destructive\)\)\]>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-\[hsl\(var\(--ds-info\)\)\]>svg{color:hsl(var(--ds-info))}.\[\&\>svg\]\:text-\[hsl\(var\(--ds-success\)\)\]>svg{color:hsl(var(--ds-success))}.\[\&\>svg\]\:text-\[hsl\(var\(--ds-warning\)\)\]>svg{color:hsl(var(--ds-warning))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\]\:h-5 svg{height:1.25rem}.\[\&_svg\]\:w-5 svg{width:1.25rem}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}