@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:var(--font-family);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-300:oklch(80.8% .114 19.571);--color-red-600:oklch(57.7% .245 27.325);--color-red-900:oklch(39.6% .141 25.723);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-normal:0em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-hq-accent:var(--color-accent);--color-hq-accent-hover:var(--color-accent-hover);--color-hq-accent-light:var(--color-accent-light);--color-hq-surface:var(--bg-surface);--color-hq-app:var(--bg-app);--color-hq-hover:var(--bg-hover);--color-hq-selected:var(--bg-selected);--color-hq-border:var(--border-color);--color-hq-border-light:var(--border-color-light);--color-hq-primary:var(--color-gray-700);--color-hq-body:var(--color-gray-600);--color-hq-secondary:var(--color-gray-500);--color-hq-muted:var(--color-gray-400);--color-hq-gray-50:var(--color-gray-50);--color-hq-gray-100:var(--color-gray-100);--color-hq-gray-200:var(--color-gray-200);--color-hq-gray-300:var(--color-gray-300);--color-hq-gray-600:var(--color-gray-600);--color-hq-gray-700:var(--color-gray-700);--color-hq-success:var(--color-success);--color-hq-success-bg:var(--color-success-bg);--color-hq-success-border:var(--color-success-border);--color-hq-success-text:var(--color-success-text);--color-hq-warning:var(--color-warning);--color-hq-warning-bg:var(--color-warning-bg);--color-hq-warning-border:var(--color-warning-border);--color-hq-warning-text:var(--color-warning-text);--color-hq-danger:var(--color-danger);--color-hq-danger-bg:var(--color-danger-bg);--color-hq-danger-border:var(--color-danger-border);--color-hq-danger-text:var(--color-danger-text);--color-hq-info:var(--color-info);--color-hq-info-bg:var(--color-info-bg);--color-hq-info-border:var(--color-info-border);--color-hq-info-text:var(--color-info-text);--color-hq-white:var(--color-white);--spacing-hq-1:var(--space-1);--spacing-hq-2:var(--space-2);--spacing-hq-3:var(--space-3);--spacing-hq-4:var(--space-4);--spacing-hq-5:var(--space-5);--spacing-hq-6:var(--space-6);--spacing-hq-8:var(--space-8);--spacing-hq-10:var(--space-10);--spacing-hq-12:var(--space-12);--radius-hq-sm:var(--radius-sm);--radius-hq-md:var(--radius-md);--radius-hq-lg:var(--radius-lg);--text-hq-xs:var(--font-size-xs);--text-hq-sm:var(--font-size-sm);--text-hq-base:var(--font-size-base);--text-hq-md:var(--font-size-md);--text-hq-lg:var(--font-size-lg);--text-hq-xl:var(--font-size-xl);--text-hq-xxl:var(--font-size-xxl)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.\!absolute{position:absolute!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-\[0\]{top:0}.top-\[56px\]{top:56px}.top-\[80px\]{top:80px}.top-\[calc\(100\%\+4px\)\]{top:calc(100% + 4px)}.top-\[calc\(100\%\+var\(--space-1\)\)\]{top:calc(100% + var(--space-1))}.top-full{top:100%}.top-hq-2{top:var(--spacing-hq-2)}.\!right-6{right:calc(var(--spacing) * 6)!important}.right-0{right:calc(var(--spacing) * 0)}.right-4{right:calc(var(--spacing) * 4)}.right-5{right:calc(var(--spacing) * 5)}.right-hq-2{right:var(--spacing-hq-2)}.right-hq-3{right:var(--spacing-hq-3)}.right-hq-4{right:var(--spacing-hq-4)}.right-hq-5{right:var(--spacing-hq-5)}.right-hq-6{right:var(--spacing-hq-6)}.\!bottom-6{bottom:calc(var(--spacing) * 6)!important}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-5{bottom:calc(var(--spacing) * 5)}.bottom-6{bottom:calc(var(--spacing) * 6)}.bottom-14{bottom:calc(var(--spacing) * 14)}.bottom-\[0\]{bottom:0}.bottom-hq-4{bottom:var(--spacing-hq-4)}.bottom-hq-5{bottom:var(--spacing-hq-5)}.bottom-hq-6{bottom:var(--spacing-hq-6)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-\[var\(--sidebar-width\)\]{left:var(--sidebar-width)}.left-hq-2{left:var(--spacing-hq-2)}.left-hq-3{left:var(--spacing-hq-3)}.left-hq-4{left:var(--spacing-hq-4)}.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-\[90\]{z-index:90}.z-\[100\]{z-index:100}.z-\[998\]{z-index:998}.z-\[999\]{z-index:999}.z-\[1000\]{z-index:1000}.z-\[9999\]{z-index:9999}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.m-\[0\]{margin:0}.m-auto{margin:auto}.m-hq-3{margin:var(--spacing-hq-3)}.mx-auto{margin-inline:auto}.mx-hq-1{margin-inline:var(--spacing-hq-1)}.mx-hq-2{margin-inline:var(--spacing-hq-2)}.mx-hq-4{margin-inline:var(--spacing-hq-4)}.my-hq-1{margin-block:var(--spacing-hq-1)}.my-hq-2{margin-block:var(--spacing-hq-2)}.my-hq-3{margin-block:var(--spacing-hq-3)}.my-hq-6{margin-block:var(--spacing-hq-6)}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-\[2px\]{margin-top:2px}.mt-auto{margin-top:auto}.mt-hq-1{margin-top:var(--spacing-hq-1)}.mt-hq-2{margin-top:var(--spacing-hq-2)}.mt-hq-3{margin-top:var(--spacing-hq-3)}.mt-hq-4{margin-top:var(--spacing-hq-4)}.mt-hq-5{margin-top:var(--spacing-hq-5)}.mt-hq-6{margin-top:var(--spacing-hq-6)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-hq-1{margin-right:var(--spacing-hq-1)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-\[-1px\]{margin-bottom:-1px}.mb-\[6px\]{margin-bottom:6px}.mb-hq-1{margin-bottom:var(--spacing-hq-1)}.mb-hq-2{margin-bottom:var(--spacing-hq-2)}.mb-hq-3{margin-bottom:var(--spacing-hq-3)}.mb-hq-4{margin-bottom:var(--spacing-hq-4)}.mb-hq-5{margin-bottom:var(--spacing-hq-5)}.mb-hq-6{margin-bottom:var(--spacing-hq-6)}.mb-hq-8{margin-bottom:var(--spacing-hq-8)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.ml-hq-1{margin-left:var(--spacing-hq-1)}.ml-hq-2{margin-left:var(--spacing-hq-2)}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\!hidden{display:none!important}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.\!h-28{height:calc(var(--spacing) * 28)!important}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-28{height:calc(var(--spacing) * 28)}.h-\[6px\]{height:6px}.h-\[28px\]{height:28px}.h-\[36px\]{height:36px}.h-\[38px\]{height:38px}.h-\[52px\]{height:52px}.h-\[140px\]{height:140px}.h-\[520px\]{height:520px}.h-\[var\(--header-height\)\]{height:var(--header-height)}.h-full{height:100%}.h-hq-2{height:var(--spacing-hq-2)}.h-hq-5{height:var(--spacing-hq-5)}.h-hq-6{height:var(--spacing-hq-6)}.h-hq-8{height:var(--spacing-hq-8)}.h-hq-10{height:var(--spacing-hq-10)}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[200px\]{max-height:200px}.max-h-\[260px\]{max-height:260px}.max-h-\[320px\]{max-height:320px}.max-h-\[420px\]{max-height:420px}.max-h-\[600px\]{max-height:600px}.max-h-\[calc\(100\%-9rem\)\]{max-height:calc(100% - 9rem)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-14{min-height:calc(var(--spacing) * 14)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-\[0\]{min-height:0}.min-h-\[60vh\]{min-height:60vh}.min-h-\[88px\]{min-height:88px}.min-h-\[180px\]{min-height:180px}.min-h-\[220px\]{min-height:220px}.min-h-\[280px\]{min-height:280px}.min-h-\[360px\]{min-height:360px}.min-h-\[400px\]{min-height:400px}.min-h-hq-10{min-height:var(--spacing-hq-10)}.min-h-screen{min-height:100vh}.\!w-44{width:calc(var(--spacing) * 44)!important}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-72{width:calc(var(--spacing) * 72)}.w-\[6\.75rem\]{width:6.75rem}.w-\[7\%\]{width:7%}.w-\[12\%\]{width:12%}.w-\[18\%\]{width:18%}.w-\[28px\]{width:28px}.w-\[45\%\]{width:45%}.w-\[52px\]{width:52px}.w-\[80px\]{width:80px}.w-\[90\%\]{width:90%}.w-\[144px\]{width:144px}.w-\[220px\]{width:220px}.w-\[288px\]{width:288px}.w-\[360px\]{width:360px}.w-\[480px\]{width:480px}.w-\[600px\]{width:600px}.w-\[var\(--sidebar-width\)\]{width:var(--sidebar-width)}.w-auto{width:auto}.w-full{width:100%}.w-hq-2{width:var(--spacing-hq-2)}.w-hq-5{width:var(--spacing-hq-5)}.w-hq-6{width:var(--spacing-hq-6)}.w-hq-8{width:var(--spacing-hq-8)}.w-px{width:1px}.max-w-\[36rem\]{max-width:36rem}.max-w-\[48vw\]{max-width:48vw}.max-w-\[80vw\]{max-width:80vw}.max-w-\[90vw\]{max-width:90vw}.max-w-\[95vw\]{max-width:95vw}.max-w-\[120px\]{max-width:120px}.max-w-\[160px\]{max-width:160px}.max-w-\[200px\]{max-width:200px}.max-w-\[224px\]{max-width:224px}.max-w-\[280px\]{max-width:280px}.max-w-\[300px\]{max-width:300px}.max-w-\[320px\]{max-width:320px}.max-w-\[360px\]{max-width:360px}.max-w-\[380px\]{max-width:380px}.max-w-\[400px\]{max-width:400px}.max-w-\[480px\]{max-width:480px}.max-w-\[500px\]{max-width:500px}.max-w-\[640px\]{max-width:640px}.max-w-\[720px\]{max-width:720px}.max-w-\[800px\]{max-width:800px}.max-w-\[900px\]{max-width:900px}.max-w-\[960px\]{max-width:960px}.max-w-\[980px\]{max-width:980px}.max-w-\[1000px\]{max-width:1000px}.max-w-\[1100px\]{max-width:1100px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[1400px\]{max-width:1400px}.max-w-\[var\(--some-hq-width\)\]{max-width:var(--some-hq-width)}.max-w-full{max-width:100%}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-\[32px\]{min-width:32px}.min-w-\[40px\]{min-width:40px}.min-w-\[70px\]{min-width:70px}.min-w-\[140px\]{min-width:140px}.min-w-\[144px\]{min-width:144px}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.min-w-\[260px\]{min-width:260px}.min-w-\[280px\]{min-width:280px}.min-w-\[920px\]{min-width:920px}.flex-1{flex:1}.flex-2{flex:2}.flex-\[1_1_100\%\]{flex:100%}.flex-\[2\]{flex:2}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-col-resize{cursor:col-resize}.cursor-crosshair{cursor:crosshair}.cursor-pointer{cursor:pointer}.touch-manipulation{touch-action:manipulation}.resize{resize:both}.resize-y{resize:vertical}.list-none{list-style-type:none}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[1fr_280px\]{grid-template-columns:1fr 280px}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.grid-cols-\[80px_repeat\(5\,1fr\)\]{grid-template-columns:80px repeat(5,1fr)}.grid-cols-\[90px_1fr\]{grid-template-columns:90px 1fr}.grid-cols-\[150px_minmax\(180px\,1fr\)_140px_auto\]{grid-template-columns:150px minmax(180px,1fr) 140px auto}.grid-cols-\[160px_1fr\]{grid-template-columns:160px 1fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-cols-\[auto_1fr_auto\]{grid-template-columns:auto 1fr auto}.grid-cols-\[minmax\(0\,1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.grid-cols-\[minmax\(0\,1fr\)_360px\]{grid-template-columns:minmax(0,1fr) 360px}.grid-cols-\[minmax\(220px\,2fr\)_minmax\(120px\,1fr\)_minmax\(120px\,1fr\)_80px\]{grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) minmax(120px,1fr) 80px}.grid-cols-\[minmax\(280px\,420px\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(280px,420px) minmax(0,1fr)}.grid-cols-\[repeat\(auto-fill\,minmax\(160px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(220px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(240px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(280px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid-cols-\[repeat\(auto-fill\,minmax\(340px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(160px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(180px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid-cols-\[repeat\(auto-fit\,minmax\(260px\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-\[2px\]{gap:2px}.gap-\[6px\]{gap:6px}.gap-hq-1{gap:var(--spacing-hq-1)}.gap-hq-2{gap:var(--spacing-hq-2)}.gap-hq-3{gap:var(--spacing-hq-3)}.gap-hq-4{gap:var(--spacing-hq-4)}.gap-hq-5{gap:var(--spacing-hq-5)}.gap-hq-6{gap:var(--spacing-hq-6)}.gap-px{gap:1px}.gap-x-hq-3{column-gap:var(--spacing-hq-3)}.gap-y-hq-2{row-gap:var(--spacing-hq-2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[3px\]{border-radius:3px}.rounded-\[4px\]{border-radius:4px}.rounded-\[6px\]{border-radius:6px}.rounded-\[10px\]{border-radius:10px}.rounded-\[9999px\]{border-radius:9999px}.rounded-full{border-radius:3.40282e38px}.rounded-hq-lg{border-radius:var(--radius-hq-lg)}.rounded-hq-md{border-radius:var(--radius-hq-md)}.rounded-hq-sm{border-radius:var(--radius-hq-sm)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-hq-lg{border-top-left-radius:var(--radius-hq-lg);border-top-right-radius:var(--radius-hq-lg)}.rounded-r-\[0\]{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-r-hq-sm{border-top-right-radius:var(--radius-hq-sm);border-bottom-right-radius:var(--radius-hq-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-solid{--tw-border-style:solid;border-style:solid}.border-current{border-color:currentColor}.border-hq-accent{border-color:var(--color-hq-accent)}.border-hq-border{border-color:var(--color-hq-border)}.border-hq-border-light{border-color:var(--color-hq-border-light)}.border-hq-danger{border-color:var(--color-hq-danger)}.border-hq-danger-bg{border-color:var(--color-hq-danger-bg)}.border-hq-danger-border{border-color:var(--color-hq-danger-border)}.border-hq-gray-50{border-color:var(--color-hq-gray-50)}.border-hq-gray-100{border-color:var(--color-hq-gray-100)}.border-hq-gray-200{border-color:var(--color-hq-gray-200)}.border-hq-info-border{border-color:var(--color-hq-info-border)}.border-hq-primary{border-color:var(--color-hq-primary)}.border-hq-success{border-color:var(--color-hq-success)}.border-hq-success-border{border-color:var(--color-hq-success-border)}.border-hq-warning{border-color:var(--color-hq-warning)}.border-hq-warning-bg{border-color:var(--color-hq-warning-bg)}.border-hq-warning-border{border-color:var(--color-hq-warning-border)}.border-hq-white\/30{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.border-hq-white\/30{border-color:color-mix(in oklab,var(--color-hq-white) 30%,transparent)}}.border-red-300{border-color:var(--color-red-300)}.border-transparent{border-color:#0000}.border-l-hq-danger{border-left-color:var(--color-hq-danger)}.border-l-hq-success{border-left-color:var(--color-hq-success)}.border-l-hq-warning{border-left-color:var(--color-hq-warning)}.bg-\[var\(--bg-sidebar\)\]{background-color:var(--bg-sidebar)}.bg-\[var\(--bg-sidebar-active\)\]{background-color:var(--bg-sidebar-active)}.bg-\[var\(--color-overlay-backdrop\)\]{background-color:var(--color-overlay-backdrop)}.bg-black\/25{background-color:#00000040}@supports (color:color-mix(in lab,red,red)){.bg-black\/25{background-color:color-mix(in oklab,var(--color-black) 25%,transparent)}}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-current{background-color:currentColor}.bg-hq-accent{background-color:var(--color-hq-accent)}.bg-hq-accent-light{background-color:var(--color-hq-accent-light)}.bg-hq-accent\/10{background-color:var(--color-hq-accent)}@supports (color:color-mix(in lab,red,red)){.bg-hq-accent\/10{background-color:color-mix(in oklab,var(--color-hq-accent) 10%,transparent)}}.bg-hq-app{background-color:var(--color-hq-app)}.bg-hq-border-light{background-color:var(--color-hq-border-light)}.bg-hq-danger{background-color:var(--color-hq-danger)}.bg-hq-danger-bg{background-color:var(--color-hq-danger-bg)}.bg-hq-gray-50{background-color:var(--color-hq-gray-50)}.bg-hq-gray-50\/50{background-color:#f9fafb80}@supports (color:color-mix(in lab,red,red)){.bg-hq-gray-50\/50{background-color:color-mix(in oklab,var(--color-hq-gray-50) 50%,transparent)}}.bg-hq-gray-100{background-color:var(--color-hq-gray-100)}.bg-hq-gray-200{background-color:var(--color-hq-gray-200)}.bg-hq-info{background-color:var(--color-hq-info)}.bg-hq-info-bg{background-color:var(--color-hq-info-bg)}.bg-hq-primary{background-color:var(--color-hq-primary)}.bg-hq-selected{background-color:var(--color-hq-selected)}.bg-hq-success{background-color:var(--color-hq-success)}.bg-hq-success-bg,.bg-hq-success-bg\/40{background-color:var(--color-hq-success-bg)}@supports (color:color-mix(in lab,red,red)){.bg-hq-success-bg\/40{background-color:color-mix(in oklab,var(--color-hq-success-bg) 40%,transparent)}}.bg-hq-success-text{background-color:var(--color-hq-success-text)}.bg-hq-surface{background-color:var(--color-hq-surface)}.bg-hq-warning{background-color:var(--color-hq-warning)}.bg-hq-warning-bg{background-color:var(--color-hq-warning-bg)}.bg-red-50{background-color:var(--color-red-50)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[0\]{padding:0}.p-\[2px\]{padding:2px}.p-\[6px\]{padding:6px}.p-hq-1{padding:var(--spacing-hq-1)}.p-hq-2{padding:var(--spacing-hq-2)}.p-hq-3{padding:var(--spacing-hq-3)}.p-hq-4{padding:var(--spacing-hq-4)}.p-hq-5{padding:var(--spacing-hq-5)}.p-hq-6{padding:var(--spacing-hq-6)}.p-hq-8{padding:var(--spacing-hq-8)}.p-hq-10{padding:var(--spacing-hq-10)}.p-hq-12{padding:var(--spacing-hq-12)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[10px\]{padding-inline:10px}.px-hq-1{padding-inline:var(--spacing-hq-1)}.px-hq-2{padding-inline:var(--spacing-hq-2)}.px-hq-3{padding-inline:var(--spacing-hq-3)}.px-hq-4{padding-inline:var(--spacing-hq-4)}.px-hq-5{padding-inline:var(--spacing-hq-5)}.px-hq-6{padding-inline:var(--spacing-hq-6)}.px-hq-8{padding-inline:var(--spacing-hq-8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-\[2px\]{padding-block:2px}.py-\[6px\]{padding-block:6px}.py-\[80px\]{padding-block:80px}.py-hq-1{padding-block:var(--spacing-hq-1)}.py-hq-2{padding-block:var(--spacing-hq-2)}.py-hq-3{padding-block:var(--spacing-hq-3)}.py-hq-4{padding-block:var(--spacing-hq-4)}.py-hq-6{padding-block:var(--spacing-hq-6)}.py-hq-8{padding-block:var(--spacing-hq-8)}.py-hq-10{padding-block:var(--spacing-hq-10)}.py-hq-12{padding-block:var(--spacing-hq-12)}.py-px{padding-block:1px}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-hq-1{padding-top:var(--spacing-hq-1)}.pt-hq-2{padding-top:var(--spacing-hq-2)}.pt-hq-3{padding-top:var(--spacing-hq-3)}.pt-hq-4{padding-top:var(--spacing-hq-4)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pb-hq-2{padding-bottom:var(--spacing-hq-2)}.pb-hq-3{padding-bottom:var(--spacing-hq-3)}.pb-hq-4{padding-bottom:var(--spacing-hq-4)}.pl-hq-4{padding-left:var(--spacing-hq-4)}.\!text-right{text-align:right!important}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.\[font-family\:inherit\]{font-family:inherit}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.78rem\]{font-size:.78rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[1\.75rem\]{font-size:1.75rem}.text-\[10px\]{font-size:10px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[22px\]{font-size:22px}.text-hq-base{font-size:var(--text-hq-base)}.text-hq-lg{font-size:var(--text-hq-lg)}.text-hq-md{font-size:var(--text-hq-md)}.text-hq-sm{font-size:var(--text-hq-sm)}.text-hq-xl{font-size:var(--text-hq-xl)}.text-hq-xs{font-size:var(--text-hq-xs)}.text-hq-xxl{font-size:var(--text-hq-xxl)}.leading-\[1\.4\]{--tw-leading:1.4;line-height:1.4}.leading-\[var\(--line-height\)\]{--tw-leading:var(--line-height);line-height:var(--line-height)}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.03em\]{--tw-tracking:.03em;letter-spacing:.03em}.tracking-\[0\.3px\]{--tw-tracking:.3px;letter-spacing:.3px}.tracking-\[0\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\[0\.4px\]{--tw-tracking:.4px;letter-spacing:.4px}.tracking-\[0\.05em\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-\[0\.5px\]{--tw-tracking:.5px;letter-spacing:.5px}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.text-nowrap{text-wrap:nowrap}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--color-sidebar-text\)\]{color:var(--color-sidebar-text)}.text-hq-accent{color:var(--color-hq-accent)}.text-hq-body{color:var(--color-hq-body)}.text-hq-danger{color:var(--color-hq-danger)}.text-hq-danger-text{color:var(--color-hq-danger-text)}.text-hq-gray-300{color:var(--color-hq-gray-300)}.text-hq-gray-600{color:var(--color-hq-gray-600)}.text-hq-gray-700{color:var(--color-hq-gray-700)}.text-hq-info{color:var(--color-hq-info)}.text-hq-info-text{color:var(--color-hq-info-text)}.text-hq-muted{color:var(--color-hq-muted)}.text-hq-primary{color:var(--color-hq-primary)}.text-hq-secondary{color:var(--color-hq-secondary)}.text-hq-success{color:var(--color-hq-success)}.text-hq-success-text{color:var(--color-hq-success-text)}.text-hq-warning{color:var(--color-hq-warning)}.text-hq-warning-text{color:var(--color-hq-warning-text)}.text-hq-white{color:var(--color-hq-white)}.text-hq-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-hq-white\/80{color:color-mix(in oklab,var(--color-hq-white) 80%,transparent)}}.text-hq-white\/85{color:#ffffffd9}@supports (color:color-mix(in lab,red,red)){.text-hq-white\/85{color:color-mix(in oklab,var(--color-hq-white) 85%,transparent)}}.text-inherit{color:inherit}.text-red-600{color:var(--color-red-600)}.text-red-900{color:var(--color-red-900)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.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,)}.\[font-variant-numeric\:tabular-nums\]{font-variant-numeric:tabular-nums}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.accent-hq-accent{accent-color:var(--color-hq-accent)}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow-\[0_4px_12px_rgba\(0\,0\,0\,0\.1\)\]{--tw-shadow:0 4px 12px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_4px_12px_rgba\(0\,0\,0\,0\.2\)\]{--tw-shadow:0 4px 12px var(--tw-shadow-color,#0003);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hq-lg{--tw-shadow:var(--shadow-lg);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hq-md{--tw-shadow:var(--shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-hq-sm{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-hq-accent\/20{--tw-ring-color:var(--color-hq-accent)}@supports (color:color-mix(in lab,red,red)){.ring-hq-accent\/20{--tw-ring-color:color-mix(in oklab, var(--color-hq-accent) 20%, transparent)}}.ring-hq-primary\/20{--tw-ring-color:#36415333}@supports (color:color-mix(in lab,red,red)){.ring-hq-primary\/20{--tw-ring-color:color-mix(in oklab, var(--color-hq-primary) 20%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.-outline-offset-4{outline-offset:-4px}.outline-hq-accent{outline-color:var(--color-hq-accent)}.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-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[border-color\,box-shadow\]{transition-property:border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[writing-mode\:vertical-rl\]{writing-mode:vertical-rl}.peer-checked\:bg-hq-accent:is(:where(.peer):checked~*){background-color:var(--color-hq-accent)}.placeholder\:text-hq-muted::placeholder{color:var(--color-hq-muted)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-0\.5:before{content:var(--tw-content);top:calc(var(--spacing) * .5)}.before\:left-0\.5:before{content:var(--tw-content);left:calc(var(--spacing) * .5)}.before\:h-4:before{content:var(--tw-content);height:calc(var(--spacing) * 4)}.before\:w-4:before{content:var(--tw-content);width:calc(var(--spacing) * 4)}.before\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\:bg-hq-surface:before{content:var(--tw-content);background-color:var(--color-hq-surface)}.before\:transition-transform:before{content:var(--tw-content);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.peer-checked\:before\:translate-x-4:is(:where(.peer):checked~*):before{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:calc(var(--spacing) * 0)}.read-only\:cursor-not-allowed:read-only{cursor:not-allowed}.read-only\:bg-hq-gray-50:read-only{background-color:var(--color-hq-gray-50)}.read-only\:text-hq-secondary:read-only{color:var(--color-hq-secondary)}@media(hover:hover){.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-hq-accent:hover{border-color:var(--color-hq-accent)}.hover\:border-hq-gray-300:hover{border-color:var(--color-hq-gray-300)}.hover\:bg-\[var\(--bg-sidebar-active\)\]:hover{background-color:var(--bg-sidebar-active)}.hover\:bg-\[var\(--bg-sidebar-hover\)\]:hover{background-color:var(--bg-sidebar-hover)}.hover\:bg-hq-accent-hover:hover{background-color:var(--color-hq-accent-hover)}.hover\:bg-hq-accent-light:hover{background-color:var(--color-hq-accent-light)}.hover\:bg-hq-danger-bg:hover{background-color:var(--color-hq-danger-bg)}.hover\:bg-hq-danger-border:hover{background-color:var(--color-hq-danger-border)}.hover\:bg-hq-gray-50:hover{background-color:var(--color-hq-gray-50)}.hover\:bg-hq-gray-100:hover{background-color:var(--color-hq-gray-100)}.hover\:bg-hq-gray-200:hover{background-color:var(--color-hq-gray-200)}.hover\:bg-hq-hover:hover{background-color:var(--color-hq-hover)}.hover\:bg-hq-selected:hover{background-color:var(--color-hq-selected)}.hover\:bg-hq-success-bg:hover{background-color:var(--color-hq-success-bg)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:text-hq-accent:hover{color:var(--color-hq-accent)}.hover\:text-hq-body:hover{color:var(--color-hq-body)}.hover\:text-hq-danger:hover{color:var(--color-hq-danger)}.hover\:text-hq-primary:hover{color:var(--color-hq-primary)}.hover\:text-hq-secondary:hover{color:var(--color-hq-secondary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-hq-md:hover{--tw-shadow:var(--shadow-md);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-hq-sm:hover{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-hq-accent:focus{border-color:var(--color-hq-accent)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-3:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[2px\]:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[var\(--color-accent-ring\)\]:focus{--tw-ring-color:var(--color-accent-ring)}.focus\:ring-hq-accent-light:focus{--tw-ring-color:var(--color-hq-accent-light)}.focus\:ring-hq-accent\/20:focus{--tw-ring-color:var(--color-hq-accent)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-hq-accent\/20:focus{--tw-ring-color:color-mix(in oklab, var(--color-hq-accent) 20%, transparent)}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-hq-accent:focus-visible{outline-color:var(--color-hq-accent)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[0\.97\]:active{scale:.97}.active\:border-hq-accent:active{border-color:var(--color-hq-accent)}.active\:bg-hq-gray-50:active{background-color:var(--color-hq-gray-50)}.active\:bg-hq-hover:active{background-color:var(--color-hq-hover)}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-hq-gray-50:disabled{background-color:var(--color-hq-gray-50)}.disabled\:bg-transparent:disabled{background-color:#0000}.disabled\:text-hq-gray-300:disabled{color:var(--color-hq-gray-300)}.disabled\:text-hq-muted:disabled{color:var(--color-hq-muted)}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:opacity-100:disabled{opacity:1}@media not all and (min-width:900px){.max-\[900px\]\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media not all and (min-width:899px){.max-\[899px\]\:hidden{display:none}}@media not all and (min-width:768px){.max-\[768px\]\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media not all and (min-width:767px){.max-\[767px\]\:col-span-1{grid-column:span 1/span 1}.max-\[767px\]\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.max-\[767px\]\:p-hq-3{padding:var(--spacing-hq-3)}}@media not all and (min-width:600px){.max-\[600px\]\:w-full{width:100%}.max-\[600px\]\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.max-\[600px\]\:flex-col{flex-direction:column}.max-\[600px\]\:items-start{align-items:flex-start}.max-\[600px\]\:justify-end{justify-content:flex-end}}@media not all and (min-width:480px){.max-\[480px\]\:mt-hq-4{margin-top:var(--spacing-hq-4)}.max-\[480px\]\:mb-hq-4{margin-bottom:var(--spacing-hq-4)}.max-\[480px\]\:w-full{width:100%}.max-\[480px\]\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.max-\[480px\]\:flex-col{flex-direction:column}.max-\[480px\]\:items-start{align-items:flex-start}.max-\[480px\]\:justify-end{justify-content:flex-end}.max-\[480px\]\:gap-hq-3{gap:var(--spacing-hq-3)}.max-\[480px\]\:px-hq-5{padding-inline:var(--spacing-hq-5)}.max-\[480px\]\:py-hq-6{padding-block:var(--spacing-hq-6)}.max-\[480px\]\:text-hq-xs{font-size:var(--text-hq-xs)}}@media not all and (min-width:64rem){.max-lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media not all and (min-width:48rem){.max-md\:fixed{position:fixed}.max-md\:left-0{left:calc(var(--spacing) * 0)}.max-md\:m-hq-2{margin:var(--spacing-hq-2)}.max-md\:mt-hq-2{margin-top:var(--spacing-hq-2)}.max-md\:block{display:block}.max-md\:hidden{display:none}.max-md\:h-dvh{height:100dvh}.max-md\:min-h-11{min-height:calc(var(--spacing) * 11)}.max-md\:min-h-\[44px\]{min-height:44px}.max-md\:w-12{width:calc(var(--spacing) * 12)}.max-md\:w-\[176px\]{width:176px}.max-md\:w-\[280px\]{width:280px}.max-md\:w-\[calc\(100vw-var\(--space-4\)\)\]{width:calc(100vw - var(--space-4))}.max-md\:w-full{width:100%}.max-md\:max-w-full{max-width:100%}.max-md\:max-w-none{max-width:none}.max-md\:min-w-\[44px\]{min-width:44px}.max-md\:min-w-\[176px\]{min-width:176px}.max-md\:min-w-\[500px\]{min-width:500px}.max-md\:flex-1{flex:1}.max-md\:-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.max-md\:translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.max-md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.max-md\:flex-col{flex-direction:column}.max-md\:flex-col-reverse{flex-direction:column-reverse}.max-md\:flex-wrap{flex-wrap:wrap}.max-md\:items-end{align-items:flex-end}.max-md\:items-start{align-items:flex-start}.max-md\:items-stretch{align-items:stretch}.max-md\:gap-hq-2{gap:var(--spacing-hq-2)}.max-md\:gap-hq-3{gap:var(--spacing-hq-3)}.max-md\:overflow-x-auto{overflow-x:auto}.max-md\:rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.max-md\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.max-md\:border-hq-border{border-color:var(--color-hq-border)}.max-md\:p-hq-3{padding:var(--spacing-hq-3)}.max-md\:px-hq-4{padding-inline:var(--spacing-hq-4)}.max-md\:pb-\[80px\]{padding-bottom:80px}.max-md\:pb-\[calc\(var\(--space-6\)\+env\(safe-area-inset-bottom\,0px\)\)\]{padding-bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px))}.max-md\:text-\[10px\]{font-size:10px}}@media not all and (min-width:40rem){.max-sm\:right-hq-3{right:var(--spacing-hq-3)}.max-sm\:bottom-hq-3{bottom:var(--spacing-hq-3)}.max-sm\:left-hq-3{left:var(--spacing-hq-3)}.max-sm\:min-h-11{min-height:calc(var(--spacing) * 11)}.max-sm\:max-w-none{max-width:none}.max-sm\:min-w-\[44px\]{min-width:44px}.max-sm\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.max-sm\:flex-col{flex-direction:column}.max-sm\:gap-hq-2{gap:var(--spacing-hq-2)}.max-sm\:px-hq-3{padding-inline:var(--spacing-hq-3)}.max-sm\:py-hq-2{padding-block:var(--spacing-hq-2)}}@media(min-width:900px){.min-\[900px\]\:hidden{display:none}}@media(min-width:40rem){.sm\:top-1\/2{top:50%}.sm\:top-hq-3{top:var(--spacing-hq-3)}.sm\:top-hq-12{top:var(--spacing-hq-12)}.sm\:right-auto{right:auto}.sm\:bottom-6{bottom:calc(var(--spacing) * 6)}.sm\:bottom-hq-6{bottom:var(--spacing-hq-6)}.sm\:left-1\/2{left:50%}.sm\:left-hq-4{left:var(--spacing-hq-4)}.sm\:left-hq-6{left:var(--spacing-hq-6)}.sm\:ml-\[-8\.5rem\]{margin-left:-8.5rem}.sm\:-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:p-hq-5{padding:var(--spacing-hq-5)}}@media(min-width:48rem){.md\:\!block{display:block!important}.md\:hidden{display:none}.md\:translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}}.\[\&_a\]\:font-medium a{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_a\]\:text-hq-accent a{color:var(--color-hq-accent)}.\[\&_a\]\:no-underline a{text-decoration-line:none}@media(hover:hover){.hover\:\[\&_a\]\:underline:hover a{text-decoration-line:underline}}.\[\&_button\]\:cursor-pointer button{cursor:pointer}.\[\&_button\]\:rounded-hq-sm button{border-radius:var(--radius-hq-sm)}.\[\&_button\]\:border button{border-style:var(--tw-border-style);border-width:1px}.\[\&_button\]\:border-hq-border button{border-color:var(--color-hq-border)}.\[\&_button\]\:border-hq-gray-200 button{border-color:var(--color-hq-gray-200)}.\[\&_button\]\:bg-hq-surface button{background-color:var(--color-hq-surface)}.\[\&_button\]\:px-hq-3 button{padding-inline:var(--spacing-hq-3)}.\[\&_button\]\:py-hq-1 button{padding-block:var(--spacing-hq-1)}.\[\&_button\]\:py-hq-2 button{padding-block:var(--spacing-hq-2)}.\[\&_button\]\:text-hq-sm button{font-size:var(--text-hq-sm)}.\[\&_button\]\:text-hq-secondary button{color:var(--color-hq-secondary)}.\[\&_button\:disabled\]\:cursor-not-allowed button:disabled{cursor:not-allowed}.\[\&_button\:disabled\]\:opacity-50 button:disabled{opacity:.5}.\[\&_h2\]\:mt-0 h2{margin-top:calc(var(--spacing) * 0)}.\[\&_h2\]\:mb-1 h2{margin-bottom:calc(var(--spacing) * 1)}.\[\&_h3\]\:mb-hq-2 h3{margin-bottom:var(--spacing-hq-2)}.\[\&_h3\]\:text-hq-lg h3{font-size:var(--text-hq-lg)}.\[\&_h3\]\:font-semibold h3{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h3\]\:text-hq-primary h3{color:var(--color-hq-primary)}.\[\&_h4\]\:mt-0 h4{margin-top:calc(var(--spacing) * 0)}.\[\&_h4\]\:mb-1\.5 h4{margin-bottom:calc(var(--spacing) * 1.5)}.\[\&_h4\]\:mb-hq-2 h4{margin-bottom:var(--spacing-hq-2)}.\[\&_h4\]\:mb-hq-4 h4{margin-bottom:var(--spacing-hq-4)}.\[\&_h4\]\:text-xs h4{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_h4\]\:text-hq-lg h4{font-size:var(--text-hq-lg)}.\[\&_h4\]\:text-hq-md h4{font-size:var(--text-hq-md)}.\[\&_h4\]\:font-semibold h4{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h4\]\:tracking-\[0\.05em\] h4{--tw-tracking:.05em;letter-spacing:.05em}.\[\&_h4\]\:text-hq-primary h4{color:var(--color-hq-primary)}.\[\&_h4\]\:text-hq-secondary h4{color:var(--color-hq-secondary)}.\[\&_h4\]\:uppercase h4{text-transform:uppercase}.\[\&_input\]\:box-border input{box-sizing:border-box}.\[\&_input\]\:h-0 input{height:calc(var(--spacing) * 0)}.\[\&_input\]\:w-0 input{width:calc(var(--spacing) * 0)}.\[\&_input\]\:w-full input{width:100%}.\[\&_input\]\:min-w-0 input{min-width:calc(var(--spacing) * 0)}.\[\&_input\]\:flex-1 input{flex:1}.\[\&_input\]\:rounded-hq-sm input{border-radius:var(--radius-hq-sm)}.\[\&_input\]\:border input{border-style:var(--tw-border-style);border-width:1px}.\[\&_input\]\:border-hq-border input{border-color:var(--color-hq-border)}.\[\&_input\]\:bg-hq-surface input{background-color:var(--color-hq-surface)}.\[\&_input\]\:p-hq-2 input{padding:var(--spacing-hq-2)}.\[\&_input\]\:px-hq-3 input{padding-inline:var(--spacing-hq-3)}.\[\&_input\]\:py-hq-2 input{padding-block:var(--spacing-hq-2)}.\[\&_input\]\:text-hq-sm input{font-size:var(--text-hq-sm)}.\[\&_input\]\:text-hq-primary input{color:var(--color-hq-primary)}.\[\&_input\]\:opacity-0 input{opacity:0}.\[\&_input\:focus\]\:border-hq-accent input:focus{border-color:var(--color-hq-accent)}.\[\&_input\:focus\]\:outline-none input:focus{--tw-outline-style:none;outline-style:none}.\[\&_label\]\:mb-0 label{margin-bottom:calc(var(--spacing) * 0)}.\[\&_label\]\:mb-hq-1 label{margin-bottom:var(--spacing-hq-1)}.\[\&_label\]\:block label{display:block}.\[\&_label\]\:text-hq-sm label{font-size:var(--text-hq-sm)}.\[\&_label\]\:text-hq-xs label{font-size:var(--text-hq-xs)}.\[\&_label\]\:font-medium label{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_label\]\:font-semibold label{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_label\]\:tracking-\[0\.04em\] label{--tw-tracking:.04em;letter-spacing:.04em}.\[\&_label\]\:text-hq-primary label{color:var(--color-hq-primary)}.\[\&_label\]\:text-hq-secondary label{color:var(--color-hq-secondary)}.\[\&_label\]\:uppercase label{text-transform:uppercase}.\[\&_p\]\:m-0 p{margin:calc(var(--spacing) * 0)}.\[\&_p\]\:mb-hq-4 p{margin-bottom:var(--spacing-hq-4)}.\[\&_p\]\:text-hq-sm p{font-size:var(--text-hq-sm)}.\[\&_p\]\:leading-6 p{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.\[\&_p\]\:text-hq-muted p{color:var(--color-hq-muted)}.\[\&_p\]\:text-hq-secondary p{color:var(--color-hq-secondary)}.\[\&_pre\]\:m-0 pre{margin:calc(var(--spacing) * 0)}.\[\&_pre\]\:max-h-\[200px\] pre{max-height:200px}.\[\&_pre\]\:overflow-auto pre{overflow:auto}.\[\&_pre\]\:rounded pre{border-radius:.25rem}.\[\&_pre\]\:border pre{border-style:var(--tw-border-style);border-width:1px}.\[\&_pre\]\:border-hq-border pre{border-color:var(--color-hq-border)}.\[\&_pre\]\:bg-hq-surface pre{background-color:var(--color-hq-surface)}.\[\&_pre\]\:p-2 pre{padding:calc(var(--spacing) * 2)}.\[\&_pre\]\:text-xs pre{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_select\]\:box-border select{box-sizing:border-box}.\[\&_select\]\:w-full select{width:100%}.\[\&_select\]\:rounded select{border-radius:.25rem}.\[\&_select\]\:rounded-hq-sm select{border-radius:var(--radius-hq-sm)}.\[\&_select\]\:border select{border-style:var(--tw-border-style);border-width:1px}.\[\&_select\]\:border-hq-border select{border-color:var(--color-hq-border)}.\[\&_select\]\:bg-hq-surface select{background-color:var(--color-hq-surface)}.\[\&_select\]\:p-hq-2 select{padding:var(--spacing-hq-2)}.\[\&_select\]\:px-3 select{padding-inline:calc(var(--spacing) * 3)}.\[\&_select\]\:px-hq-2 select{padding-inline:var(--spacing-hq-2)}.\[\&_select\]\:px-hq-3 select{padding-inline:var(--spacing-hq-3)}.\[\&_select\]\:py-1\.5 select{padding-block:calc(var(--spacing) * 1.5)}.\[\&_select\]\:py-hq-1 select{padding-block:var(--spacing-hq-1)}.\[\&_select\]\:py-hq-2 select{padding-block:var(--spacing-hq-2)}.\[\&_select\]\:text-sm select{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.\[\&_select\]\:text-hq-sm select{font-size:var(--text-hq-sm)}.\[\&_select\]\:text-hq-primary select{color:var(--color-hq-primary)}@media not all and (min-width:48rem){.max-md\:\[\&_select\]\:w-full select{width:100%}}.\[\&_select\:focus\]\:border-hq-accent select:focus{border-color:var(--color-hq-accent)}.\[\&_select\:focus\]\:outline-none select:focus{--tw-outline-style:none;outline-style:none}.\[\&_tbody_tr\:hover\]\:bg-hq-gray-50 tbody tr:hover{background-color:var(--color-hq-gray-50)}.\[\&_td\]\:border-b td{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_td\]\:border-hq-border td{border-color:var(--color-hq-border)}.\[\&_td\]\:border-hq-border-light td{border-color:var(--color-hq-border-light)}.\[\&_td\]\:p-3 td{padding:calc(var(--spacing) * 3)}.\[\&_td\]\:p-hq-3 td{padding:var(--spacing-hq-3)}.\[\&_td\]\:px-hq-3 td{padding-inline:var(--spacing-hq-3)}.\[\&_td\]\:py-hq-2 td{padding-block:var(--spacing-hq-2)}.\[\&_td\]\:align-middle td{vertical-align:middle}.\[\&_td\]\:text-hq-primary td{color:var(--color-hq-primary)}.\[\&_textarea\]\:box-border textarea{box-sizing:border-box}.\[\&_textarea\]\:w-full textarea{width:100%}.\[\&_textarea\]\:resize-y textarea{resize:vertical}.\[\&_textarea\]\:rounded-hq-sm textarea{border-radius:var(--radius-hq-sm)}.\[\&_textarea\]\:border textarea{border-style:var(--tw-border-style);border-width:1px}.\[\&_textarea\]\:border-hq-border textarea{border-color:var(--color-hq-border)}.\[\&_textarea\]\:p-hq-2 textarea{padding:var(--spacing-hq-2)}.\[\&_textarea\]\:px-hq-3 textarea{padding-inline:var(--spacing-hq-3)}.\[\&_textarea\]\:py-hq-2 textarea{padding-block:var(--spacing-hq-2)}.\[\&_textarea\]\:text-hq-sm textarea{font-size:var(--text-hq-sm)}.\[\&_th\]\:border-b th{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_th\]\:border-b-2 th{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.\[\&_th\]\:border-hq-border th{border-color:var(--color-hq-border)}.\[\&_th\]\:px-3 th{padding-inline:calc(var(--spacing) * 3)}.\[\&_th\]\:px-hq-3 th{padding-inline:var(--spacing-hq-3)}.\[\&_th\]\:py-2\.5 th{padding-block:calc(var(--spacing) * 2.5)}.\[\&_th\]\:py-hq-2 th{padding-block:var(--spacing-hq-2)}.\[\&_th\]\:text-left th{text-align:left}.\[\&_th\]\:text-xs th{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_th\]\:text-hq-xs th{font-size:var(--text-hq-xs)}.\[\&_th\]\:font-semibold th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_th\]\:tracking-\[0\.03em\] th{--tw-tracking:.03em;letter-spacing:.03em}.\[\&_th\]\:tracking-\[0\.05em\] th{--tw-tracking:.05em;letter-spacing:.05em}.\[\&_th\]\:text-hq-secondary th{color:var(--color-hq-secondary)}.\[\&_th\]\:uppercase th{text-transform:uppercase}.\[\&\>h2\]\:m-0>h2{margin:calc(var(--spacing) * 0)}.\[\&\>h2\]\:text-xl>h2{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.\[\&\>h2\]\:text-hq-xl>h2{font-size:var(--text-hq-xl)}.\[\&\>h2\]\:font-bold>h2{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.\[\&\>h2\]\:font-semibold>h2{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&\>h2\]\:text-hq-primary>h2{color:var(--color-hq-primary)}.\[\&\>h3\]\:m-0>h3{margin:calc(var(--spacing) * 0)}.\[\&\>h3\]\:text-hq-lg>h3{font-size:var(--text-hq-lg)}.\[\&\>h3\]\:font-semibold>h3{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&\>h3\]\:text-hq-primary>h3{color:var(--color-hq-primary)}.\[\&\>h4\]\:mt-0>h4{margin-top:calc(var(--spacing) * 0)}.\[\&\>h4\]\:mb-hq-3>h4{margin-bottom:var(--spacing-hq-3)}.\[\&\>h4\]\:text-hq-primary>h4{color:var(--color-hq-primary)}.\[\&\>p\]\:m-0>p{margin:calc(var(--spacing) * 0)}.\[\&\>p\]\:max-w-\[280px\]>p{max-width:280px}.\[\&\>p\]\:text-\[0\.95rem\]>p{font-size:.95rem}.\[\&\>p\]\:text-hq-secondary>p{color:var(--color-hq-secondary)}.\[\&\>td\]\:border-t-2>td{border-top-style:var(--tw-border-style);border-top-width:2px}.\[\&\>td\]\:border-hq-border>td{border-color:var(--color-hq-border)}}:root{--color-gray-50:#f5f5f7;--color-gray-100:#e8e8ed;--color-gray-200:#d2d2d7;--color-gray-300:#b0b0b8;--color-gray-400:#86868b;--color-gray-500:#6e6e73;--color-gray-600:#48484a;--color-gray-700:#1d1d1f;--color-accent:#007aff;--color-accent-light:#e5f1ff;--color-accent-ring:var(--color-accent-ring);--color-accent-hover:#0063d1;--color-success:#34c759;--color-warning:#ff9500;--color-danger:#dc3545;--color-info:#5ac8fa;--color-success-bg:#e8f8ed;--color-success-border:#b8e6c8;--color-success-text:#1a7a34;--color-warning-bg:#fff4e5;--color-warning-border:#ffd699;--color-warning-text:#995a00;--color-danger-bg:#fef0ef;--color-danger-border:#fecac7;--color-danger-text:#c9302c;--color-info-bg:#e5f4fd;--color-info-border:#b3dff7;--color-info-text:#1a6da0;--attention-high:#ff3b30;--attention-medium:#ff9500;--attention-low:#5ac8fa;--bg-app:#f5f5f7;--bg-surface:#fff;--bg-sidebar:#f5f5f7;--bg-hover:#0000000a;--bg-active:#0000000f;--bg-selected:var(--color-accent-light);--bg-stripe:#00000005;--bg-sidebar-hover:#0000000a;--bg-sidebar-active:var(--color-accent);--color-sidebar-text:var(--color-gray-700);--color-sidebar-text-muted:var(--color-gray-400);--color-white:#fff;--overlay-bg:#0006;--font-family:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", system-ui, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:16px;--font-size-lg:20px;--font-size-xl:24px;--font-size-xxl:28px;--line-height:1.47;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--shadow-sm:0 .5px 1px #0000000a, 0 1px 2px #0000000f;--shadow-md:0 2px 4px #0000000a, 0 4px 12px #0000000f;--shadow-lg:0 4px 8px #0000000a, 0 8px 24px #00000014;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--border-color:#00000014;--border-color-light:#0000000a;--color-overlay-backdrop:#0006;--color-baseline:var(--color-gray-300);--color-baseline-slipped:var(--color-warning);--sidebar-width:200px;--header-height:48px;--tap-target-min:44px;--bp-mobile:767px;--bp-tablet:1024px;--color-status-not-started-border:#6b7280;--color-status-not-started-bg:#f9fafb;--color-status-in-progress-border:#f59e0b;--color-status-in-progress-bg:#fffbeb;--color-status-complete-border:#10b981;--color-status-complete-bg:#ecfdf5;--color-status-blocked-border:#ef4444;--color-status-blocked-bg:#fef2f2;--color-status-on-hold-border:#8b5cf6;--color-status-on-hold-bg:#f5f3ff;--color-status-review-border:#3b82f6;--color-status-review-bg:#eff6ff;--color-priority-critical-border:#dc2626;--color-priority-critical-bg:#fef2f2;--color-priority-high-border:#f97316;--color-priority-high-bg:#fff7ed;--color-priority-medium-border:#eab308;--color-priority-medium-bg:#fefce8;--color-priority-low-border:#3b82f6;--color-priority-low-bg:#eff6ff;--color-priority-none-border:#d1d5db;--color-priority-none-bg:#f9fafb;--color-edge-parent-child:#374151;--color-edge-dependency:#1d4ed8;--color-edge-assignment:#7c3aed;--color-edge-association:#6b7280;--color-edge-risk-link:#dc2626;--color-heatmap-low-border:#3b82f6;--color-heatmap-low-bg:#eff6ff;--color-heatmap-mid-border:#f59e0b;--color-heatmap-mid-bg:#fffbeb;--color-heatmap-high-border:#ef4444;--color-heatmap-high-bg:#fef2f2}[data-theme=dark]{--color-gray-50:#1d1d1f;--color-gray-100:#2c2c2e;--color-gray-200:#3a3a3c;--color-gray-300:#48484a;--color-gray-400:#8e8e93;--color-gray-500:#aeaeb2;--color-gray-600:#d1d1d6;--color-gray-700:#f5f5f7;--color-accent:#0a84ff;--color-accent-light:#0a84ff26;--color-accent-hover:#409cff;--color-success:#30d158;--color-warning:#ff9f0a;--color-danger:#ff453a;--color-info:#64d2ff;--color-success-bg:#30d15826;--color-success-border:#30d1584d;--color-success-text:#30d158;--color-warning-bg:#ff9f0a26;--color-warning-border:#ff9f0a4d;--color-warning-text:#ff9f0a;--color-danger-bg:#ff453a26;--color-danger-border:#ff453a4d;--color-danger-text:#ff453a;--color-info-bg:#64d2ff26;--color-info-border:#64d2ff4d;--color-info-text:#64d2ff;--attention-high:#ff453a;--attention-medium:#ff9f0a;--attention-low:#64d2ff;--bg-app:#000;--bg-surface:#1c1c1e;--bg-sidebar:#1c1c1e;--bg-hover:#ffffff0f;--bg-active:#ffffff14;--bg-selected:var(--color-accent-light);--bg-stripe:#ffffff08;--bg-sidebar-hover:#ffffff0f;--bg-sidebar-active:var(--color-accent);--color-sidebar-text:var(--color-gray-700);--color-sidebar-text-muted:var(--color-gray-400);--color-white:#fff;--overlay-bg:#0009;--shadow-sm:0 .5px 1px #0003, 0 1px 2px #0000004d;--shadow-md:0 2px 4px #0003, 0 4px 12px #0000004d;--shadow-lg:0 4px 8px #0003, 0 8px 24px #0006;--border-color:#ffffff1f;--border-color-light:#ffffff0f;--color-overlay-backdrop:#0009;--color-baseline:var(--color-gray-400);--color-baseline-slipped:var(--color-warning)}[data-theme=high-contrast]{--color-gray-50:#fff;--color-gray-100:#f0f0f0;--color-gray-200:#ccc;--color-gray-300:#999;--color-gray-400:#666;--color-gray-500:#444;--color-gray-600:#222;--color-gray-700:#000;--color-accent:#05c;--color-accent-light:#e0f0ff;--color-accent-hover:#003d99;--color-success:#007a1a;--color-warning:#c60;--color-danger:#c00;--color-info:#06a;--color-success-bg:#d4f5dd;--color-success-border:#007a1a;--color-success-text:#005c14;--color-warning-bg:#fff0cc;--color-warning-border:#c60;--color-warning-text:#995200;--color-danger-bg:#ffd9d9;--color-danger-border:#c00;--color-danger-text:#900;--color-info-bg:#d9eeff;--color-info-border:#06a;--color-info-text:#004d80;--attention-high:#c00;--attention-medium:#c60;--attention-low:#06a;--bg-app:#fff;--bg-surface:#fff;--bg-sidebar:#f5f5f5;--bg-hover:#00000014;--bg-active:#0000001f;--bg-selected:var(--color-accent-light);--bg-stripe:#0000000a;--bg-sidebar-hover:#00000014;--bg-sidebar-active:var(--color-accent);--color-sidebar-text:var(--color-gray-700);--color-sidebar-text-muted:var(--color-gray-500);--color-white:#fff;--overlay-bg:#00000080;--shadow-sm:0 1px 2px #00000026;--shadow-md:0 2px 6px #0003;--shadow-lg:0 4px 12px #00000040;--border-color:#0003;--border-color-light:#0000001a;--color-overlay-backdrop:#00000080;--color-baseline:var(--color-gray-400);--color-baseline-slipped:var(--color-warning)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);line-height:var(--line-height)}body{font-family:var(--font-family);color:var(--color-gray-700);background-color:var(--bg-app);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}#root{width:100%}a{color:var(--color-accent);text-decoration:none}ul,ol{list-style:none}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}@media(max-width:767px){.table-responsive table{min-width:600px}button,a,[role=button],.sidebar-link{min-height:var(--tap-target-min)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea{min-height:var(--tap-target-min);font-size:16px!important}.table-scroll-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.table-scroll-wrapper table{min-width:600px}.table-scroll-wrapper td:first-child,.table-scroll-wrapper th:first-child{background:var(--bg-surface);z-index:1;position:sticky;left:0}table{-webkit-overflow-scrolling:touch;max-width:100%;display:block;overflow-x:auto}}@media(hover:none){a,button,[role=button],.sidebar-link,.clickable{touch-action:manipulation}}*{-webkit-tap-highlight-color:transparent}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-1{flex:1}.flex-2{flex:2}.min-w-0{min-width:0}.w-full{width:100%}.hidden{display:none}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.m-0{margin:0}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.ml-2{margin-left:var(--space-2)}.mr-1{margin-right:var(--space-1)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.pt-1{padding-top:var(--space-1)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-md{font-size:var(--font-size-md)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-nowrap{white-space:nowrap}.text-pre-wrap{white-space:pre-wrap}.text-center{text-align:center}.text-capitalize{text-transform:capitalize}.no-underline{text-decoration:none}.text-muted{color:var(--color-gray-400)}.text-secondary{color:var(--color-gray-500)}.text-body{color:var(--color-gray-600)}.text-primary{color:var(--color-gray-700)}.text-accent{color:var(--color-accent)}.bg-surface{background-color:var(--bg-surface)}.bg-muted{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cursor-pointer{cursor:pointer}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-col-resize{cursor:col-resize}.cursor-crosshair{cursor:crosshair}.pointer-events-none{pointer-events:none}.resize-y{resize:vertical}.max-w-half{max-width:50%}.widget-card{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--space-4);border:1px solid var(--border-color)}.widget-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.widget-title{font-size:var(--font-size-md);color:var(--color-gray-700);margin:0}.widget-badge{font-size:var(--font-size-xs);border-radius:99px;padding:2px 8px;font-weight:600}.widget-list-item{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-color-light);display:flex}.widget-list-item:last-child{border-bottom:none}.compose-panel,.form-panel{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--space-4);border:1px solid var(--border-color);margin-bottom:var(--space-4)}.form-label{font-size:var(--font-size-sm);margin-bottom:var(--space-1);color:var(--color-gray-600);display:block}.input-sm{font-size:var(--font-size-sm);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);padding:6px 10px}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm)}.btn-primary{background:var(--color-accent);color:var(--color-white);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);cursor:pointer;font-size:var(--font-size-sm);border:none}.pagination-bar{justify-content:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--font-size-sm);display:flex}.section-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.error-text{color:var(--color-danger);font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.card-item{background:var(--bg-surface);border-radius:var(--radius-sm);padding:var(--space-3);border:1px solid var(--border-color)}.compose-btn-group{gap:var(--space-2);display:flex}@media(max-width:768px){input,select,textarea{font-size:max(16px,1em)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes pulse{50%{opacity:.5}}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10);text-align:center;min-height:300px}.error-boundary-icon{font-size:48px;margin-bottom:var(--space-4)}.error-boundary-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-2)}.error-boundary-message{font-size:var(--font-size-base);color:var(--color-gray-500);margin:0 0 var(--space-4);max-width:400px}.error-boundary-detail{font-size:var(--font-size-xs);color:var(--color-danger-text);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin:0 0 var(--space-4);max-width:500px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.error-boundary-retry{padding:var(--space-2) var(--space-5);font-size:var(--font-size-base);font-weight:500;color:var(--color-white);background:var(--color-accent);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}@media(hover:hover){.error-boundary-retry:hover{background:var(--color-accent-hover)}}@media(max-width:640px){.error-boundary{padding:var(--space-6);min-height:200px}.error-boundary-detail{max-width:100%}}.action-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4);background-color:var(--bg-surface);transition:border-color .15s}.action-card--selected{border-color:var(--color-accent)}.action-card-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.action-card-checkbox{flex-shrink:0}.action-card-path{font-weight:600;font-size:var(--font-size-sm);color:var(--text-primary)}.action-card-confidence{margin-left:auto;font-size:var(--font-size-xs);font-weight:500;padding:2px var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.action-card-confidence--high{color:var(--color-success);border-color:var(--color-success)}.action-card-confidence--medium{color:var(--color-warning);border-color:var(--color-warning)}.action-card-confidence--low{color:var(--color-danger);border-color:var(--color-danger)}.action-card-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-3)}.action-card-type{font-family:var(--font-mono, monospace);font-size:var(--font-size-xs);padding:1px var(--space-1);background-color:var(--bg-hover);border-radius:var(--radius-sm)}.action-card-separator{color:var(--color-gray-400)}.action-card-target{font-weight:500}.action-card-reasoning{margin-bottom:var(--space-3);padding:var(--space-3);background-color:var(--bg-page);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.action-card-reasoning-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.action-card-reasoning-text{margin:var(--space-1) 0 0;font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.5}.action-card-details{margin-bottom:var(--space-3)}.action-card-details-summary{font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;font-weight:500}.action-card-details-content{margin-top:var(--space-2);font-size:var(--font-size-xs);background-color:var(--bg-page);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-2);overflow-x:auto;white-space:pre-wrap;word-break:break-word}.action-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.action-card-date{font-size:var(--font-size-xs);color:var(--text-secondary)}.action-card-actions{display:flex;align-items:center;gap:var(--space-2)}.action-card-reject-input{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);width:160px}.action-card-reject-input:focus{outline:none;border-color:var(--color-accent)}.action-card-btn{font-size:var(--font-size-sm);font-weight:500;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-color);cursor:pointer;background:none;transition:background-color .15s,color .15s}.action-card-btn:disabled{opacity:.5;cursor:not-allowed}.action-card-btn--approve{color:var(--color-success);border-color:var(--color-success)}@media(hover:hover){.action-card-btn--approve:hover:not(:disabled){background-color:var(--color-success);color:var(--color-white)}}.action-card-btn--reject{color:var(--color-danger);border-color:var(--color-danger)}@media(hover:hover){.action-card-btn--reject:hover:not(:disabled){background-color:var(--color-danger);color:var(--color-white)}}.action-card-btn--cancel{color:var(--text-secondary)}.action-panel-overlay{position:fixed;inset:0;background-color:#0000004d;z-index:1000;display:flex;justify-content:flex-end}.action-panel{width:480px;max-width:100vw;height:100%;background-color:var(--bg-surface);border-left:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.action-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color);flex-shrink:0}.action-panel-title{font-size:var(--font-size-md);font-weight:600;color:var(--text-primary);margin:0}.action-panel-close{background:none;border:1px solid var(--border-color);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:500;transition:background-color .15s}@media(hover:hover){.action-panel-close:hover{background-color:var(--bg-hover)}}.action-panel-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-color);flex-shrink:0}.action-panel-select-all{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer}.action-panel-bulk{display:flex;align-items:center;gap:var(--space-2)}.action-panel-bulk-count{font-size:var(--font-size-xs);color:var(--text-secondary)}.action-panel-bulk-btn{font-size:var(--font-size-xs);font-weight:500;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-color);cursor:pointer;background:none;transition:background-color .15s,color .15s}.action-panel-bulk-btn:disabled{opacity:.5;cursor:not-allowed}.action-panel-bulk-btn--approve{color:var(--color-success);border-color:var(--color-success)}@media(hover:hover){.action-panel-bulk-btn--approve:hover:not(:disabled){background-color:var(--color-success);color:var(--color-white)}}.action-panel-bulk-btn--reject{color:var(--color-danger);border-color:var(--color-danger)}@media(hover:hover){.action-panel-bulk-btn--reject:hover:not(:disabled){background-color:var(--color-danger);color:var(--color-white)}}.action-panel-body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.action-panel-empty{text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm);padding:var(--space-8) 0}.action-panel-error{text-align:center;color:var(--color-danger);font-size:var(--font-size-sm);padding:var(--space-4) 0}@media(max-width:767px){.action-panel{width:100vw}}.notification-bell-btn{display:flex;align-items:center;gap:var(--space-1);background:none;border:1px solid var(--border-color);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;transition:color .15s,background-color .15s;position:relative}@media(hover:hover){.notification-bell-btn:hover{color:var(--color-gray-700);background-color:var(--bg-hover)}}.notification-bell-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 var(--space-1);border-radius:9px;background-color:var(--color-danger);color:var(--color-white);font-size:11px;font-weight:600;line-height:1}.sw-update-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background-color:var(--color-accent);color:var(--color-white);font-size:var(--font-size-sm);font-weight:500}.sw-update-banner button{background:#fff3;border:1px solid rgba(255,255,255,.3);color:var(--color-white);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:500}.sw-update-banner .sw-update-dismiss{background:none;border:none;padding:var(--space-1);margin-left:auto;font-size:var(--font-size-md);line-height:1}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.canvas-node{position:relative;background:#fff;border-radius:8px;border:2px solid #e2e8f0;padding:12px;min-width:140px;max-width:220px;font-size:13px;cursor:grab;transition:box-shadow .15s ease,border-color .15s ease,background-color .15s ease,opacity .15s ease,transform .15s ease}.canvas-node:active{cursor:grabbing}.canvas-node-badge{position:absolute;top:-8px;right:-8px;padding:2px 6px;border-radius:999px;font-size:var(--font-size-xs, 11px);font-weight:600;color:var(--color-white, #fff);line-height:1.2;z-index:1}.canvas-node--selected{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.canvas-node:hover{box-shadow:0 4px 12px #0000001a}.canvas-node-handle{width:8px;height:8px;background:#94a3b8;border:2px solid #fff;opacity:0;transition:opacity .15s ease}.canvas-node:hover .canvas-node-handle{opacity:1}.canvas-node-label{font-weight:600;color:#1e293b;margin-top:8px;word-break:break-word}.canvas-node-label-input{width:100%;border:none;background:#f1f5f9;padding:4px 8px;border-radius:4px;font-size:13px;font-weight:600;color:#1e293b;outline:none}.canvas-node-actions{position:absolute;top:-36px;left:50%;transform:translate(-50%);display:flex;gap:4px;background:#fff;padding:4px;border-radius:6px;box-shadow:0 2px 8px #00000026;z-index:10}.canvas-node-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:#64748b;transition:background .15s ease,color .15s ease}.canvas-node-action-btn:hover{background:#f1f5f9;color:#1e293b}.canvas-node-action-btn--danger:hover{background:#fef2f2;color:#ef4444}.canvas-node--task{border-color:var(--node-border-color, #94a3b8)}.canvas-node-task-content{display:flex;flex-direction:column;gap:6px}.canvas-node-task-header{display:flex;align-items:center;gap:6px}.canvas-node-task-status{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.02em}.canvas-node-task-progress{display:flex;align-items:center;gap:8px}.canvas-node-task-progress-bar{flex:1;height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden}.canvas-node-task-progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.canvas-node-task-progress-text{font-size:11px;color:#64748b;min-width:32px;text-align:right}.canvas-node-task-assignee{font-size:11px;color:#64748b;margin-top:2px}.canvas-node--contact{border-radius:50%;width:100px;height:100px;min-width:unset;max-width:unset;padding:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-color:#64748b}.canvas-node-contact-content{display:flex;flex-direction:column;align-items:center;gap:4px}.canvas-node-contact-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);display:flex;align-items:center;justify-content:center;overflow:hidden}.canvas-node-contact-avatar img{width:100%;height:100%;object-fit:cover}.canvas-node-contact-initials{color:#fff;font-weight:600;font-size:14px}.canvas-node-contact-role{font-size:10px;color:#64748b;text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-node--contact .canvas-node-label{font-size:11px;text-align:center;margin-top:4px;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-node--risk{transform:rotate(45deg);border-radius:4px;border-color:var(--node-border-color, #f59e0b);width:100px;height:100px;min-width:unset;max-width:unset;padding:0;display:flex;align-items:center;justify-content:center}.canvas-node-risk-content{transform:rotate(-45deg);display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px}.canvas-node-risk-icon{display:flex;align-items:center;justify-content:center}.canvas-node-risk-severity{font-size:10px;font-weight:600;text-transform:uppercase}.canvas-node-risk-metrics{display:flex;gap:8px;font-size:9px;color:#64748b}.canvas-node--risk .canvas-node-label{transform:rotate(-45deg);position:absolute;bottom:-30px;left:50%;transform:translate(-50%) rotate(-45deg);white-space:nowrap;font-size:11px}.canvas-node--risk .canvas-node-actions{transform:translate(-50%) rotate(-45deg);top:-50px}.canvas-node--document{border-color:#60a5fa;position:relative;overflow:visible}.canvas-node-document-content{display:flex;flex-direction:column;align-items:center;gap:6px}.canvas-node-document-fold{position:absolute;top:0;right:0;width:20px;height:20px;background:linear-gradient(135deg,transparent 50%,#e2e8f0 50%);border-bottom-left-radius:4px}.canvas-node-document-icon{color:#60a5fa}.canvas-node-document-type{font-size:10px;font-weight:600;color:#60a5fa;background:#eff6ff;padding:2px 6px;border-radius:4px}.canvas-node-document-size{font-size:10px;color:#94a3b8}.canvas-node--milestone{transform:rotate(45deg);border-radius:4px;border-color:#1e293b;border-width:3px;width:80px;height:80px;min-width:unset;max-width:unset;padding:0;display:flex;align-items:center;justify-content:center}.canvas-node--milestone-achieved{border-color:#22c55e;background:#f0fdf4}.canvas-node-milestone-content{transform:rotate(-45deg);display:flex;flex-direction:column;align-items:center;gap:4px}.canvas-node-milestone-icon{color:#1e293b}.canvas-node--milestone-achieved .canvas-node-milestone-icon{color:#22c55e}.canvas-node-milestone-date{font-size:10px;font-weight:600;color:#64748b}.canvas-node--milestone .canvas-node-label{position:absolute;bottom:-30px;left:50%;transform:translate(-50%) rotate(-45deg);white-space:nowrap;font-size:11px}.canvas-node--milestone .canvas-node-actions{transform:translate(-50%) rotate(-45deg);top:-50px}.canvas-node--location{clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);border-radius:0;border-color:#4ade80;width:110px;height:100px;min-width:unset;max-width:unset;padding:20px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:none;box-shadow:inset 0 0 0 2px #4ade80}.canvas-node-location-content{display:flex;flex-direction:column;align-items:center;gap:4px}.canvas-node-location-icon{color:#4ade80}.canvas-node-location-address{font-size:10px;color:#64748b;text-align:center;max-width:80px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.canvas-node--location .canvas-node-label{font-size:11px;text-align:center}.canvas-node--budget{border-color:#16a34a}.canvas-node-budget-content{display:flex;flex-direction:column;gap:6px}.canvas-node-budget-header{display:flex;align-items:center;gap:4px;color:#16a34a;font-size:11px;font-weight:600;text-transform:uppercase;background:#f0fdf4;padding:4px 8px;margin:-12px -12px 0;border-radius:6px 6px 0 0}.canvas-node-budget-amount{font-size:18px;font-weight:700;color:#1e293b}.canvas-node-budget-progress{height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden}.canvas-node-budget-progress-fill{height:100%;border-radius:2px;transition:width .3s ease}.canvas-node-budget-spent{font-size:11px;color:#64748b}.canvas-node--material{border-color:#fb923c}.canvas-node-material-content{display:flex;flex-direction:column;align-items:center;gap:6px}.canvas-node-material-icon{color:#fb923c}.canvas-node-material-quantity{font-size:14px;font-weight:600;color:#1e293b}.canvas-node-material-supplier{font-size:10px;color:#64748b}.canvas-node--note{background:#fef9c3;border-color:#facc15;border-radius:4px;min-height:80px}.canvas-node--note:before{content:"";position:absolute;top:0;right:20px;width:20px;height:20px;background:linear-gradient(135deg,#fef9c3 50%,#fde047 50%);transform:translateY(-50%) rotate(45deg)}.canvas-node-note-content{display:flex;flex-direction:column;gap:6px}.canvas-node-note-icon{color:#ca8a04}.canvas-node-note-text{font-size:12px;color:#713f12;line-height:1.4}.canvas-node-note-author{font-size:10px;color:#a16207;font-style:italic}.canvas-node--note .canvas-node-label{color:#713f12}.canvas-node--calendar-event{border-color:#a78bfa}.canvas-node-calendar-event-content{display:flex;flex-direction:column;align-items:center;gap:6px}.canvas-node-calendar-event-icon{color:#a78bfa}.canvas-node-calendar-event-date{font-size:11px;font-weight:500;color:#7c3aed}.canvas-node-calendar-event-location{font-size:10px;color:#64748b}@keyframes canvas-node-pulse{0%{outline-offset:0;outline-color:var(--color-accent, #007aff);opacity:1}50%{outline-offset:4px;outline-color:var(--color-accent, #007aff);opacity:.6}to{outline-offset:0;outline-color:var(--color-accent, #007aff);opacity:1}}.canvas-node--pulse{animation:canvas-node-pulse .75s ease-in-out 2;outline:2px solid var(--color-accent, #007aff);outline-offset:0}.canvas-node--pulse-deleted{animation:canvas-node-pulse .75s ease-in-out 2;outline:2px solid var(--color-danger, #ff3b30);outline-offset:0}.suggested-node{background:var(--color-bg, #fff);border:2px dashed var(--color-accent, #007aff);border-radius:8px;padding:10px 12px;min-width:160px;max-width:220px;font-size:13px;opacity:.85;transition:opacity .15s,border-color .15s}.suggested-node:hover{opacity:1}.suggested-node__handle{width:8px;height:8px;background:var(--color-accent, #007aff);border:2px solid var(--color-bg, #fff);opacity:0}.suggested-node:hover .suggested-node__handle{opacity:1}.suggested-node__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.suggested-node__type{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-tertiary, #94a3b8)}.suggested-node__badge{font-size:10px;font-weight:500;padding:1px 5px;border-radius:3px;background:var(--color-accent-bg, #e0f0ff);color:var(--color-accent, #007aff)}.suggested-node__label{font-size:14px;font-weight:500;color:var(--color-text, #1a1a1a);line-height:1.3;margin-bottom:4px}.suggested-node__group{font-size:11px;color:var(--color-text-tertiary, #94a3b8);margin-bottom:8px}.suggested-node__actions{display:flex;gap:6px}.suggested-node__btn{flex:1;padding:4px 8px;font-size:12px;font-weight:500;border-radius:4px;cursor:pointer;border:1px solid var(--color-border, #e2e8f0);background:var(--color-bg, #fff);color:var(--color-text-secondary, #64748b);transition:background .1s,color .1s}.suggested-node__btn--accept:hover{background:var(--color-accent, #007aff);color:#fff;border-color:var(--color-accent, #007aff)}.suggested-node__btn--dismiss:hover{background:var(--color-bg-hover, #f1f5f9);color:var(--color-danger, #dc3545);border-color:var(--color-danger, #dc3545)}:root{--color-accent-rgb: 0, 122, 255;--color-type-task: var(--color-accent);--color-type-contact: var(--color-status-on-hold-border);--color-type-risk: var(--color-warning);--color-type-document: var(--color-info);--color-type-milestone: var(--color-gray-700);--color-type-location: var(--color-success);--color-type-budget: var(--color-success-text);--color-type-material: var(--color-priority-high-border);--color-type-note: var(--color-warning-text);--color-type-event: var(--color-edge-assignment);--canvas-bg: var(--bg-app);--canvas-surface: var(--bg-surface);--canvas-grid-dot: var(--color-gray-200);--canvas-handle-border: var(--color-gray-300);--canvas-selection-bg: rgba(var(--color-accent-rgb), .1)}.canvas-flow-container{width:100%;height:calc(100vh - 64px);background:var(--canvas-bg)}.canvas-flow-container .react-flow{background:var(--canvas-bg)}.canvas-flow-container .react-flow__node{cursor:grab}.canvas-flow-container .react-flow__node:active{cursor:grabbing}.canvas-flow-container .react-flow__node.selected{z-index:10}.canvas-flow-container .react-flow__controls{display:none}.canvas-flow-container .react-flow__edge-path{stroke-linecap:round}.canvas-flow-container .react-flow__edge.selected .react-flow__edge-path{stroke:var(--color-accent)}.canvas-flow-container .react-flow__connection-line{stroke:var(--color-accent);stroke-width:2;stroke-dasharray:5 5}.canvas-flow-container .react-flow__handle{width:10px;height:10px;background:var(--canvas-surface);border:2px solid var(--canvas-handle-border);border-radius:50%}.canvas-flow-container .react-flow__handle:hover{border-color:var(--color-accent);background:var(--color-accent)}.canvas-flow-container .react-flow__handle-connecting{background:var(--color-accent)}.canvas-flow-container .react-flow__handle-valid{background:var(--color-success);border-color:var(--color-success)}.canvas-flow-container .react-flow__selection{background:var(--canvas-selection-bg);border:1px dashed var(--color-accent)}.canvas-flow-container .react-flow__minimap{background:var(--canvas-surface);border-radius:8px}.canvas-flow-container .react-flow__minimap-mask{fill:#0000000d}.canvas-flow-container .react-flow__background{background:var(--canvas-bg)}.canvas-flow-container .react-flow__pane{-webkit-user-select:none;user-select:none}.canvas-flow-container .react-flow__attribution{display:none!important}@media(max-width:768px){.canvas-flow-container{height:calc(100vh - 56px)}}.canvas-autosave-indicator{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-gray-500);white-space:nowrap}.canvas-autosave-indicator.saving{color:var(--color-accent)}.canvas-autosave-indicator.unsaved{color:var(--color-warning-text)}.canvas-autosave-indicator.saved{color:var(--color-success-text)}.canvas-autosave-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.canvas-autosave-dot.saved{background:var(--color-success)}.canvas-autosave-dot.unsaved{background:var(--color-warning)}.canvas-autosave-spinner{display:inline-block;width:12px;height:12px;border:2px solid var(--color-gray-100);border-top-color:var(--color-accent);border-radius:50%;animation:canvas-spin .6s linear infinite}@keyframes canvas-spin{to{transform:rotate(360deg)}}.canvas-lock-badge{display:flex;align-items:center;gap:4px;padding:2px 8px;background:#fef3c7;border:1px solid #fcd34d;border-radius:4px;font-size:11px;color:#92400e;white-space:nowrap}.node-creation-flow{position:fixed;z-index:100;display:flex;align-items:center;gap:6px;transform:translate(-50%,-50%)}.node-creation-flow-input{width:220px;padding:8px 12px;border:2px solid var(--color-accent, #007aff);border-radius:8px;font-size:14px;font-weight:500;color:var(--color-gray-700, #1d1d1f);background:var(--color-white, #ffffff);outline:none;font-family:inherit}.node-creation-flow-input::placeholder{color:var(--color-gray-400, #86868b)}.node-creation-flow-input:disabled{opacity:.6}.node-creation-flow-spinner{width:16px;height:16px;border:2px solid var(--color-gray-200, #d2d2d7);border-top-color:var(--color-accent, #007aff);border-radius:50%;animation:canvas-spin .6s linear infinite}.type-detect-badge{position:relative}.type-detect-badge-trigger{display:flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid var(--color-gray-200, #d2d2d7);border-radius:6px;background:var(--color-white, #ffffff);cursor:pointer;font-size:12px;color:var(--color-gray-600, #48484a);white-space:nowrap;transition:border-color .15s ease}.type-detect-badge-trigger:hover{border-color:var(--color-gray-400, #86868b)}.type-detect-badge-label{font-weight:500}.type-detect-badge-confidence{color:var(--color-gray-400, #86868b);font-size:11px}.type-detect-badge-chevron{color:var(--color-gray-400, #86868b)}.type-detect-badge-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:160px;background:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #d2d2d7);border-radius:8px;overflow:hidden;z-index:110}.type-detect-badge-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:none;cursor:pointer;font-size:13px;color:var(--color-gray-600, #48484a);text-align:left;transition:background .1s ease}.type-detect-badge-option:hover{background:var(--color-gray-50, #f5f5f7)}.type-detect-badge-option--active{background:var(--bg-selected, #e5f1ff);color:var(--color-accent, #007aff);font-weight:500}.canvas-node-task-assignee-avatar{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--color-accent, #007aff);color:var(--color-white, #ffffff);font-size:9px;font-weight:600}.detail-panel{position:fixed;top:64px;right:0;width:380px;height:calc(100vh - 64px);background:var(--color-white, #ffffff);border-left:1px solid var(--color-gray-200, #d2d2d7);z-index:50;transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column}.detail-panel--open{transform:translate(0)}.detail-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-gray-200, #d2d2d7);background:var(--color-gray-50, #f5f5f7)}.detail-panel-header-left{display:flex;align-items:center;gap:8px}.detail-panel-icon{color:var(--color-gray-500, #6e6e73)}.detail-panel-title{font-size:14px;font-weight:600;color:var(--color-gray-700, #1d1d1f)}.detail-panel-header-right{display:flex;align-items:center;gap:8px}.detail-panel-open-link{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--color-accent, #007aff);text-decoration:none;padding:4px 8px;border-radius:4px;transition:background .15s ease}.detail-panel-open-link:hover{background:var(--color-gray-100, #e5e5ea)}.detail-panel-close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:var(--color-gray-500, #6e6e73);transition:background .15s ease}.detail-panel-close-btn:hover{background:var(--color-gray-100, #e5e5ea)}.detail-panel-content{flex:1;overflow-y:auto;padding:16px}.detail-panel-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-gray-400, #86868b);font-size:14px}.detail-content{display:flex;flex-direction:column;gap:20px}.detail-section{display:flex;flex-direction:column;gap:8px}.detail-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-500, #6e6e73);margin:0}.detail-progress-bar{height:6px;background:var(--color-gray-200, #d2d2d7);border-radius:3px;overflow:hidden}.detail-progress-fill{height:100%;border-radius:3px;transition:width .3s ease}.detail-progress-text{font-size:12px;color:var(--color-gray-500, #6e6e73)}.detail-contact-avatar{width:64px;height:64px;border-radius:50%;background:var(--color-accent, #007aff);display:flex;align-items:center;justify-content:center;margin:0 auto}.detail-contact-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.detail-contact-initials{color:var(--color-white, #ffffff);font-size:24px;font-weight:600}.detail-contact-item{display:flex;align-items:center;gap:8px}.detail-contact-icon{color:var(--color-gray-400, #86868b);flex-shrink:0}.detail-risk-metrics{display:flex;gap:16px}.detail-risk-metric{display:flex;flex-direction:column;gap:2px}.detail-risk-metric-label{font-size:11px;color:var(--color-gray-500, #6e6e73)}.detail-risk-metric-value{font-size:16px;font-weight:600;color:var(--color-gray-700, #1d1d1f)}.detail-document-preview{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;background:var(--color-gray-50, #f5f5f7);border-radius:8px}.detail-document-icon{color:var(--color-accent, #007aff)}.detail-document-type-badge{font-size:10px;font-weight:600;padding:2px 6px;background:var(--color-accent, #007aff);color:var(--color-white, #ffffff);border-radius:4px}.detail-document-meta{display:flex;flex-direction:column;gap:8px}.detail-document-meta-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-gray-600, #48484a)}.detail-document-meta-label{color:var(--color-gray-500, #6e6e73)}.detail-document-download-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:var(--color-accent, #007aff);color:var(--color-white, #ffffff);border:none;border-radius:6px;font-size:13px;font-weight:500;text-decoration:none;cursor:pointer;transition:opacity .15s ease}.detail-document-download-btn:hover{opacity:.9}.detail-milestone-status{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px;background:var(--color-gray-50, #f5f5f7);border-radius:8px;color:var(--color-gray-500, #6e6e73)}.detail-milestone-status--achieved{background:var(--color-success-light, #d1fae5);color:var(--color-success, #16a34a)}.detail-milestone-date-display{display:flex;flex-direction:column;gap:4px}.detail-milestone-date-label{font-size:11px;color:var(--color-gray-500, #6e6e73)}.detail-milestone-date-value{font-size:14px;font-weight:500;color:var(--color-gray-700, #1d1d1f)}.detail-milestone-toggle-btn{width:100%;padding:10px 16px;background:var(--color-gray-100, #e5e5ea);border:none;border-radius:6px;font-size:13px;font-weight:500;color:var(--color-gray-700, #1d1d1f);cursor:pointer;transition:background .15s ease}.detail-milestone-toggle-btn:hover{background:var(--color-gray-200, #d2d2d7)}.detail-milestone-toggle-btn--achieved{background:var(--color-success-light, #d1fae5);color:var(--color-success, #16a34a)}.detail-location-icon-wrapper{display:flex;justify-content:center;padding:16px}.detail-location-icon{color:var(--color-success, #16a34a)}.detail-location-coords{display:flex;gap:16px}.detail-location-coord{display:flex;flex-direction:column;gap:2px}.detail-location-coord-label{font-size:11px;color:var(--color-gray-500, #6e6e73)}.detail-location-coord-value{font-size:13px;font-family:monospace;color:var(--color-gray-700, #1d1d1f)}.detail-location-maps-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:var(--color-gray-100, #e5e5ea);border:none;border-radius:6px;font-size:13px;font-weight:500;color:var(--color-gray-700, #1d1d1f);cursor:pointer;transition:background .15s ease}.detail-location-maps-btn:hover{background:var(--color-gray-200, #d2d2d7)}.detail-budget-header{display:flex;align-items:center;gap:8px;justify-content:center}.detail-budget-icon{color:var(--color-success, #16a34a)}.detail-budget-total{font-size:24px;font-weight:700;color:var(--color-gray-700, #1d1d1f)}.detail-budget-progress{display:flex;flex-direction:column;gap:4px}.detail-budget-progress-bar{height:8px;background:var(--color-gray-200, #d2d2d7);border-radius:4px;overflow:hidden}.detail-budget-progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.detail-budget-progress-text{font-size:12px;color:var(--color-gray-500, #6e6e73);text-align:right}.detail-budget-breakdown{display:flex;justify-content:space-between}.detail-budget-item{display:flex;flex-direction:column;gap:2px}.detail-budget-item-label{font-size:11px;color:var(--color-gray-500, #6e6e73)}.detail-budget-item-value{font-size:14px;font-weight:600;color:var(--color-gray-700, #1d1d1f)}.detail-material-header{display:flex;justify-content:center;padding:16px}.detail-material-icon{color:var(--color-warning, #f59e0b)}.detail-material-quantity{display:flex;gap:12px}.detail-material-total{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--color-gray-50, #f5f5f7);border-radius:6px}.detail-material-total-label{font-size:12px;color:var(--color-gray-500, #6e6e73)}.detail-material-total-value{font-size:16px;font-weight:600;color:var(--color-gray-700, #1d1d1f)}.detail-note-header{display:flex;justify-content:center;padding:16px}.detail-note-icon{color:var(--color-warning, #f59e0b)}.detail-note-meta{display:flex;flex-direction:column;gap:8px}.detail-note-meta-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--color-gray-500, #6e6e73)}.detail-event-header{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px}.detail-event-icon{color:var(--color-purple, #7c3aed)}.detail-event-all-day-badge{font-size:10px;font-weight:600;padding:2px 6px;background:var(--color-purple, #7c3aed);color:var(--color-white, #ffffff);border-radius:4px}.detail-event-datetime{display:flex;flex-direction:column;gap:4px}.detail-event-date{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-gray-700, #1d1d1f)}.detail-event-time{font-size:12px;color:var(--color-gray-500, #6e6e73);margin-left:22px}.detail-event-location{display:flex;align-items:flex-start;gap:8px}.inline-edit-field{display:flex;flex-direction:column;gap:4px;cursor:pointer}.inline-edit-field-label{font-size:11px;color:var(--color-gray-500, #6e6e73)}.inline-edit-field-value{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--color-gray-700, #1d1d1f);padding:6px 8px;margin:-6px -8px;border-radius:4px;transition:background .15s ease}.inline-edit-field-value:hover:not(.inline-edit-field-value--disabled){background:var(--color-gray-100, #e5e5ea)}.inline-edit-field-value--disabled{color:var(--color-gray-400, #86868b);cursor:not-allowed}.inline-edit-field-success{color:var(--color-success, #16a34a);animation:inline-edit-success-fade 1.5s ease forwards}@keyframes inline-edit-success-fade{0%{opacity:1}70%{opacity:1}to{opacity:0}}.inline-edit-field--editing{cursor:default}.inline-edit-field-input-wrapper{position:relative;display:flex;align-items:center}.inline-edit-field-input{width:100%;padding:6px 8px;border:1px solid var(--color-accent, #007aff);border-radius:4px;font-size:14px;color:var(--color-gray-700, #1d1d1f);background:var(--color-white, #ffffff);outline:none;font-family:inherit}.inline-edit-field-input:disabled{opacity:.6}.inline-edit-field-textarea{min-height:80px;resize:vertical}.inline-edit-field-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2386868b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}.inline-edit-field-spinner{position:absolute;right:8px;color:var(--color-accent, #007aff);animation:canvas-spin .6s linear infinite}.canvas-node--stale{background:var(--color-danger-light, rgba(239, 68, 68, .1));border:2px dashed var(--color-danger, #ef4444);border-radius:8px;padding:12px;min-width:160px}.stale-node-content{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.stale-node-icon{color:var(--color-danger, #ef4444)}.stale-node-title{font-size:13px;font-weight:600;color:var(--color-gray-700, #1d1d1f)}.stale-node-reason{font-size:11px;color:var(--color-danger, #ef4444);font-weight:500;padding:2px 8px;background:var(--color-danger-light, rgba(239, 68, 68, .15));border-radius:4px}.stale-node-actions{display:flex;gap:8px;margin-top:12px}.stale-node-action-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid var(--color-gray-300, #c7c7cc);border-radius:4px;background:var(--color-white, #ffffff);font-size:11px;font-weight:500;color:var(--color-gray-600, #48484a);cursor:pointer;transition:all .15s ease}.stale-node-action-btn:hover{background:var(--color-gray-100, #e5e5ea)}.stale-node-action-btn--remove{border-color:var(--color-danger, #ef4444);color:var(--color-danger, #ef4444)}.stale-node-action-btn--remove:hover{background:var(--color-danger-light, rgba(239, 68, 68, .1))}.suggestion-ring-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:90}.suggestion-ring-glow{position:absolute;width:120px;height:80px;transform:translate(-50%,-50%);border-radius:12px;border:2px solid var(--color-accent, #007aff);background:rgba(var(--color-accent-rgb),.05);animation:suggestionGlow 2s ease-in-out infinite;pointer-events:none}.suggestion-ring-glow--loading{animation:suggestionPulse 1s ease-in-out infinite}@keyframes suggestionGlow{0%,to{border-color:rgba(var(--color-accent-rgb),.5);background:rgba(var(--color-accent-rgb),.03)}50%{border-color:rgba(var(--color-accent-rgb),.8);background:rgba(var(--color-accent-rgb),.08)}}@keyframes suggestionPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.05);opacity:.7}}.suggestion-ring-loading{position:absolute;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #d2d2d7);border-radius:20px;font-size:12px;color:var(--color-gray-600, #48484a);pointer-events:none}.suggestion-ring-spinner{width:14px;height:14px;border:2px solid var(--color-gray-200, #d2d2d7);border-top-color:var(--color-accent, #007aff);border-radius:50%;animation:canvas-spin .6s linear infinite}.ghost-node{position:absolute;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 14px;background:var(--color-white, #ffffff);border:2px dashed var(--color-gray-300, #c7c7cc);border-radius:10px;min-width:120px;max-width:180px;opacity:.75;transform-origin:center;cursor:pointer;pointer-events:auto;transition:all .2s ease;animation:ghostNodeFadeIn .3s ease}@keyframes ghostNodeFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:.75;transform:translate(-50%,-50%) scale(1)}}.ghost-node:hover,.ghost-node--hovered{opacity:1;border-style:solid;border-color:var(--color-accent, #007aff);transform:translate(-50%,-50%) scale(1.02)}.ghost-node--focused{opacity:1;border-style:solid;border-color:var(--color-accent, #007aff)}.ghost-node-type{position:absolute;top:-10px;left:10px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--type-color);color:var(--color-white, #ffffff);font-size:10px;font-weight:600}.ghost-node-type-icon{line-height:1}.ghost-node-content{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.ghost-node-name{font-size:13px;font-weight:600;color:var(--color-gray-700, #1d1d1f);line-height:1.3;word-break:break-word}.ghost-node-type-label{font-size:10px;color:var(--color-gray-500, #636366);text-transform:uppercase;letter-spacing:.5px}.ghost-node-accept{position:absolute;top:-8px;right:-8px;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:50%;background:var(--color-accent, #007aff);color:var(--color-white, #ffffff);font-size:16px;font-weight:600;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s ease}.ghost-node:hover .ghost-node-accept,.ghost-node--focused .ghost-node-accept{opacity:1}.ghost-node-accept:hover{background:var(--color-accent-dark, #0056b3)}.ghost-node-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:8px 10px;background:var(--color-gray-800, #1d1d1f);border-radius:6px;max-width:220px;z-index:100;pointer-events:none;animation:tooltipFadeIn .15s ease}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.ghost-node-tooltip-text{font-size:11px;color:var(--color-white, #ffffff);line-height:1.4}.ghost-node-tooltip-fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;padding-top:6px;border-top:1px solid var(--color-gray-600, #48484a)}.ghost-node-tooltip-fields span{font-size:10px;color:var(--color-gray-400, #86868b)}.ghost-node-tooltip-hint{margin-top:6px;padding-top:6px;border-top:1px solid var(--color-gray-600, #48484a);font-size:10px;color:var(--color-gray-400, #86868b)}.ghost-node-confidence{position:absolute;bottom:0;left:0;height:3px;background:var(--color-accent, #007aff);border-radius:0 0 0 8px;opacity:.5;transition:width .3s ease}.suggestion-ring-actions{position:absolute;transform:translate(-50%);display:flex;gap:8px;pointer-events:auto}.suggestion-ring-btn{padding:6px 12px;border:1px solid var(--color-gray-300, #c7c7cc);border-radius:6px;background:var(--color-white, #ffffff);font-size:12px;font-weight:500;color:var(--color-gray-600, #48484a);cursor:pointer;transition:all .15s ease}.suggestion-ring-btn:hover{background:var(--color-gray-100, #e5e5ea)}.suggestion-ring-btn--accept-all{background:var(--color-accent, #007aff);border-color:var(--color-accent, #007aff);color:var(--color-white, #ffffff)}.suggestion-ring-btn--accept-all:hover{background:var(--color-accent-dark, #0056b3)}.suggestion-ring-btn--dismiss{color:var(--color-gray-500, #636366)}.suggestion-ring-source{position:absolute;transform:translate(-50%);font-size:10px;color:var(--color-gray-400, #86868b);text-transform:uppercase;letter-spacing:.5px;pointer-events:none}.suggestion-ring-hints{position:absolute;transform:translate(-50%);display:flex;gap:12px;font-size:10px;color:var(--color-gray-400, #86868b);pointer-events:none}.suggestion-ring-hints span{display:flex;align-items:center;gap:4px}.context-banner{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:6px;margin-bottom:20px;font-size:14px}.context-banner-content{display:flex;align-items:center;gap:8px}.context-icon{font-size:16px}.context-text{color:var(--color-success-text)}.context-text strong{font-weight:600;color:var(--color-success-text)}.context-clear-btn{padding:6px 12px;background:var(--color-white);border:1px solid var(--color-success-border);border-radius:4px;cursor:pointer;font-size:13px;color:var(--color-success-text);font-weight:500;transition:all .2s}@media(hover:hover){.context-clear-btn:hover{background:var(--color-success-bg);border-color:var(--color-success-border)}}.dw-card{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.widget-badge--warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.widget-badge--danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.widget-badge--neutral{background:var(--color-gray-100);color:var(--color-gray-600)}.dw-title{margin:0 0 var(--space-3) 0;font-size:var(--font-size-md);color:var(--color-gray-700)}.dw-empty{color:var(--color-gray-400);font-size:var(--font-size-sm)}.dw-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2);border-bottom:1px solid var(--color-gray-100)}.dw-row-link{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2);border-radius:var(--radius-sm);text-decoration:none;color:inherit;border-bottom:1px solid var(--color-gray-100)}.dw-item-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.dw-item-link{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);text-decoration:none}.dw-detail{font-size:var(--font-size-xs);color:var(--color-gray-400)}.dw-view-link{margin-left:var(--space-2);color:var(--color-accent);text-decoration:none}.dw-action-btn{font-size:var(--font-size-xs);padding:2px 8px;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:pointer;color:var(--color-gray-600)}.dw-action-link{font-size:var(--font-size-xs);padding:2px 8px;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-accent);text-decoration:none}.dw-tag{font-size:var(--font-size-xs);padding:1px 6px;border-radius:var(--radius-sm);background:var(--color-gray-100);color:var(--color-gray-600)}.project-filters{width:220px;flex-shrink:0;background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4);align-self:flex-start}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.filters-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.filters-clear{background:none;border:none;font-family:var(--font-family);font-size:var(--font-size-xs);color:var(--color-accent);cursor:pointer;padding:0}@media(hover:hover){.filters-clear:hover{text-decoration:underline}}.filter-section{border-top:1px solid var(--color-gray-100);padding-top:var(--space-3);margin-top:var(--space-3)}.filter-section:first-of-type{border-top:none;padding-top:0;margin-top:0}.filter-section-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;padding:0;font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);cursor:pointer;margin-bottom:var(--space-2)}.filter-chevron{font-size:var(--font-size-md);line-height:1;color:var(--color-gray-400)}.filter-section-body{display:flex;flex-direction:column;gap:var(--space-2)}.filter-checkbox{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.filter-checkbox input[type=checkbox]{width:14px;height:14px;accent-color:var(--color-accent)}.filter-date-label{display:flex;flex-direction:column;gap:2px;font-size:var(--font-size-xs);color:var(--color-gray-500)}.filter-date-input{padding:var(--space-1) var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-gray-700)}@media(max-width:768px){.project-filters{width:100%}}.complexity-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:var(--font-size-sm, 13px);font-weight:500;line-height:1.4;letter-spacing:.02em;text-transform:uppercase}.complexity-badge--simple{background:var(--color-surface-success, #f0fdf4);color:var(--color-text-success, #166534);border:1px solid var(--color-border-success, #bbf7d0)}.complexity-badge--moderate{background:var(--color-surface-info, #eff6ff);color:var(--color-text-info, #1e40af);border:1px solid var(--color-border-info, #bfdbfe)}.complexity-badge--complex{background:var(--color-surface-warning, #fffbeb);color:var(--color-text-warning, #92400e);border:1px solid var(--color-border-warning, #fde68a)}.complexity-badge--enterprise{background:var(--color-surface-danger, #fef2f2);color:var(--color-text-danger, #991b1b);border:1px solid var(--color-border-danger, #fecaca)}.complexity-badge__override{font-weight:400;font-size:var(--font-size-xs, 12px);text-transform:none;opacity:.8}.complexity-assessment{background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;padding:20px}.complexity-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.complexity-title{font-size:var(--font-size-lg, 16px);font-weight:600;margin:0;color:var(--color-text-primary, #111827)}.complexity-body{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:768px){.complexity-body{grid-template-columns:1fr}}.complexity-chart{min-height:280px}.complexity-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm, 13px)}.complexity-table th{text-align:left;padding:6px 8px;border-bottom:2px solid var(--color-border, #e5e7eb);font-weight:600;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;font-size:var(--font-size-xs, 12px);letter-spacing:.04em}.complexity-table td{padding:6px 8px;border-bottom:1px solid var(--color-border-light, #f3f4f6);color:var(--color-text-primary, #111827)}.complexity-total-row{font-weight:600}.complexity-total-row td{border-top:2px solid var(--color-border, #e5e7eb);border-bottom:none;padding-top:8px}.complexity-score{font-weight:600;font-variant-numeric:tabular-nums}.complexity-score-max{color:var(--color-text-tertiary, #9ca3af);font-weight:400}.complexity-controls{display:flex;align-items:flex-end;gap:12px;margin-top:16px}.complexity-override{flex:1}.complexity-override label{display:block;font-size:var(--font-size-xs, 12px);font-weight:500;color:var(--color-text-secondary, #6b7280);margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.complexity-override select{width:100%;padding:6px 8px;border:1px solid var(--color-border, #e5e7eb);border-radius:4px;font-size:var(--font-size-base, 14px);font-family:inherit;background:var(--color-surface, #fff);color:var(--color-text-primary, #111827)}.complexity-assessed-at{margin-top:12px;font-size:var(--font-size-xs, 12px);color:var(--color-text-tertiary, #9ca3af)}.complexity-loading,.complexity-error{padding:20px;text-align:center;color:var(--color-text-secondary, #6b7280);font-size:var(--font-size-sm, 13px)}.complexity-error{color:var(--color-text-danger, #991b1b)}.overview-tab{display:flex;flex-direction:column;gap:var(--space-5)}.overview-section-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-3)}.overview-summary{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-5)}.overview-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-4)}.summary-item{display:flex;flex-direction:column;gap:2px}.summary-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:var(--font-size-base);font-weight:500;color:var(--color-gray-700)}.overview-description{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-gray-100);font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.6}.overview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.metric-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.metric-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-gray-700)}.metric-sub{font-size:var(--font-size-xs);color:var(--color-gray-400)}.metric-progress{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.overview-milestones{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-5)}.milestone-list{display:flex;flex-direction:column;gap:var(--space-3)}.milestone-list-item{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm)}.milestone-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.milestone-dot-pending{background:var(--color-gray-300)}.milestone-dot-in-progress{background:var(--color-accent)}.milestone-dot-complete{background:var(--color-success)}.milestone-dot-delayed{background:var(--color-danger)}.milestone-item-name{flex:1;color:var(--color-gray-700)}.milestone-item-date{color:var(--color-gray-400);font-size:var(--font-size-xs)}.overview-empty-text{font-size:var(--font-size-sm);color:var(--color-gray-400)}.overview-actions{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-5)}.overview-actions-row{display:flex;gap:var(--space-3);flex-wrap:wrap}.overview-loading{text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm);padding:var(--space-4)}@media(max-width:767px){.overview-metrics{grid-template-columns:1fr}.overview-summary{padding:var(--space-3)}.overview-summary-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.overview-milestones,.overview-actions{padding:var(--space-3)}.overview-actions-row{flex-direction:column}}.gantt-segmented-border{stroke:var(--border-color, var(--color-gray-200));stroke-width:1}.gantt-segment-divider{stroke:var(--bg-surface);stroke-width:1}.gantt-segment-children{transition:opacity .25s ease,transform .25s ease}.gantt-segment-children-enter{opacity:0;transform:translateY(-4px)}.gantt-segment-children-active{opacity:1;transform:translateY(0)}.gantt-segmented-bar{transition:opacity .15s}.baseline-manager{padding:var(--space-4) 0}.baseline-manager-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.baseline-manager-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin:0}.baseline-manager-actions{display:flex;gap:var(--space-2)}.baseline-btn{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);font-weight:500;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-600);cursor:pointer;white-space:nowrap}.baseline-btn:hover{background:var(--bg-hover)}.baseline-btn:disabled{opacity:.5;cursor:not-allowed}.baseline-btn-primary{background:var(--color-accent);color:var(--text-on-primary, #fff);border-color:var(--color-accent)}.baseline-btn-primary:hover{opacity:.9}.baseline-btn-danger{color:var(--color-danger);border-color:var(--color-danger)}.baseline-btn-danger:hover{background:var(--color-danger);color:var(--text-on-primary, #fff)}.baseline-btn-sm{padding:2px var(--space-2);font-size:var(--font-size-xs)}.baseline-error{padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.baseline-create-form{padding:var(--space-3);margin-bottom:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface)}.baseline-form-field{margin-bottom:var(--space-2)}.baseline-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600);margin-bottom:var(--space-1)}.baseline-input{width:100%;padding:var(--space-2);font-size:var(--font-size-base);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-app);color:var(--color-gray-700);box-sizing:border-box}.baseline-input:focus{outline:none;border-color:var(--color-accent)}.baseline-form-actions{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.baseline-hint{font-size:var(--font-size-xs);color:var(--color-gray-400)}.baseline-empty{font-size:var(--font-size-sm);color:var(--color-gray-400);padding:var(--space-3) 0}.baseline-list{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.baseline-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--bg-surface);cursor:pointer;transition:background .1s}.baseline-item:hover{background:var(--bg-hover)}.baseline-item-selected{background:var(--color-accent-bg, var(--bg-active));border-left:3px solid var(--color-accent)}.baseline-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.baseline-item-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.baseline-item-date{font-size:var(--font-size-xs);color:var(--color-gray-400)}.baseline-item-note{font-size:var(--font-size-xs);color:var(--color-gray-400);font-style:italic}.baseline-item-actions{display:flex;align-items:center;gap:var(--space-1);flex-shrink:0}.baseline-confirm-text{font-size:var(--font-size-xs);color:var(--color-danger);font-weight:500}.baseline-limit-warning{font-size:var(--font-size-xs);color:var(--color-warning);margin-top:var(--space-2)}.baseline-comparison{margin-top:var(--space-4)}.baseline-comparison-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-3) 0}.baseline-table-wrapper{overflow-x:auto}.baseline-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.baseline-table th{text-align:left;padding:var(--space-2);font-weight:600;color:var(--color-gray-600);border-bottom:2px solid var(--border-color);white-space:nowrap}.baseline-table td{padding:var(--space-2);color:var(--color-gray-600);border-bottom:1px solid var(--border-color);white-space:nowrap}.baseline-cell-task{font-weight:500;color:var(--color-gray-700);max-width:200px;overflow:hidden;text-overflow:ellipsis}.baseline-row-slipped{background:var(--color-danger-bg)}.baseline-var-behind{color:var(--color-danger);font-weight:500}.baseline-var-ahead{color:var(--color-success);font-weight:500}.gantt-container{display:flex;flex-direction:column;height:calc(100vh - 200px);min-height:400px;border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-lg, 12px);background:var(--bg-surface);overflow:hidden}.gantt-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color, var(--color-gray-200));background:var(--color-gray-50);flex-wrap:wrap;flex-shrink:0}.gantt-toolbar-group{display:flex;align-items:center;gap:var(--space-1)}.gantt-btn{padding:var(--space-1) var(--space-2);border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-sm, 6px);background:var(--bg-surface);color:var(--color-gray-600);font-size:var(--font-size-xs);font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}@media(hover:hover){.gantt-btn:hover{background:var(--bg-hover);color:var(--color-gray-700)}}.gantt-btn.active,.gantt-btn-primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.gantt-btn-primary:hover{background:var(--color-accent-hover, var(--color-accent))}}.gantt-btn-critical.active{background:var(--color-danger);color:var(--color-white);border-color:var(--color-danger)}.gantt-zoom-group{border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-sm, 6px);overflow:hidden;gap:0}.gantt-zoom-btn{border:none;border-radius:0;border-right:1px solid var(--border-color, var(--color-gray-200))}.gantt-zoom-btn:last-child{border-right:none}.gantt-body{display:flex;flex:1;min-height:0;overflow:hidden}.gantt-splitter{width:5px;cursor:col-resize;background:var(--border-color, var(--color-gray-200));flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background .15s}@media(hover:hover){.gantt-splitter:hover{background:var(--color-accent)}}.gantt-splitter-handle{width:2px;height:24px;border-radius:1px;background:var(--color-gray-400);opacity:.5}@media(hover:hover){.gantt-splitter:hover .gantt-splitter-handle{background:var(--color-white);opacity:1}}.gantt-table{display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.gantt-table-header{display:flex;align-items:center;border-bottom:1px solid var(--border-color, var(--color-gray-200));background:var(--color-gray-50);flex-shrink:0}.gantt-th{padding:0 var(--space-2);font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;height:100%}.gantt-th-code{width:70px;min-width:70px}.gantt-th-title{flex:1;min-width:100px}.gantt-th-duration{width:56px;min-width:56px}.gantt-th-date{width:70px;min-width:70px}.gantt-th-preds{width:50px;min-width:50px}.gantt-th-pct{width:36px;min-width:36px}.gantt-th-assignee{width:80px;min-width:80px}.gantt-table-body{flex:1;overflow-y:auto;overflow-x:hidden}.gantt-table-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color, var(--color-gray-100));box-sizing:border-box}@media(hover:hover){.gantt-table-row:hover{background:var(--bg-hover)}}.gantt-td{padding:0 var(--space-2);font-size:var(--font-size-xs);color:var(--color-gray-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;height:100%}.gantt-td-code{width:70px;min-width:70px;gap:2px}.gantt-td-title{flex:1;min-width:100px;gap:var(--space-1)}.gantt-td-duration{width:56px;min-width:56px}.gantt-td-date{width:70px;min-width:70px}.gantt-td-preds{width:50px;min-width:50px}.gantt-td-pct{width:36px;min-width:36px}.gantt-td-assignee{width:80px;min-width:80px}.gantt-expand-btn{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--color-gray-400);font-size:8px;flex-shrink:0;border-radius:2px}@media(hover:hover){.gantt-expand-btn:hover{background:var(--bg-active);color:var(--color-gray-700)}}.gantt-expand-spacer{width:16px;flex-shrink:0}.gantt-code{color:var(--color-gray-400);font-variant-numeric:tabular-nums;font-size:10px}.gantt-milestone-icon{color:var(--color-warning);font-size:10px;flex-shrink:0}.gantt-cell-text{cursor:text;padding:1px 2px;border-radius:2px;overflow:hidden;text-overflow:ellipsis}@media(hover:hover){.gantt-cell-text:hover{background:var(--bg-hover)}}.gantt-cell-input{width:100%;padding:1px 2px;border:1px solid var(--color-accent);border-radius:2px;font-size:var(--font-size-xs);font-family:inherit;outline:none;background:var(--bg-surface);color:var(--color-gray-700);box-shadow:0 0 0 2px var(--color-accent-light)}.gantt-preds-text{color:var(--color-gray-400);cursor:default}.gantt-timeline{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.gantt-timeline-header{flex-shrink:0;overflow:hidden;border-bottom:1px solid var(--border-color, var(--color-gray-200))}.gantt-timeline-scroll{flex:1;overflow:auto}.gantt-timeline-svg{display:block}.gantt-header-cell-top{fill:var(--color-gray-50)}.gantt-header-cell-bottom{fill:var(--bg-surface)}.gantt-header-text-top{fill:var(--color-gray-500);font-size:10px;font-weight:600;font-family:inherit}.gantt-header-text-bottom{fill:var(--color-gray-500);font-size:10px;font-family:inherit}.gantt-header-divider{stroke:var(--border-color, var(--color-gray-200));stroke-width:.5}.gantt-header-border{stroke:var(--border-color, var(--color-gray-200));stroke-width:1}.gantt-row-even{fill:var(--bg-surface)}.gantt-row-odd{fill:var(--color-gray-50)}.gantt-weekend-band{fill:var(--color-gray-100);opacity:.5}.gantt-grid-line{stroke:var(--border-color, var(--color-gray-100));stroke-width:.5}.gantt-bar{fill:var(--color-accent);opacity:.85;transition:opacity .15s}@media(hover:hover){.gantt-bar:hover{opacity:1}}.gantt-bar-critical{fill:var(--color-danger)}.gantt-bar-faded{opacity:.4}.gantt-bar-dragging{opacity:.6}.gantt-bar-progress{fill:var(--color-accent);opacity:.4;pointer-events:none}.gantt-bar-progress-critical{fill:var(--color-danger);opacity:.4}.gantt-bar-edge{fill:var(--color-white);opacity:.7}@media(hover:hover){.gantt-bar-edge:hover{opacity:1}}.gantt-bar-label{fill:var(--color-white);font-size:10px;font-family:inherit;pointer-events:none}.gantt-connector-dot{fill:var(--color-accent);stroke:var(--color-white);stroke-width:1.5}@media(hover:hover){.gantt-connector-dot:hover{fill:var(--color-accent-hover, var(--color-accent));r:5}}.gantt-milestone-filled{fill:var(--color-accent)}.gantt-milestone-outline{fill:none;stroke:var(--color-accent);stroke-width:2}.gantt-milestone-critical{fill:var(--color-danger);stroke:var(--color-danger)}.gantt-milestone-faded{opacity:.4}.gantt-dep-arrow{fill:none;stroke:var(--color-gray-400);stroke-width:1.5}.gantt-dep-arrow-critical{fill:none;stroke:var(--color-danger);stroke-width:1.5}.gantt-arrow-marker{fill:var(--color-gray-400)}.gantt-arrow-marker-critical{fill:var(--color-danger)}.gantt-dep-rubberband{stroke:var(--color-accent);stroke-width:2;stroke-dasharray:4 4;fill:none}.gantt-today-line{stroke:var(--color-danger);stroke-width:1.5;stroke-dasharray:4 3;opacity:.7}.gantt-today-label-bg{fill:var(--color-danger);opacity:.9}.gantt-today-label{fill:var(--color-white);font-size:9px;font-weight:600;font-family:inherit}.gantt-loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-gray-400);font-size:var(--font-size-sm)}.gantt-error{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-danger);font-size:var(--font-size-sm)}.tasks-view-toggle{display:flex;border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-md, 8px);overflow:hidden}.tasks-view-btn{padding:var(--space-2) var(--space-3);border:none;background:var(--bg-surface);color:var(--color-gray-600);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer;transition:background .15s,color .15s;border-right:1px solid var(--border-color, var(--color-gray-200))}.tasks-view-btn:last-child{border-right:none}@media(hover:hover){.tasks-view-btn:hover{background:var(--bg-hover)}}.tasks-view-btn.active{background:var(--color-accent);color:var(--color-white)}.gantt-baseline-bar{fill:var(--color-baseline, var(--color-gray-300));opacity:.4}.gantt-baseline-slipped{fill:var(--color-baseline-slipped, var(--color-warning));opacity:.5}.gantt-baseline-group{margin-left:auto}.gantt-baseline-select{font-size:var(--font-size-xs);font-family:var(--font-family);padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700);cursor:pointer;min-width:120px}.gantt-baseline-select:focus{outline:none;border-color:var(--color-accent)}@media(hover:none){.gantt-expand-btn{min-width:44px;min-height:44px}}.gantt-banner-mobile{display:none;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-info-bg);color:var(--color-info-text);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-info-border);flex-shrink:0}@media(max-width:767px){.gantt-banner-mobile{display:flex}.gantt-timeline,.gantt-splitter{display:none}.gantt-table{flex:1;width:100%}.gantt-toolbar{padding:var(--space-2);gap:var(--space-2)}.gantt-baseline-group{margin-left:0;width:100%}.gantt-zoom-group,.gantt-th-preds,.gantt-td-preds,.gantt-th-assignee,.gantt-td-assignee{display:none}}.task-calendar{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.task-calendar-nav{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.task-calendar-nav-left{display:flex;align-items:center;gap:var(--space-2)}.task-calendar-nav-btn{padding:var(--space-1) var(--space-2)!important;min-width:30px;font-size:var(--font-size-sm)}@media(hover:none){.task-calendar-nav-btn{min-width:44px;min-height:44px}}.task-calendar-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin-left:var(--space-2)}.task-calendar-view-toggle{display:flex;background:var(--bg-app);border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-color)}.task-calendar-view-btn{padding:var(--space-1) var(--space-3);background:none;border:none;font-size:var(--font-size-xs);color:var(--color-gray-500);cursor:pointer}.task-calendar-view-btn.active{background:var(--bg-surface);color:var(--color-accent);font-weight:600}.task-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.task-calendar-header-cell{padding:var(--space-2) var(--space-1);text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);background:var(--bg-app);border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.5px}.task-calendar-cell{min-height:90px;padding:var(--space-1);border-bottom:1px solid var(--border-color-light);border-right:1px solid var(--border-color-light);background:var(--bg-surface);cursor:pointer;transition:background .1s}@media(hover:hover){.task-calendar-cell:hover{background:var(--bg-hover)}}.task-calendar-cell.other-month{background:var(--bg-stripe)}.task-calendar-cell.other-month .task-calendar-day-number{color:var(--color-gray-300)}.task-calendar-cell.today{background:var(--color-accent-light)}.task-calendar-cell.today .task-calendar-day-number{color:var(--color-accent);font-weight:700}.task-calendar-cell.week-view{min-height:200px}.task-calendar-day-number{display:block;font-size:var(--font-size-xs);color:var(--color-gray-600);margin-bottom:var(--space-1);font-weight:500}.task-calendar-tasks{display:flex;flex-direction:column;gap:2px}.task-calendar-task{font-size:10px;padding:1px var(--space-1);border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:grab;background:var(--color-accent-light);color:var(--color-accent);transition:box-shadow .1s}@media(hover:hover){.task-calendar-task:hover{box-shadow:var(--shadow-sm)}}.task-calendar-task[data-status=in-progress]{background:var(--color-warning-bg);color:var(--color-warning-text)}.task-calendar-task[data-status=complete]{background:var(--color-success-bg);color:var(--color-success-text)}.task-calendar-task[data-status=on-hold]{background:var(--color-info-bg);color:var(--color-info-text)}.task-calendar-task[data-status=cancelled]{background:var(--color-danger-bg);color:var(--color-danger-text)}.task-calendar-task.milestone{background:var(--color-warning-bg);color:var(--color-warning-text);font-weight:600}.task-calendar-more{font-size:10px;color:var(--color-gray-400);padding-left:var(--space-1)}.task-calendar-agenda{display:none;flex-direction:column;gap:var(--space-1)}.task-calendar-agenda-day{display:flex;flex-direction:column;gap:var(--space-1)}.task-calendar-agenda-date{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);padding:var(--space-2) 0;border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-app);z-index:1}.task-calendar-agenda-date.is-today{color:var(--color-accent)}.task-calendar-agenda-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-surface);border-radius:var(--radius-sm);border:1px solid var(--border-color-light);cursor:pointer;min-height:var(--tap-target-min)}.task-calendar-agenda-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--color-accent)}.task-calendar-agenda-dot[data-status=in-progress]{background:var(--color-warning)}.task-calendar-agenda-dot[data-status=complete]{background:var(--color-success)}.task-calendar-agenda-dot[data-status=on-hold]{background:var(--color-info)}.task-calendar-agenda-dot[data-status=cancelled]{background:var(--color-danger)}.task-calendar-agenda-title{flex:1;font-size:var(--font-size-sm);color:var(--color-gray-700);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-calendar-agenda-status{font-size:var(--font-size-xs);color:var(--color-gray-400);white-space:nowrap}.task-calendar-agenda-empty{font-size:var(--font-size-sm);color:var(--color-gray-400);text-align:center;padding:var(--space-6)}@media(max-width:767px){.task-calendar-grid{display:none}.task-calendar-agenda{display:flex}.task-calendar-nav{flex-wrap:wrap;gap:var(--space-2)}.task-calendar-view-toggle{display:none}}.plan-actual{border:1px solid var(--border-color);border-radius:var(--radius-md, 6px);padding:16px;margin:16px 0;background:var(--bg-secondary, #fafafa)}.plan-actual-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.plan-actual-title{font-size:14px;font-weight:600;margin:0;color:var(--text-primary)}.plan-actual-controls{display:flex;align-items:center;gap:8px}.plan-actual-toggle{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary);cursor:pointer}.plan-actual-toggle input{margin:0}.plan-actual-status{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm, 4px);margin-bottom:16px;font-size:13px}.plan-actual-status-label{font-weight:600}.plan-actual-status-detail{color:var(--text-secondary)}.variance-status-on_track,.variance-status-ahead{background:var(--color-success-bg, #e8f8ed);color:var(--color-success, #34C759)}.variance-status-at_risk{background:var(--color-warning-bg, #fff4e5);color:var(--color-warning, #FF9500)}.variance-status-behind{background:var(--color-danger-bg, #fef0ef);color:var(--color-danger, #FF3B30)}.plan-actual-section{margin-bottom:16px}.plan-actual-section:last-child{margin-bottom:0}.plan-actual-section-title{font-size:13px;font-weight:500;color:var(--text-secondary);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.plan-actual-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plan-actual-field{display:flex;flex-direction:column;gap:4px}.plan-actual-field label{font-size:12px;color:var(--text-secondary);font-weight:500}.plan-actual-field input{padding:6px 8px;border:1px solid var(--border-color);border-radius:var(--radius-sm, 4px);font-size:13px;font-family:inherit;background:var(--bg-primary, #fff)}.plan-actual-field input:focus{outline:none;border-color:var(--color-accent, #007AFF);box-shadow:0 0 0 2px #007aff26}.plan-actual-not-started{font-size:13px;color:var(--text-tertiary, #999);font-style:italic;margin:8px 0 0}.notes-panel{margin-top:var(--space-4)}.notes-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.notes-panel-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0}.notes-panel-actions{display:flex;align-items:center;gap:var(--space-2)}.notes-panel-status{padding:var(--space-3);color:var(--color-gray-400);font-size:var(--font-size-sm)}.notes-panel-error{padding:var(--space-3);color:var(--color-danger);font-size:var(--font-size-sm)}.notes-panel-empty{padding:var(--space-5);text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm)}.notes-panel-search{margin-bottom:var(--space-3)}.notes-search-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700);background:var(--bg-surface)}.notes-search-input:focus{outline:none;border-color:var(--color-accent)}.notes-list{display:flex;flex-direction:column;gap:var(--space-3)}.note-card{padding:var(--space-3) var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface)}.note-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.note-card-date{font-size:var(--font-size-xs);color:var(--color-gray-400);font-weight:500}.note-card-actions{display:flex;gap:var(--space-2);opacity:0;transition:opacity .15s}.note-card:hover .note-card-actions{opacity:1}.note-card-action{background:none;border:none;padding:0;font-size:var(--font-size-xs);color:var(--color-gray-400);cursor:pointer}.note-card-action:hover{color:var(--color-accent)}.note-card-action--danger:hover{color:var(--color-danger)}.note-card-content{font-size:var(--font-size-base);color:var(--color-gray-700);line-height:var(--line-height);white-space:pre-wrap;word-break:break-word}.note-editor{margin-bottom:var(--space-3)}.note-editor-textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-gray-700);line-height:var(--line-height);resize:vertical;min-height:100px;background:var(--bg-surface)}.note-editor-textarea:focus{outline:none;border-color:var(--color-accent)}.note-editor-textarea:disabled{opacity:.6}.note-editor-actions{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2)}.note-editor-hint{font-size:var(--font-size-xs);color:var(--color-gray-400)}.note-editor-buttons{display:flex;gap:var(--space-2)}.voice-recorder{display:flex;align-items:center;gap:var(--space-2)}.voice-recorder-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-danger);animation:voice-pulse 1s infinite}@keyframes voice-pulse{0%,to{opacity:1}50%{opacity:.4}}.voice-recorder-duration{font-size:var(--font-size-sm);color:var(--color-gray-700);font-variant-numeric:tabular-nums}.tab-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-5)}.tab-card+.tab-card{margin-top:var(--space-5)}.tab-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.tab-section-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-3)}.tab-card-header .tab-section-title{margin-bottom:0}.tab-empty{font-size:var(--font-size-sm);color:var(--color-gray-400);padding:var(--space-4) 0}.tab-table-wrap{overflow-x:auto}.tab-table{width:100%;border-collapse:collapse}.tab-table th{padding:var(--space-2) var(--space-3);text-align:left;font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-gray-200);white-space:nowrap}.tab-table td{padding:var(--space-3);font-size:var(--font-size-sm);color:var(--color-gray-600);border-bottom:1px solid var(--color-gray-100)}.team-name{font-weight:600;color:var(--color-gray-700);display:flex;align-items:center;gap:var(--space-2)}.primary-badge{display:inline-flex;padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;background:var(--color-accent-light);color:var(--color-accent)}.finance-overview{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-4)}.finance-stat{display:flex;flex-direction:column;gap:2px}.finance-stat-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.finance-stat-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-gray-700)}.finance-negative{color:var(--color-danger)}.finance-cat-name{font-weight:600;color:var(--color-gray-700)}.finance-pct-cell{display:flex;align-items:center;gap:var(--space-2)}.schedule-tab{display:flex;flex-direction:column;gap:var(--space-5)}.schedule-dates{display:flex;gap:var(--space-8)}.schedule-date-item{display:flex;flex-direction:column;gap:2px}.schedule-date-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.schedule-date-value{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.schedule-timeline{display:flex;flex-direction:column}.timeline-item{display:flex;gap:var(--space-3);min-height:48px}.timeline-marker{display:flex;flex-direction:column;align-items:center;width:16px;flex-shrink:0}.timeline-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:4px}.timeline-line{width:2px;flex:1;background:var(--color-gray-200);margin:4px 0}.timeline-content{flex:1;padding-bottom:var(--space-4)}.timeline-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.timeline-name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700)}.timeline-status{font-size:var(--font-size-xs);font-weight:500}.timeline-date{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:2px}.tab-placeholder .tab-card{min-height:200px;display:flex;align-items:center;justify-content:center}.placeholder-content{text-align:center;max-width:400px}.placeholder-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-600);margin-bottom:var(--space-2)}.placeholder-description{font-size:var(--font-size-sm);color:var(--color-gray-400);line-height:1.6;margin-bottom:var(--space-4)}.placeholder-badge{display:inline-flex;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;background:var(--color-gray-100);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.5px}.task-board{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);overflow-x:auto}.task-board-toolbar{display:flex;align-items:center;gap:var(--space-2);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.task-board-group-label{font-size:var(--font-size-sm);color:var(--color-gray-500)}.task-board-group-select{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700)}.task-board-swimlane{margin-bottom:var(--space-4)}.task-board-swimlane-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;margin-bottom:var(--space-2);border-bottom:1px solid var(--border-color)}.task-board-swimlane-name{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.task-board-swimlane-count{font-size:var(--font-size-xs);color:var(--color-gray-400);background:var(--bg-hover);padding:2px var(--space-2);border-radius:var(--radius-sm)}.task-board-columns{display:flex;gap:var(--space-3);min-height:200px}.task-board-column{flex:1;min-width:200px;background:var(--bg-app);border-radius:var(--radius-md);display:flex;flex-direction:column}.task-board-column-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color)}.task-board-column-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.5px}.task-board-column-count{font-size:var(--font-size-xs);color:var(--color-gray-400)}.task-board-column-body{flex:1;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2);min-height:100px}.task-board-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-3);cursor:grab;transition:box-shadow .15s}@media(hover:hover){.task-board-card:hover{box-shadow:var(--shadow-md)}}.task-board-card:active{cursor:grabbing}.task-board-card-header{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-2)}.task-board-priority-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex-shrink:0}.task-board-card-title{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);line-height:var(--line-height)}.task-board-card-assignee{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-gray-500);margin-bottom:var(--space-1)}.task-board-card-avatar{width:20px;height:20px;border-radius:50%;background:var(--color-accent-light);color:var(--color-accent);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600;flex-shrink:0}.task-board-card-footer{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1)}.task-board-card-date{font-size:var(--font-size-xs);color:var(--color-gray-400)}.task-board-card-tag{font-size:10px;padding:1px var(--space-1);background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--color-gray-500)}.task-board-card-progress{height:3px;background:var(--color-gray-100);border-radius:2px;margin-top:var(--space-2);overflow:hidden}.task-board-card-progress-fill{height:100%;background:var(--color-accent);border-radius:2px;transition:width .2s}.task-board-empty{text-align:center;color:var(--color-gray-300);font-size:var(--font-size-xs);padding:var(--space-6) var(--space-2)}.task-board-add-btn{margin:var(--space-2);padding:var(--space-1);border:1px dashed var(--border-color);border-radius:var(--radius-sm);background:none;color:var(--color-gray-400);font-size:var(--font-size-xs);cursor:pointer;transition:color .15s,border-color .15s}@media(hover:hover){.task-board-add-btn:hover{color:var(--color-accent);border-color:var(--color-accent)}}@media(max-width:767px){.task-board{padding:var(--space-2)}.task-board-columns{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2)}.task-board-column{min-width:280px;flex:0 0 280px;scroll-snap-align:start}}@media(max-width:767px){.task-board--mobile{padding:var(--space-2);overflow-x:hidden}.task-board-mobile-tabs{display:flex;gap:var(--space-1);overflow-x:auto;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-color);scrollbar-width:none;-webkit-overflow-scrolling:touch}.task-board-mobile-tabs::-webkit-scrollbar{display:none}.task-board-mobile-tab{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-full, 999px);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer;white-space:nowrap}.task-board-mobile-tab--active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.task-board-mobile-tab-count{font-size:var(--font-size-xs);background:#ffffff4d;border-radius:var(--radius-full, 999px);padding:0 6px}.task-board-mobile-tab--active .task-board-mobile-tab-count{background:#ffffff4d}.task-board-mobile-column{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-3)}.task-board-card--mobile{padding:var(--space-3);min-height:72px;border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-color)}.task-board-mobile-move-btn{margin-left:auto;padding:2px var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-hover);font-size:var(--font-size-xs);color:var(--color-gray-500);cursor:pointer}}.template-picker-overlay{position:fixed;inset:0;background:#0000004d;z-index:1000}.template-picker-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:800px;max-width:90vw;max-height:80vh;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1001;display:flex;flex-direction:column}.template-picker-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color)}.template-picker-header h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin:0}.template-picker-close{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-gray-400);cursor:pointer;padding:var(--space-1)}@media(hover:hover){.template-picker-close:hover{color:var(--color-gray-700)}}.template-picker-body{display:flex;flex:1;overflow:hidden}.template-picker-list{width:300px;border-right:1px solid var(--border-color);overflow-y:auto;padding:var(--space-2)}.template-picker-loading{padding:var(--space-6);text-align:center;color:var(--color-gray-400)}.template-picker-item{padding:var(--space-3);border-radius:var(--radius-sm);cursor:pointer;margin-bottom:var(--space-1);transition:background .1s}@media(hover:hover){.template-picker-item:hover{background:var(--bg-hover)}}.template-picker-item.selected{background:var(--color-accent-light);border:1px solid var(--color-accent)}.template-picker-item-name{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.template-picker-item-meta{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.template-picker-item-category{font-size:var(--font-size-xs);padding:1px var(--space-1);background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--color-gray-500);text-transform:capitalize}.template-picker-item-count{font-size:var(--font-size-xs);color:var(--color-gray-400)}.template-picker-item-desc{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:var(--space-1);line-height:var(--line-height)}.template-picker-preview{flex:1;overflow-y:auto;padding:var(--space-4)}.template-picker-preview h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-2)}.template-picker-preview-desc{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-3)}.template-picker-task-list{display:flex;flex-direction:column;gap:2px}.template-picker-task-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}@media(hover:hover){.template-picker-task-item:hover{background:var(--bg-hover)}}.template-picker-task-name{color:var(--color-gray-700)}.template-picker-task-name.milestone{color:var(--color-warning-text);font-weight:600}.template-picker-task-meta{font-size:var(--font-size-xs);color:var(--color-gray-400)}.template-picker-no-preview{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-gray-300);font-size:var(--font-size-sm)}.template-picker-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-color)}.template-picker-date{display:flex;align-items:center;gap:var(--space-2)}.template-picker-date label{font-size:var(--font-size-sm);color:var(--color-gray-500)}.template-picker-date input{padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}@media(hover:none){.template-picker-close{min-width:44px;min-height:44px}}.template-picker-actions{display:flex;gap:var(--space-2)}.tasks-tab{display:flex;flex-direction:column;gap:var(--space-4)}.tasks-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.tasks-toolbar .btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);cursor:pointer;border:1px solid var(--border-color, var(--color-gray-200));background:var(--bg-surface);color:var(--color-gray-700);transition:background .15s,border-color .15s}@media(hover:hover){.tasks-toolbar .btn:hover{background:var(--bg-hover)}}.tasks-toolbar .btn-primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.tasks-toolbar .btn-primary:hover{background:var(--color-accent-hover)}}.tasks-search{flex:1;min-width:160px;max-width:280px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);background:var(--bg-surface);color:var(--color-gray-700);outline:none}.tasks-search:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.tasks-filter-select{padding:var(--space-2) var(--space-3);border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);background:var(--bg-surface);color:var(--color-gray-700);cursor:pointer}.tasks-bulk-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-accent-light);border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);color:var(--color-gray-700)}.tasks-bulk-bar .btn{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.tasks-table-container{background:var(--bg-surface);border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-lg, 12px);overflow:hidden}.tasks-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.tasks-table th{text-align:left;padding:var(--space-2) var(--space-3);font-weight:600;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-color, var(--color-gray-200));background:var(--color-gray-50);-webkit-user-select:none;user-select:none}.tasks-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color, var(--color-gray-100));vertical-align:middle}.tasks-table tr:last-child td{border-bottom:none}@media(hover:hover){.tasks-table tr:hover td{background:var(--bg-hover)}}.tasks-table tr.selected td{background:var(--bg-selected)}.task-row-depth-0 td:first-child{padding-left:var(--space-3)}.task-row-depth-1 td:first-child{padding-left:calc(var(--space-3) + 20px)}.task-row-depth-2 td:first-child{padding-left:calc(var(--space-3) + 40px)}.task-row-depth-3 td:first-child{padding-left:calc(var(--space-3) + 60px)}.task-code{color:var(--color-gray-400);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;min-width:48px;display:inline-block}.task-title-cell{display:flex;align-items:center;gap:var(--space-2);min-width:200px}.task-expand-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--color-gray-400);font-size:var(--font-size-xs);border-radius:var(--radius-sm, 4px);transition:background .1s;flex-shrink:0}@media(hover:hover){.task-expand-btn:hover{background:var(--bg-active);color:var(--color-gray-700)}}.task-expand-placeholder{width:20px;flex-shrink:0}.task-title-text{cursor:text;padding:2px 4px;border-radius:var(--radius-sm, 4px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}@media(hover:hover){.task-title-text:hover{background:var(--bg-hover)}}.task-title-input{border:1px solid var(--color-accent);border-radius:var(--radius-sm, 4px);padding:2px 4px;font-size:var(--font-size-sm);font-family:inherit;outline:none;width:100%;max-width:300px;box-shadow:0 0 0 3px var(--color-accent-light)}.task-milestone-icon{color:var(--color-warning);font-size:var(--font-size-xs);flex-shrink:0}.task-status-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:999px;font-size:var(--font-size-xs);font-weight:500;cursor:pointer;white-space:nowrap;transition:opacity .15s;border:1px solid transparent}@media(hover:hover){.task-status-badge:hover{opacity:.85}}.task-status-badge.not-started{background:var(--color-gray-100);color:var(--color-gray-600);border-color:var(--color-gray-200)}.task-status-badge.in-progress{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.task-status-badge.complete{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.task-status-badge.on-hold{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.task-status-badge.cancelled{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.task-priority-badge{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.task-priority-badge.critical{color:var(--color-danger)}.task-priority-badge.high{color:var(--color-warning-text)}.task-priority-badge.medium{color:var(--color-gray-500)}.task-priority-badge.low{color:var(--color-gray-400)}.task-progress-bar{width:60px;height:6px;background:var(--color-gray-100);border-radius:3px;overflow:hidden;display:inline-block;vertical-align:middle}.task-progress-fill{height:100%;border-radius:3px;background:var(--color-accent);transition:width .2s}.task-progress-fill.complete{background:var(--color-success)}.task-progress-text{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-left:var(--space-1);font-variant-numeric:tabular-nums}.task-date{font-size:var(--font-size-xs);color:var(--color-gray-500);white-space:nowrap;cursor:pointer}@media(hover:hover){.task-date:hover{color:var(--color-accent)}}.task-date-input{border:1px solid var(--color-accent);border-radius:var(--radius-sm, 4px);padding:1px 4px;font-size:var(--font-size-xs);font-family:inherit;outline:none;box-shadow:0 0 0 3px var(--color-accent-light)}.task-assignee{font-size:var(--font-size-xs);color:var(--color-gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.task-select-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent)}.tasks-empty{text-align:center;padding:var(--space-12) var(--space-4);color:var(--color-gray-400)}.tasks-empty h3{margin:0 0 var(--space-2);font-size:var(--font-size-md);color:var(--color-gray-600)}.tasks-empty p{margin:0 0 var(--space-4);font-size:var(--font-size-sm)}.task-detail-overlay{position:fixed;inset:0;background:#0003;z-index:100}.task-detail-panel{position:fixed;top:0;right:0;bottom:0;width:40%;min-width:400px;max-width:600px;background:var(--bg-surface);box-shadow:-4px 0 24px #0000001f;z-index:101;display:flex;flex-direction:column;overflow-y:auto}.task-detail-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-color, var(--color-gray-200))}.task-detail-header h2{margin:0;font-size:var(--font-size-lg);color:var(--color-gray-700)}.task-detail-close{border:none;background:none;font-size:var(--font-size-lg);cursor:pointer;color:var(--color-gray-400);padding:var(--space-1);border-radius:var(--radius-sm, 4px)}@media(hover:hover){.task-detail-close:hover{background:var(--bg-hover);color:var(--color-gray-700)}}.task-detail-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);flex:1}.task-detail-field{display:flex;flex-direction:column;gap:var(--space-1)}.task-detail-field label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.04em}.task-detail-field input,.task-detail-field select,.task-detail-field textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border-color, var(--color-gray-200));border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-gray-700);background:var(--bg-surface);outline:none}.task-detail-field input:focus,.task-detail-field select:focus,.task-detail-field textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.task-detail-field textarea{resize:vertical;min-height:80px}.task-detail-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.task-checklist{display:flex;flex-direction:column;gap:var(--space-2)}.task-checklist-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0}.task-checklist-item input[type=checkbox]{accent-color:var(--color-accent)}.task-checklist-item input[type=text]{flex:1;border:none;border-bottom:1px solid var(--border-color, var(--color-gray-200));padding:var(--space-1) 0;font-size:var(--font-size-sm);background:transparent;color:var(--color-gray-700);outline:none}.task-checklist-item input[type=text]:focus{border-color:var(--color-accent)}.task-checklist-item .completed-text{text-decoration:line-through;color:var(--color-gray-400)}.task-checklist-add{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) 0;color:var(--color-accent);font-size:var(--font-size-sm);cursor:pointer;border:none;background:none}@media(hover:hover){.task-checklist-add:hover{text-decoration:underline}}.task-checklist-remove{border:none;background:none;color:var(--color-gray-300);cursor:pointer;font-size:var(--font-size-sm);padding:2px}@media(hover:hover){.task-checklist-remove:hover{color:var(--color-danger)}}.task-detail-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color, var(--color-gray-200));display:flex;gap:var(--space-3);justify-content:flex-end}.task-detail-footer .btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);cursor:pointer;border:1px solid var(--border-color, var(--color-gray-200));background:var(--bg-surface);color:var(--color-gray-700)}.task-detail-footer .btn-primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.task-detail-footer .btn-danger{color:var(--color-danger);border-color:var(--color-danger-border)}@media(hover:hover){.task-detail-footer .btn-danger:hover{background:var(--color-danger-bg)}}.tasks-toolbar-actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.tasks-toolbar-btn{padding:var(--space-1) var(--space-2)!important;font-size:var(--font-size-xs)!important}.tasks-export-dropdown{display:flex;gap:var(--space-1)}.task-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-top:var(--space-4)}.task-detail-tab-btn{padding:var(--space-2) var(--space-3);background:none;border:none;border-bottom:2px solid transparent;font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer;transition:color .15s,border-color .15s}@media(hover:hover){.task-detail-tab-btn:hover{color:var(--color-gray-700)}}.task-detail-tab-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:600}.task-comments-section{padding:var(--space-3) 0}.task-comments-loading{color:var(--color-gray-400);font-size:var(--font-size-sm);padding:var(--space-2)}.task-comment{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color-light)}.task-comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.task-comment-author{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700)}.task-comment-time{font-size:var(--font-size-xs);color:var(--color-gray-400)}.task-comment-body{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:var(--line-height);white-space:pre-wrap}.task-comment-add{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.task-comment-add textarea{width:100%;padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);resize:vertical}.task-comment-add .btn-sm{align-self:flex-end;padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs)}.task-activity-section{padding:var(--space-3) 0}.task-activity-loading,.task-activity-empty{color:var(--color-gray-400);font-size:var(--font-size-sm);padding:var(--space-2)}.task-activity-entry{padding:var(--space-2) 0;border-bottom:1px solid var(--border-color-light);display:flex;flex-direction:column;gap:2px}.task-activity-text{font-size:var(--font-size-sm);color:var(--color-gray-600)}.task-activity-meta{font-size:var(--font-size-xs);color:var(--color-gray-400)}@media(hover:none){.task-expand-btn,.task-select-checkbox,.task-checklist-remove{min-width:44px;min-height:44px}}.tasks-col-checkbox{width:32px}.tasks-col-code{width:60px}.tasks-col-status{width:110px}.tasks-col-priority{width:80px}.tasks-col-assignee{width:100px}.tasks-col-date,.tasks-col-progress{width:90px}.tasks-col-actions{width:32px}.tasks-loading{text-align:center;padding:var(--space-8);color:var(--color-gray-400);font-size:var(--font-size-sm)}@media(max-width:767px){.task-detail-panel--mobile{inset:auto 0 0;width:100%;min-width:unset;max-width:unset;max-height:92vh;border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0;box-shadow:0 -4px 24px #0000002e;overflow-y:auto}}.diary-calendar{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface);padding:var(--space-5)}.diary-calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.diary-calendar-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.diary-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.diary-calendar-weekday{text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-400);padding:var(--space-1) 0;text-transform:uppercase;letter-spacing:.5px}.diary-calendar-cell{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border:none;background:none;border-radius:var(--radius-sm);cursor:pointer;position:relative;font-family:var(--font-family);padding:var(--space-1);transition:background .15s}.diary-calendar-cell:hover{background:var(--color-gray-50)}.diary-calendar-cell--empty{cursor:default}.diary-calendar-cell--empty:hover{background:none}.diary-calendar-day{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1}.diary-calendar-cell--today .diary-calendar-day{font-weight:700;color:var(--color-accent)}.diary-calendar-cell--selected{background:var(--color-accent)}.diary-calendar-cell--selected .diary-calendar-day{color:var(--color-white);font-weight:600}.diary-calendar-cell--selected:hover{background:var(--color-accent)}.diary-calendar-cell--has-entry .diary-calendar-day{font-weight:600;color:var(--color-gray-700)}.diary-calendar-cell--selected.diary-calendar-cell--has-entry .diary-calendar-day{color:var(--color-white)}.diary-calendar-dot{width:5px;height:5px;border-radius:50%;background:var(--color-accent);margin-top:2px}.diary-calendar-cell--selected .diary-calendar-dot{background:var(--color-white)}@media(max-width:640px){.diary-calendar{padding:var(--space-3)}.diary-calendar-cell{padding:2px}.diary-calendar-day{font-size:var(--font-size-xs)}}.diary-entry{max-width:960px}.diary-entry-header{margin-bottom:var(--space-4)}.diary-entry-title-row{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-3);gap:var(--space-3)}.diary-entry-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin:0}.diary-entry-actions{display:flex;gap:var(--space-2)}.diary-entry-summary-bar{display:flex;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.diary-summary-stat{display:flex;flex-direction:column;gap:2px}.diary-summary-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.diary-summary-value{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.diary-summary-value--danger{color:var(--color-danger)}.diary-summary-value--warning{color:var(--color-warning)}.diary-entry-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-gray-200);margin-bottom:var(--space-4);overflow-x:auto}.diary-tab{padding:var(--space-2) var(--space-4);border:none;background:none;font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;font-family:var(--font-family);transition:color .15s,border-color .15s}.diary-tab:hover{color:var(--color-gray-700)}.diary-tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:500}.diary-section-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.diary-section-card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4)}.diary-section-card--full{grid-column:1 / -1}.diary-section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);margin:0 0 var(--space-3) 0;text-transform:uppercase;letter-spacing:.5px}.diary-safety-grid{display:flex;gap:var(--space-6)}.diary-work-list{display:flex;flex-direction:column;gap:var(--space-2)}.diary-work-item{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm)}.diary-work-item-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.diary-work-description{font-size:var(--font-size-sm);color:var(--color-gray-700)}.diary-work-status{font-size:var(--font-size-xs);padding:1px var(--space-2);border-radius:var(--radius-sm);text-transform:capitalize}.diary-work-status--completed{background:#e8f5e9;color:#2e7d32}.diary-work-status--in-progress{background:#e3f2fd;color:#1565c0}.diary-work-status--started{background:#fff3e0;color:#e65100}.diary-table--inner{border:none}.diary-inspection-result{font-size:var(--font-size-xs);padding:1px var(--space-2);border-radius:var(--radius-sm);text-transform:capitalize}.diary-inspection-result--passed{background:#e8f5e9;color:#2e7d32}.diary-inspection-result--failed{background:#ffebee;color:#c62828}.diary-inspection-result--partial{background:#fff3e0;color:#e65100}.diary-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-3)}.diary-photo-item{display:flex;flex-direction:column;gap:var(--space-1)}.diary-photo-img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--color-gray-200)}.diary-photo-caption{color:var(--color-gray-500)}.diary-error{color:var(--color-danger);font-size:var(--font-size-sm)}.status--success{color:var(--color-success);font-weight:500}.status--danger{color:var(--color-danger);font-weight:500}@media(max-width:640px){.diary-section-grid{grid-template-columns:1fr}.diary-entry-title-row{flex-direction:column;align-items:flex-start}.diary-entry-summary-bar{gap:var(--space-3)}}.diary-form-page{max-width:800px}.diary-form-header{margin-bottom:var(--space-4)}.diary-form-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin:var(--space-3) 0 0 0}.diary-form-error{color:var(--color-danger);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);background:#ffebee;border-radius:var(--radius-sm);margin-bottom:var(--space-4)}.diary-form-section{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.diary-form-section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);margin:0 0 var(--space-3) 0;text-transform:uppercase;letter-spacing:.5px}.diary-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.diary-form-grid--3{grid-template-columns:repeat(3,1fr)}.diary-form-array-item{padding:var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);margin-bottom:var(--space-2);background:var(--color-gray-50)}.diary-form-textarea{resize:vertical;min-height:60px}.diary-form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4)}.weather-widget-form{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.weather-widget-form .form-group--full{grid-column:1 / -1}.weather-widget-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.weather-stat{display:flex;flex-direction:column;gap:2px}.weather-stat-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.weather-stat-value{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);text-transform:capitalize}.workforce-table-wrapper{overflow-x:auto}.workforce-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.workforce-table th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-200);font-weight:600;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.5px}.workforce-table td{padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--color-gray-100)}.workforce-totals-row{background:var(--color-gray-50)}.form-input--table{padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);width:100%}@media(max-width:640px){.diary-form-grid,.diary-form-grid--3,.weather-widget-form{grid-template-columns:1fr}.weather-widget-grid{grid-template-columns:repeat(2,1fr)}}.diary-form-page--mobile{display:flex;flex-direction:column;min-height:100dvh;max-width:none;padding-bottom:80px}.diary-form-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-200);background:var(--bg-surface);position:sticky;top:0;z-index:10}.diary-form-mobile-cancel{background:none;border:none;font-size:1.2rem;color:var(--color-gray-500);cursor:pointer;padding:var(--space-2);-webkit-tap-highlight-color:transparent}.diary-form-mobile-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-800);margin:0}.diary-form-mobile-body{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.diary-form-mobile-body .diary-form-section{margin-bottom:0}.diary-form-mobile-input{font-size:16px!important;padding:var(--space-3) var(--space-3)!important;min-height:48px;width:100%}.diary-form-mobile-row{display:flex;gap:var(--space-3);margin-top:var(--space-3)}.diary-form-mobile-add-btn{width:100%;margin-top:var(--space-2);padding:var(--space-3);font-size:var(--font-size-base)}.diary-form-textarea--large{min-height:120px}.diary-workforce-mobile-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-100)}.diary-workforce-mobile-row:last-of-type{border-bottom:none}.diary-workforce-mobile-info{flex:1}.diary-workforce-mobile-trade{margin:0!important}.diary-workforce-mobile-counter{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.diary-counter-btn{width:40px;height:40px;border-radius:50%;border:2px solid var(--color-accent, #1565c0);background:none;color:var(--color-accent, #1565c0);font-size:1.4rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}.diary-counter-btn:active{background:var(--color-accent, #1565c0);color:#fff}.diary-counter-value{font-size:1.2rem;font-weight:600;min-width:28px;text-align:center;color:var(--color-gray-800)}.diary-workforce-mobile-remove{background:none;border:none;color:var(--color-gray-400);font-size:1rem;cursor:pointer;padding:var(--space-2);-webkit-tap-highlight-color:transparent}.diary-equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.diary-equipment-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-gray-600);-webkit-tap-highlight-color:transparent;transition:border-color .15s,background .15s}.diary-equipment-item--checked{border-color:var(--color-accent, #1565c0);background:var(--color-accent-light, #e3f2fd);color:var(--color-accent, #1565c0);font-weight:500}.diary-equipment-checkbox{width:18px;height:18px;flex-shrink:0}.diary-project-picker{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.diary-project-picker-search{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-white)}.diary-project-picker-loading,.diary-project-picker-empty{text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm);padding:var(--space-6) 0}.diary-project-picker-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.diary-project-picker-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;min-height:56px;-webkit-tap-highlight-color:transparent;transition:border-color .15s,background .15s}.diary-project-picker-item:active{border-color:var(--color-accent, #1565c0);background:var(--color-accent-light, #e3f2fd)}.diary-project-picker-name{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-800)}.diary-project-picker-address{font-size:var(--font-size-sm);color:var(--color-gray-400)}.diary-form-mobile-actions{position:fixed;bottom:0;left:0;right:0;display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-surface);border-top:1px solid var(--color-gray-200);box-shadow:0 -2px 8px #00000014;z-index:100;padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px))}.diary-form-mobile-btn{flex:1;padding:var(--space-4);font-size:var(--font-size-base);font-weight:600;min-height:52px;border-radius:var(--radius-md)}.diary-list{display:flex;flex-direction:column;gap:var(--space-4)}.diary-list-header{margin-bottom:0}.diary-list-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.diary-view-toggle{display:flex;gap:var(--space-1)}.diary-search{flex:1;min-width:180px;max-width:320px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:var(--font-family);background:var(--bg-surface);color:var(--color-gray-700);outline:none}.diary-search:focus{border-color:var(--color-accent)}.diary-error{padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.diary-table-wrapper{overflow-x:auto;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface)}.diary-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.diary-table th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-200);font-weight:600;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:var(--color-gray-50);-webkit-user-select:none;user-select:none}.diary-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-600);vertical-align:middle}.diary-table tr:last-child td{border-bottom:none}.diary-row{cursor:pointer;transition:background .15s}@media(hover:hover){.diary-row:hover{background:var(--bg-hover)}}.diary-date-cell{font-weight:500;color:var(--color-gray-700);white-space:nowrap}.diary-weather-badge{display:inline-block;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-gray-100);font-size:var(--font-size-xs);text-transform:capitalize;color:var(--color-gray-600)}.diary-safety-alert{color:var(--color-danger);font-weight:500;font-size:var(--font-size-xs)}.diary-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding-top:var(--space-4)}@media(max-width:640px){.diary-list-actions{flex-direction:column;align-items:stretch}.diary-search{max-width:none}.diary-view-toggle{align-self:flex-start}}.diary-list--mobile{position:relative;padding-bottom:80px}.diary-mobile-header{padding:0 0 var(--space-3)}.diary-mobile-header .diary-search{width:100%;max-width:none;font-size:16px;padding:var(--space-3) var(--space-3)}.diary-mobile-empty{text-align:center;padding:var(--space-8) var(--space-4)}.diary-cards{display:flex;flex-direction:column;gap:var(--space-3)}.diary-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4);cursor:pointer;transition:box-shadow .15s;-webkit-tap-highlight-color:transparent}.diary-card:active{background:var(--bg-hover)}.diary-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.diary-card-date{font-weight:600;font-size:var(--font-size-base);color:var(--color-gray-800)}.diary-card-weather{font-size:1.5rem;line-height:1}.diary-card-preview{font-size:var(--font-size-sm);color:var(--color-gray-500);margin:0 0 var(--space-2);line-height:1.4}.diary-card-meta{display:flex;gap:var(--space-2);flex-wrap:wrap}.diary-card-badge{display:inline-flex;align-items:center;gap:4px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-gray-100);font-size:var(--font-size-xs);color:var(--color-gray-600)}.diary-card-badge--danger{background:var(--color-danger-bg, #ffebee);color:var(--color-danger, #c62828)}.diary-fab{position:fixed;bottom:24px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--color-accent, #1565c0);color:#fff;border:none;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000040;cursor:pointer;z-index:200;-webkit-tap-highlight-color:transparent;transition:transform .1s}.diary-fab:active{transform:scale(.93)}.diary-tab{display:flex;flex-direction:column;gap:var(--space-4)}.diary-tab .diary-list{gap:var(--space-4)}.diary-tab .diary-view-toggle .btn-sm{font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;transition:color .15s,background .15s,border-color .15s}.diary-tab .diary-view-toggle .btn-secondary{background:var(--bg-surface);color:var(--color-gray-500)}@media(hover:hover){.diary-tab .diary-view-toggle .btn-secondary:hover{color:var(--color-gray-700);background:var(--bg-hover)}}.diary-tab .diary-view-toggle .btn-primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.diary-tab .diary-view-toggle .btn-primary:hover{background:var(--color-accent-hover)}}.diary-tab .diary-list-actions>.btn-primary{font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-white);border:1px solid var(--color-accent);border-radius:var(--radius-md);cursor:pointer;transition:background .15s}@media(hover:hover){.diary-tab .diary-list-actions>.btn-primary:hover{background:var(--color-accent-hover)}}.diary-tab .btn-danger.btn-sm{font-family:var(--font-family);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);color:var(--color-danger);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:pointer;transition:background .15s}@media(hover:hover){.diary-tab .btn-danger.btn-sm:hover{background:var(--color-danger-bg)}}.diary-tab .diary-pagination .btn-secondary{font-family:var(--font-family);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--color-gray-700);cursor:pointer;transition:background .15s}@media(hover:hover){.diary-tab .diary-pagination .btn-secondary:hover:not(:disabled){background:var(--bg-hover)}}.diary-tab .diary-pagination .btn-secondary:disabled{opacity:.4;cursor:not-allowed}.diary-tab .text-muted{color:var(--color-gray-400)}.diary-tab .text-sm{font-size:var(--font-size-sm)}.health-radar{display:flex;justify-content:center;align-items:center}.radar-svg{width:100%;max-width:400px;height:auto}.radar-ring{fill:none;stroke:var(--color-gray-200);stroke-width:.5}.radar-axis{stroke:var(--color-gray-200);stroke-width:.5}.radar-data{stroke-width:2;fill-opacity:.2}.radar-fill-healthy{fill:var(--color-success);stroke:var(--color-success)}.radar-fill-warning{fill:var(--color-warning);stroke:var(--color-warning)}.radar-fill-critical{fill:var(--color-danger);stroke:var(--color-danger)}.radar-dot{fill:var(--color-accent);stroke:var(--bg-surface);stroke-width:1.5}.radar-label{font-size:var(--font-size-xs);fill:var(--color-gray-500);font-weight:500}.health-trend{width:100%}.health-trend-empty{padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm)}.trend-svg{width:100%;height:auto}.trend-zone-healthy{fill:var(--color-success-bg);opacity:.5}.trend-zone-warning{fill:var(--color-warning-bg);opacity:.5}.trend-zone-critical{fill:var(--color-danger-bg);opacity:.5}.trend-threshold{stroke:var(--color-gray-300);stroke-width:1;stroke-dasharray:4 3}.trend-line{fill:none;stroke:var(--color-accent);stroke-width:2;stroke-linejoin:round}.trend-dot{fill:var(--color-accent);stroke:var(--bg-surface);stroke-width:1.5;cursor:pointer}.trend-y-label,.trend-x-label{font-size:var(--font-size-xs);fill:var(--color-gray-400)}.dimension-detail{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);overflow:hidden}.dimension-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-3) var(--space-4);border:none;background:none;cursor:pointer;font-family:var(--font-family);text-align:left}.dimension-header:hover{background:var(--bg-hover)}.dimension-header-left{display:flex;align-items:center;gap:var(--space-3)}.dimension-name{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.dimension-badge{font-size:var(--font-size-xs);font-weight:500;padding:2px var(--space-2);border-radius:var(--radius-sm);text-transform:capitalize}.dimension-badge.dim-status-healthy{color:var(--color-success-text);background:var(--color-success-bg)}.dimension-badge.dim-status-warning{color:var(--color-warning-text);background:var(--color-warning-bg)}.dimension-badge.dim-status-critical{color:var(--color-danger-text);background:var(--color-danger-bg)}.dimension-header-right{display:flex;align-items:center;gap:var(--space-3)}.dimension-score{font-size:var(--font-size-lg);font-weight:700;color:var(--color-gray-700)}.dimension-expand{font-size:var(--font-size-md);color:var(--color-gray-400);width:20px;text-align:center}.dimension-bar-track{height:4px;background:var(--color-gray-100);margin:0 var(--space-4) var(--space-3);border-radius:2px;overflow:hidden}.dimension-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.dimension-bar-fill.dim-status-healthy{background:var(--color-success)}.dimension-bar-fill.dim-status-warning{background:var(--color-warning)}.dimension-bar-fill.dim-status-critical{background:var(--color-danger)}.dimension-factors{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--bg-stripe)}.dimension-factors-title{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2)}.dimension-factors-list{list-style:none;margin:0;padding:0}.dimension-factor-item{font-size:var(--font-size-sm);color:var(--color-gray-600);padding:var(--space-1) 0}.dimension-factor-item:before{content:"·";margin-right:var(--space-2);color:var(--color-gray-400)}.ev-dashboard{width:100%}.ev-dashboard-loading{padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm)}.ev-metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.ev-metric-card{padding:var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface)}.ev-metric-card.ev-metric-healthy{border-left:3px solid var(--color-success)}.ev-metric-card.ev-metric-warning{border-left:3px solid var(--color-warning)}.ev-metric-card.ev-metric-critical{border-left:3px solid var(--color-danger)}.ev-metric-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-1)}.ev-metric-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-gray-700)}.ev-metric-subtext{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:var(--space-1)}.ev-summary-row{display:flex;gap:var(--space-8);padding:var(--space-4);background:var(--bg-stripe);border-radius:var(--radius-md);margin-bottom:var(--space-6)}.ev-summary-item{display:flex;flex-direction:column;gap:var(--space-1)}.ev-summary-label{font-size:var(--font-size-xs);color:var(--color-gray-500)}.ev-summary-value{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.ev-chart{width:100%}.ev-chart-svg{width:100%;height:auto}.ev-line{fill:none;stroke-width:2;stroke-linejoin:round}.ev-line-pv{stroke:var(--color-gray-400);stroke-dasharray:6 3}.ev-line-ev{stroke:var(--color-success)}.ev-line-ac{stroke:var(--color-danger)}.ev-chart-label{font-size:var(--font-size-xs);fill:var(--color-gray-400)}.ev-chart-legend{display:flex;gap:var(--space-6);margin-top:var(--space-3);justify-content:center}.ev-legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-gray-500)}.ev-legend-swatch{width:16px;height:3px;display:inline-block;border-radius:1px}.ev-legend-pv{background:var(--color-gray-400)}.ev-legend-ev{background:var(--color-success)}.ev-legend-ac{background:var(--color-danger)}@media(max-width:767px){.ev-metrics-grid{grid-template-columns:repeat(2,1fr)}.ev-summary-row{flex-direction:column;gap:var(--space-3)}}.suggestion-pills{display:flex;flex-wrap:wrap;gap:6px;padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-gray-100);flex-shrink:0}.suggestion-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:var(--font-size-xs);font-family:var(--font-family);color:var(--color-gray-500);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:999px;cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap;line-height:1.5}.suggestion-pill:hover,.suggestion-pill-selected{background:var(--color-accent-light);color:var(--color-gray-700);border-color:var(--color-accent)}.suggestion-pill-hint{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-gray-400);background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:3px;padding:0 4px;line-height:1.6}.suggestion-pill-selected .suggestion-pill-hint{color:var(--color-accent);border-color:var(--color-accent)}@media(max-width:400px){.suggestion-pills{gap:4px;padding:var(--space-1) var(--space-2)}.suggestion-pill{font-size:10px;padding:2px 8px}}.stakeholder-grid{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);padding:var(--space-4)}.stakeholder-grid-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);flex-wrap:wrap;gap:var(--space-2)}.stakeholder-grid-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);margin:0}.stakeholder-grid-legend{display:flex;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-gray-400);flex-wrap:wrap}.stakeholder-grid .legend-item{display:flex;align-items:center;gap:var(--space-1)}.stakeholder-grid .legend-swatch{display:inline-block;width:12px;height:12px;border-radius:2px}.legend-swatch--manage-closely{background-color:var(--color-danger)}.legend-swatch--keep-satisfied{background-color:var(--color-warning)}.legend-swatch--keep-informed{background-color:var(--color-accent)}.legend-swatch--monitor{background-color:var(--color-success)}.stakeholder-grid-wrapper{display:flex;align-items:center;gap:var(--space-2)}.stakeholder-grid-y-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.stakeholder-grid-container{flex:1}.stakeholder-grid-cells{display:grid;grid-template-columns:80px repeat(5,1fr);gap:2px}.stakeholder-grid-col-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-1);font-size:var(--font-size-xs);color:var(--color-gray-400)}.stakeholder-grid-row{display:contents}.stakeholder-grid-row-header{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-1);font-size:var(--font-size-xs);color:var(--color-gray-400);text-align:right}.grid-header-value{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-gray-500)}.grid-header-label{font-size:10px;text-align:center}.grid-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:56px;border-radius:var(--radius-sm);position:relative;transition:opacity .15s}.grid-cell--manage-closely{background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border)}.grid-cell--keep-satisfied{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border)}.grid-cell--keep-informed{background-color:var(--color-accent-light, var(--color-info-bg, #e8f4fd));border:1px solid var(--color-accent-border, var(--color-info-border, #b3d9f2))}.grid-cell--monitor{background-color:var(--color-success-bg);border:1px solid var(--color-success-border)}.grid-cell--has-items{cursor:pointer}@media(hover:hover){.grid-cell--has-items:hover{opacity:.8}}.grid-cell-count{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-gray-700);background:var(--bg-surface);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.stakeholder-grid-x-label{text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px;margin-top:var(--space-1)}.stakeholder-grid-summary{display:flex;gap:var(--space-4);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-gray-100);flex-wrap:wrap}.stakeholder-grid .summary-stat{display:flex;flex-direction:column;gap:2px}.stakeholder-grid .summary-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.stakeholder-grid .summary-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-gray-700)}.summary-value--manage-closely{color:var(--color-danger)}.summary-value--keep-satisfied{color:var(--color-warning)}.summary-value--keep-informed{color:var(--color-accent)}.summary-value--monitor{color:var(--color-success)}.co-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-4)}.co-line-items{margin-bottom:var(--space-4)}.co-line-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.co-line-items-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);margin:0}.co-line-items-table-wrapper{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);overflow-x:auto}.co-line-items-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.co-line-items-table th{text-align:left;padding:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--color-gray-400);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.5px;border-bottom:1px solid var(--color-gray-100);white-space:nowrap}.co-line-items-table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-gray-50);vertical-align:middle}.co-line-items-table tfoot td{border-top:2px solid var(--color-gray-200);border-bottom:none;padding:var(--space-2)}.co-input-narrow{width:100px}.co-line-total{white-space:nowrap;font-weight:var(--font-weight-semibold);color:var(--color-gray-600)}.co-total-label{text-align:right;font-weight:var(--font-weight-bold);color:var(--color-gray-700)}.co-total-value{font-weight:var(--font-weight-bold);color:var(--color-gray-700);white-space:nowrap}.co-form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-gray-100)}.approval-actions{display:flex;gap:var(--space-2)}.approval-reject-form{display:flex;flex-direction:column;gap:var(--space-2);min-width:300px}.approval-reject-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.co-detail{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);padding:var(--space-4)}.co-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4)}.co-number{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:1px}.co-detail-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-gray-700);margin:var(--space-1) 0 0 0}.co-detail-section{margin-bottom:var(--space-4)}.co-detail-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px;margin:0 0 var(--space-1) 0}.co-detail-text{color:var(--color-gray-600);font-size:var(--font-size-sm);line-height:1.6;margin:0}.co-detail-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);background:var(--color-gray-50);border-radius:var(--radius-sm)}.co-meta-item{display:flex;flex-direction:column;gap:2px}.co-meta-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.co-meta-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.co-cost{color:var(--color-accent)}.co-detail-table-wrapper{border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);overflow-x:auto}.co-detail-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.co-detail-table th{text-align:left;padding:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--color-gray-400);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.5px;border-bottom:1px solid var(--color-gray-100)}.co-detail-table td{padding:var(--space-2);border-bottom:1px solid var(--color-gray-50);color:var(--color-gray-600)}.co-detail-table tfoot td{border-top:2px solid var(--color-gray-200);border-bottom:none}.co-num-cell{text-align:right;white-space:nowrap}.co-category-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--color-gray-50);color:var(--color-gray-500);border:1px solid var(--color-gray-100)}.co-rejection{background:var(--color-danger-bg);padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-danger-border)}.co-rejection .co-detail-text{color:var(--color-danger-text)}.co-detail-actions{display:flex;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-gray-100)}.co-status-badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.5px}.co-status--draft{background:var(--color-gray-50);color:var(--color-gray-500);border:1px solid var(--color-gray-200)}.co-status--submitted{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.co-status--approved{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.co-status--rejected{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.co-register{max-width:1200px;padding:var(--space-4) 0}.co-register-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);flex-wrap:wrap;gap:var(--space-2)}.co-register-title-row{display:flex;align-items:center;gap:var(--space-2)}.co-register-title{font-size:var(--font-size-xxl);font-weight:700;color:var(--color-gray-700);letter-spacing:-.5px;margin:0}.co-register-count{font-size:var(--font-size-sm);color:var(--color-gray-400)}.co-register-actions{display:flex;align-items:center;gap:var(--space-2)}.co-form-wrapper{margin-bottom:var(--space-4)}.co-form-heading{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);margin:0 0 var(--space-2) 0}.co-filters{display:flex;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap}.co-search{flex:1;min-width:200px}.co-table-wrapper{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);overflow-x:auto}.co-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.co-table th{text-align:left;padding:var(--space-2);font-weight:var(--font-weight-semibold);color:var(--color-gray-400);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.5px;border-bottom:1px solid var(--color-gray-100);white-space:nowrap}.co-table td{padding:var(--space-2);border-bottom:1px solid var(--color-gray-50);color:var(--color-gray-600);vertical-align:top}.co-table tbody tr:last-child td{border-bottom:none}.co-table-row{cursor:pointer}@media(hover:hover){.co-table-row:hover{background:var(--color-gray-50)}}.co-table-empty{text-align:center;padding:var(--space-6) var(--space-2);color:var(--color-gray-300)}.co-number-cell{font-weight:var(--font-weight-bold);color:var(--color-gray-500);white-space:nowrap;font-size:var(--font-size-xs);letter-spacing:.5px}.co-title-cell{display:flex;flex-direction:column;gap:2px;min-width:200px}.co-title-text{font-weight:var(--font-weight-semibold);color:var(--color-gray-700)}.co-desc-text{font-size:var(--font-size-xs);color:var(--color-gray-400);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.co-cost-cell{white-space:nowrap;font-weight:var(--font-weight-semibold)}.co-num-cell{text-align:center;white-space:nowrap}.co-reason-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--color-gray-50);color:var(--color-gray-500);border:1px solid var(--color-gray-100)}.co-status-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:capitalize}.co-status--draft{background:var(--color-gray-50);color:var(--color-gray-500)}.co-status--submitted{background:var(--color-warning-bg);color:var(--color-warning-text)}.co-status--approved{background:var(--color-success-bg);color:var(--color-success-text)}.co-status--rejected{background:var(--color-danger-bg);color:var(--color-danger-text)}.co-actions-cell{white-space:nowrap;display:flex;gap:var(--space-1)}.co-loading,.co-error{text-align:center;padding:var(--space-8);color:var(--color-gray-400)}.co-error p{margin-bottom:var(--space-2)}.ripple-settings-page{padding:0}.ripple-settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.ripple-settings-header h2{margin:0 0 .25rem}.ripple-settings-subtitle{color:var(--text-secondary, #666);font-size:.875rem;margin:0}.ripple-settings-loading,.ripple-settings-error{text-align:center;padding:3rem 1rem;color:var(--text-secondary, #666)}.ripple-settings-error{color:var(--danger, #dc3545)}.ripple-settings-section{margin-bottom:2rem}.ripple-settings-section-title{margin:0 0 .25rem;font-size:1rem;font-weight:600}.ripple-settings-section-desc{color:var(--text-secondary, #666);font-size:.8125rem;margin:0 0 1rem}.ripple-settings-grid{display:flex;flex-direction:column;gap:.75rem}.path-config-card{border:1px solid var(--border, #e5e7eb);border-radius:6px;padding:1rem;background:var(--surface, #fff)}.path-config-card.disabled{opacity:.6}.path-config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.path-config-title-row{display:flex;align-items:center;gap:.5rem}.path-config-title{margin:0;font-size:.9375rem;font-weight:500}.path-config-override-badge{font-size:.6875rem;padding:.125rem .5rem;border-radius:9999px;background:var(--color-accent, #3b82f6);color:#fff;font-weight:500}.path-config-description{color:var(--text-secondary, #666);font-size:.8125rem;margin:0 0 .75rem}.path-config-controls{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.path-config-field{display:flex;flex-direction:column;gap:.25rem}.path-config-label{font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.path-config-select{padding:.375rem .75rem;border:1px solid var(--border, #ddd);border-radius:4px;font-size:.875rem;background:var(--surface, #fff);max-width:360px}.path-config-footer{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border, #e5e7eb);display:flex;justify-content:flex-end}.toggle-switch{position:relative;display:inline-block;width:40px;height:22px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;border-radius:22px;transition:.2s}.toggle-slider:before{content:"";position:absolute;height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.2s}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-accent, #3b82f6)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.path-config-threshold{display:flex;flex-direction:column;gap:.25rem}.threshold-pairs{display:flex;flex-wrap:wrap;gap:.5rem}.threshold-pair{display:flex;align-items:center;gap:.25rem;font-size:.8125rem;padding:.25rem .5rem;background:var(--bg-subtle, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:4px}.threshold-key{font-weight:500}.threshold-value{font-family:monospace;color:var(--text-secondary, #666)}.instructions-editor{display:flex;flex-direction:column;gap:.375rem}.instructions-editor-header{display:flex;justify-content:space-between;align-items:center}.instructions-label{font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.instructions-mode-toggle{display:flex;gap:.25rem}.instructions-mode-toggle .btn-active{background:var(--bg-subtle, #f3f4f6);font-weight:500}.instructions-textarea{width:100%;padding:.5rem;border:1px solid var(--border, #ddd);border-radius:4px;font-family:monospace;font-size:.8125rem;resize:vertical;min-height:80px;box-sizing:border-box}.instructions-preview{padding:.5rem;border:1px solid var(--border, #e5e7eb);border-radius:4px;background:var(--bg-subtle, #f9fafb);font-size:.8125rem;min-height:80px}.instructions-preview p{margin:0 0 .25rem}.instructions-empty{color:var(--text-secondary, #999);font-style:italic}@media(max-width:768px){.ripple-settings-header{flex-direction:column;gap:.75rem}.path-config-select{max-width:100%}}.automations-tab{display:flex;flex-direction:column;gap:2rem}.automations-divider{border-top:1px solid var(--color-border, #e0e0e0);margin:.5rem 0}.automations-notifications{padding:0 .25rem}.automations-section-title{font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.automations-section-desc{color:var(--color-text-secondary, #666);font-size:.875rem;margin:0 0 1.25rem}.automations-group{margin-bottom:1.5rem}.automations-group-title{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary, #666);margin:0 0 .75rem}.automations-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:.625rem 0;border-bottom:1px solid var(--color-border-light, #f0f0f0)}.automations-toggle-row:last-child{border-bottom:none}.automations-toggle-label{font-size:.875rem;font-weight:500}.automations-toggle-desc{font-size:.75rem;color:var(--color-text-secondary, #666);margin-top:.125rem}.automations-toggle{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.automations-toggle input{opacity:0;width:0;height:0}.automations-toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-border, #ccc);border-radius:20px;transition:background-color .2s}.automations-toggle-slider:before{content:"";position:absolute;height:14px;width:14px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .2s}.automations-toggle input:checked+.automations-toggle-slider{background-color:var(--color-accent, #007aff)}.automations-toggle input:checked+.automations-toggle-slider:before{transform:translate(16px)}.automations-save-btn{display:inline-flex;align-items:center;padding:.5rem 1.25rem;font-size:.8125rem;font-weight:500;background:var(--color-accent, #007aff);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s}.automations-save-btn:hover{opacity:.9}.automations-save-btn:disabled{opacity:.5;cursor:not-allowed}.automations-success{background:var(--color-success-bg, #e8f5e9);color:var(--color-success-text, #2e7d32);padding:.5rem .75rem;border-radius:6px;font-size:.8125rem;margin-bottom:1rem}.automations-error{background:var(--color-danger-bg, #fce4ec);color:var(--color-danger-text, #c62828);padding:.5rem .75rem;border-radius:6px;font-size:.8125rem;margin-bottom:1rem}.automations-loading{color:var(--color-text-secondary, #666);font-size:.875rem;padding:1rem 0}.finance-automations-tab{max-width:720px}.finance-automations-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-800);margin:0 0 var(--space-2) 0}.finance-automations-desc{font-size:var(--font-size-sm);color:var(--color-gray-500);margin:0 0 var(--space-5) 0}.finance-automations-field{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0 var(--space-2) var(--space-4);border-left:2px solid var(--color-gray-100);margin:var(--space-2) 0}.finance-automations-label{font-size:var(--font-size-sm);color:var(--color-gray-600);white-space:nowrap}.finance-automations-select{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700);cursor:pointer}.finance-automations-select:focus{outline:none;border-color:var(--color-accent)}.accomplice-tab{display:flex;flex-direction:column;gap:var(--space-5)}.accomplice-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:var(--space-5);align-items:stretch}.accomplice-hero h2,.accomplice-section-header h3,.accomplice-workflow-card h3{margin:0;color:var(--color-gray-700)}.accomplice-hero h2{font-size:var(--font-size-xl);margin-top:var(--space-1);margin-bottom:var(--space-2)}.accomplice-hero p,.accomplice-workflow-card p{margin:0;color:var(--color-gray-500);line-height:1.6;font-size:var(--font-size-sm)}.accomplice-eyebrow{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.accomplice-hero-note{display:flex;flex-direction:column;justify-content:center;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-accent-light, var(--color-gray-200));border-radius:var(--radius-md);background:var(--color-accent-light, var(--color-gray-50));color:var(--color-gray-700);font-size:var(--font-size-sm)}.accomplice-hero-note span{color:var(--color-gray-500);line-height:1.5}.accomplice-alert{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-warning-border, var(--color-gray-200));border-radius:var(--radius-md);background:var(--color-warning-bg, var(--color-gray-50));color:var(--color-warning-text, var(--color-gray-700));font-size:var(--font-size-sm)}.accomplice-grid,.accomplice-workflow-grid{display:grid;gap:var(--space-4)}.accomplice-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.accomplice-stat-card,.accomplice-workflow-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.accomplice-stat-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4)}.accomplice-stat-label,.accomplice-stat-hint,.accomplice-muted,.accomplice-loading{font-size:var(--font-size-xs);color:var(--color-gray-400)}.accomplice-stat-label{text-transform:uppercase;letter-spacing:.05em;font-weight:600}.accomplice-stat-value{color:var(--color-gray-700);font-size:var(--font-size-lg);line-height:1.2;text-transform:capitalize}.accomplice-stat-hint{line-height:1.4}.accomplice-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:var(--space-4)}.accomplice-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.accomplice-definition-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.accomplice-definition-list div{padding:var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);background:var(--color-gray-50)}.accomplice-definition-list dt{color:var(--color-gray-400);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.accomplice-definition-list dd{margin:0;color:var(--color-gray-700);font-size:var(--font-size-sm);line-height:1.5}.accomplice-source-card ul{margin:0;padding-left:var(--space-5);color:var(--color-gray-600);font-size:var(--font-size-sm);line-height:1.6}.accomplice-source-card li+li{margin-top:var(--space-2)}.accomplice-workflow-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.accomplice-workflow-card{padding:var(--space-4)}.accomplice-workflow-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-2)}.accomplice-workflow-header span{flex-shrink:0;padding:2px var(--space-2);border-radius:999px;background:var(--color-gray-100);color:var(--color-gray-500);font-size:var(--font-size-xs);font-weight:600}.accomplice-wwp-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.accomplice-wwp-chip{display:inline-flex;align-items:center;padding:2px var(--space-3);border-radius:999px;background:var(--color-gray-100);color:var(--color-gray-600);font-size:var(--font-size-xs);font-weight:600}.accomplice-wwp-chip.is-done{background:var(--color-success-bg, #f0fdf4);color:var(--color-success-text, #166534)}.accomplice-wwp-days{display:grid;grid-template-columns:repeat(7,minmax(160px,1fr));gap:var(--space-3);overflow-x:auto;padding-bottom:var(--space-2)}.accomplice-wwp-day{display:flex;flex-direction:column;min-width:0;border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface);overflow:hidden}.accomplice-wwp-day.is-today{border-color:var(--color-accent)}.accomplice-wwp-day-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100)}.accomplice-wwp-day.is-today .accomplice-wwp-day-header{background:var(--color-accent-light, #eff6ff)}.accomplice-wwp-day-label{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-600);flex-shrink:0}.accomplice-wwp-day.is-today .accomplice-wwp-day-label{color:var(--color-accent)}.accomplice-wwp-day-date{font-size:var(--font-size-xs);color:var(--color-gray-400);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accomplice-wwp-day-count{flex-shrink:0;min-width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;border-radius:999px;background:var(--color-gray-200);color:var(--color-gray-600);font-size:var(--font-size-xs);font-weight:700}.accomplice-wwp-day-body{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);flex:1}.accomplice-wwp-empty-day{margin:0;color:var(--color-gray-300);font-size:var(--font-size-xs);text-align:center;padding:var(--space-3) 0}.accomplice-task-row{display:flex;flex-direction:column;gap:3px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm, var(--radius-md));background:var(--bg-surface);font-size:var(--font-size-xs)}.accomplice-task-row.is-complete{opacity:.5;background:var(--color-gray-50)}.accomplice-task-row.is-complete .accomplice-task-title{text-decoration:line-through;color:var(--color-gray-400)}.accomplice-task-main{display:flex;align-items:flex-start;gap:var(--space-1)}.accomplice-task-child-indent{flex-shrink:0;color:var(--color-gray-400);font-size:var(--font-size-xs)}.accomplice-task-title{color:var(--color-gray-700);line-height:1.4;word-break:break-word}.accomplice-task-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.accomplice-task-status{padding:1px 6px;border-radius:999px;background:var(--color-gray-100);color:var(--color-gray-500);font-size:10px;font-weight:600;text-transform:capitalize;white-space:nowrap}.accomplice-task-status.status-in-progress,.accomplice-task-status.status-in_progress,.accomplice-task-status.status-active,.accomplice-task-status.status-started{background:var(--color-accent-light, #eff6ff);color:var(--color-accent, #2563eb)}.accomplice-task-status.status-complete,.accomplice-task-status.status-completed,.accomplice-task-status.status-done,.accomplice-task-status.status-closed{background:var(--color-success-bg, #f0fdf4);color:var(--color-success-text, #166534)}.accomplice-task-assignee{font-size:10px;color:var(--color-gray-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.accomplice-task-date{font-size:10px;color:var(--color-gray-400);white-space:nowrap}.accomplice-event-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm, var(--radius-md));background:var(--color-accent-light, #eff6ff);font-size:var(--font-size-xs)}.accomplice-event-title{flex:1;min-width:0;color:var(--color-gray-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accomplice-event-time{font-size:10px;color:var(--color-gray-500);white-space:nowrap}.accomplice-source-badge{flex-shrink:0;padding:1px 5px;border-radius:999px;background:var(--color-gray-100);color:var(--color-gray-400);font-size:10px;font-weight:600}.accomplice-wwp-backlog{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-gray-100)}.accomplice-wwp-backlog-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.accomplice-wwp-backlog-note{margin:0 0 var(--space-3);font-size:var(--font-size-xs);line-height:1.5}.accomplice-wwp-backlog-list{display:flex;flex-direction:column;gap:var(--space-2)}.accomplice-wwp-empty{padding:var(--space-5) var(--space-4);border:1px dashed var(--color-gray-200);border-radius:var(--radius-md);text-align:center}.accomplice-wwp-empty p{margin:0;color:var(--color-gray-600);font-size:var(--font-size-sm)}.accomplice-wwp-empty p+p{margin-top:var(--space-2)}@media(max-width:900px){.accomplice-hero,.accomplice-two-column,.accomplice-summary-grid,.accomplice-definition-list{grid-template-columns:1fr}.accomplice-wwp-days{grid-template-columns:repeat(4,minmax(150px,1fr))}}@media(max-width:640px){.accomplice-tab{gap:var(--space-4)}.accomplice-hero,.accomplice-stat-card,.accomplice-workflow-card{padding:var(--space-3)}.accomplice-alert,.accomplice-section-header,.accomplice-workflow-header{flex-direction:column;align-items:stretch}.accomplice-wwp-days{grid-template-columns:repeat(2,minmax(140px,1fr))}.accomplice-wwp-backlog-header{flex-wrap:wrap}}.accomplice-timeline-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.accomplice-timeline-actions .btn.is-active{background:var(--color-accent-light, #eff6ff);border-color:var(--color-accent, #2563eb);color:var(--color-accent, #2563eb)}.accomplice-timeline-guard{margin-bottom:var(--space-4);background:var(--color-gray-50);border-color:var(--color-gray-200);color:var(--color-gray-600)}.accomplice-timeline{display:grid;grid-template-columns:48px minmax(0,1fr);gap:var(--space-3);overflow-x:auto}.accomplice-timeline-hours{display:flex;flex-direction:column;padding-top:38px;color:var(--color-gray-300);font-size:10px;text-align:right}.accomplice-timeline-hours span{height:54px;padding-right:var(--space-1)}.accomplice-timeline-days{display:grid;grid-template-columns:repeat(7,minmax(210px,1fr));gap:var(--space-3);min-width:960px}.accomplice-timeline--day .accomplice-timeline-days{grid-template-columns:minmax(320px,1fr);min-width:min(720px,100%)}.accomplice-timeline-day{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface);overflow:hidden}.accomplice-timeline-day.is-today{border-color:var(--color-accent, #2563eb);box-shadow:0 0 0 1px var(--color-accent-light, #eff6ff)}.accomplice-timeline-day-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border-bottom:1px solid var(--color-gray-100)}.accomplice-timeline-day.is-today .accomplice-timeline-day-header{background:var(--color-accent-light, #eff6ff)}.accomplice-timeline-lanes{position:relative;display:grid;grid-template-columns:1fr 1fr;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 53px,var(--color-gray-100) 54px)}.accomplice-timeline-lane{position:relative;min-width:0;border-right:1px solid var(--color-gray-100)}.accomplice-timeline-lane:last-child{border-right:0}.accomplice-timeline-lane-label{position:sticky;top:0;z-index:2;display:block;padding:3px var(--space-2);background:#ffffffe0;color:var(--color-gray-400);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.accomplice-timeline-block{position:absolute;left:var(--space-1);right:var(--space-1);z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:1px;overflow:hidden;padding:5px 7px;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm, 8px);background:var(--bg-surface);color:var(--color-gray-700);box-shadow:0 1px 2px #0f172a14;font-size:10px;text-align:left;cursor:pointer}.accomplice-timeline-block strong,.accomplice-timeline-block span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accomplice-timeline-block-time{color:var(--color-gray-500);font-weight:700}.accomplice-timeline-block.is-actual{border-style:dashed}.accomplice-timeline-block.color-task{border-left:4px solid #2563eb}.accomplice-timeline-block.color-event{border-left:4px solid #7c3aed}.accomplice-timeline-block.color-activity{border-left:4px solid #0891b2}.accomplice-timeline-block.color-actual{border-left:4px solid #16a34a;background:#f0fdf4}.accomplice-timeline-block.color-diary{border-left:4px solid #f59e0b;background:#fffbeb}.accomplice-timeline-block.color-done{border-left:4px solid #94a3b8;background:var(--color-gray-50);opacity:.75}.accomplice-now-line{position:absolute;left:0;right:0;z-index:3;height:0;border-top:2px solid #ef4444;pointer-events:none}.accomplice-now-line span{position:absolute;right:var(--space-2);top:-9px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:9px;font-weight:700;text-transform:uppercase}.accomplice-variance-strip{display:flex;flex-wrap:wrap;gap:var(--space-1);padding:var(--space-2);border-top:1px solid var(--color-gray-100);background:var(--color-gray-50)}.accomplice-variance-pill,.accomplice-variance-more{padding:1px 6px;border-radius:999px;background:var(--color-gray-100);color:var(--color-gray-500);font-size:10px;font-weight:600}.accomplice-variance-pill.is-planned-only{background:#eff6ff;color:#1d4ed8}.accomplice-variance-pill.is-actual-only{background:#fffbeb;color:#b45309}.accomplice-variance-pill.is-matched{background:#f0fdf4;color:#166534}.accomplice-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#0f172a59}.accomplice-snapshot-modal{width:min(680px,100%);max-height:min(80vh,720px);overflow:auto;padding:var(--space-5);border-radius:var(--radius-lg, 16px);background:var(--bg-surface);box-shadow:0 24px 72px #0f172a38}@media(max-width:900px){.accomplice-timeline{grid-template-columns:38px minmax(0,1fr)}.accomplice-timeline-days{grid-template-columns:repeat(7,minmax(190px,1fr))}}.accomplice-quick-plan-form{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:var(--space-3)}.accomplice-quick-plan-form label{display:flex;flex-direction:column;gap:var(--space-1);color:var(--color-gray-500);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.accomplice-quick-plan-form input,.accomplice-quick-plan-form select{width:100%;min-height:38px;padding:0 var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm, 8px);background:var(--bg-surface);color:var(--color-gray-700);font-size:var(--font-size-sm);font-weight:500;letter-spacing:normal;text-transform:none}.accomplice-quick-plan-title,.accomplice-quick-plan-notes{grid-column:span 2}.accomplice-quick-plan-actions{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.accomplice-inline-edit{margin-left:auto;border:0;background:transparent;color:var(--color-accent, #2563eb);font-size:10px;font-weight:700;cursor:pointer}.accomplice-classification-pill{padding:1px 6px;border-radius:999px;background:var(--color-accent-light, #eff6ff);color:var(--color-accent, #2563eb);font-size:10px;font-weight:700}@media(max-width:900px){.accomplice-quick-plan-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.accomplice-quick-plan-form,.accomplice-quick-plan-title,.accomplice-quick-plan-notes{grid-template-columns:1fr;grid-column:1 / -1}}.accomplice-closeout-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:var(--space-4);margin-bottom:var(--space-5)}.accomplice-closeout-grid h4{margin:0 0 var(--space-2);color:var(--color-gray-700)}.accomplice-closeout-list,.accomplice-archive-list{display:flex;flex-direction:column;gap:var(--space-2)}.accomplice-carryover-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-2);align-items:center;padding:var(--space-2);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);background:var(--bg-surface)}.accomplice-carryover-row input{width:16px;height:16px}.accomplice-closeout-notes{width:100%;resize:vertical;margin-bottom:var(--space-3);padding:var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--color-gray-700);font:inherit;font-size:var(--font-size-sm)}.accomplice-closeout-reopen{margin-top:var(--space-3);line-height:1.5}.accomplice-archives{padding-top:var(--space-4);border-top:1px solid var(--color-gray-100)}.accomplice-archive-row{border:1px solid var(--color-gray-100);border-radius:var(--radius-md);background:var(--color-gray-50);padding:var(--space-3)}.accomplice-archive-row summary{display:flex;justify-content:space-between;gap:var(--space-3);cursor:pointer;color:var(--color-gray-700);font-size:var(--font-size-sm)}.accomplice-archive-row summary span,.accomplice-archive-row p{color:var(--color-gray-500);font-size:var(--font-size-xs)}@media(max-width:900px){.accomplice-closeout-grid{grid-template-columns:1fr}}.accomplice-subview-toggle{display:inline-flex;gap:.5rem;padding:.35rem;border:1px solid var(--border-color, #e2e8f0);border-radius:999px;background:var(--surface-muted, #f8fafc);margin:1rem 0}.accomplice-subview-toggle .btn{border-radius:999px}.accomplice-subview-toggle .is-active{background:var(--primary-color, #2563eb);color:#fff;border-color:var(--primary-color, #2563eb)}.accomplice-scope-card{overflow:hidden}.accomplice-scope-tree{display:grid;gap:.85rem;margin-top:1rem}.accomplice-scope-tree.is-flat{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.accomplice-scope-node{position:relative;display:grid;grid-template-columns:.35rem 1fr;gap:0;margin-left:calc(var(--scope-depth, 0) * 1rem);border:1px solid var(--border-color, #e2e8f0);border-radius:1rem;background:var(--surface-color, #fff);box-shadow:0 10px 24px #0f172a0f}.accomplice-scope-node-bar{border-radius:1rem 0 0 1rem;background:linear-gradient(180deg,#8b5cf6,#06b6d4)}.accomplice-scope-node-body{padding:1rem}.accomplice-scope-node-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.accomplice-scope-node-header h4{margin:.15rem 0 0;font-size:1rem}.accomplice-scope-progress{height:.45rem;margin:.85rem 0;border-radius:999px;background:var(--surface-muted, #e2e8f0);overflow:hidden}.accomplice-scope-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22c55e,#14b8a6)}.accomplice-scope-node-meta{display:flex;flex-wrap:wrap;gap:.4rem;color:var(--text-muted, #64748b);font-size:.82rem}.accomplice-scope-node-meta>span{padding:.2rem .5rem;border-radius:999px;background:var(--surface-muted, #f1f5f9)}.accomplice-scope-children{grid-column:2;display:grid;gap:.75rem;padding:0 1rem 1rem 0}.accomplice-scope-flat-state{margin-bottom:1rem}.project-detail{max-width:1200px}.detail-loading{text-align:center;padding:var(--space-12);color:var(--color-gray-400);font-size:var(--font-size-base)}.detail-error{text-align:center;padding:var(--space-12) var(--space-5);background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.detail-error h2{font-size:var(--font-size-lg);color:var(--color-gray-600);margin-bottom:var(--space-2)}.detail-error p{color:var(--color-gray-400);margin-bottom:var(--space-5)}.detail-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-gray-200);margin-bottom:var(--space-5);overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none}.detail-tabs::-webkit-scrollbar{display:none}.detail-tab{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-500);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap;flex-shrink:0;transition:color .15s,border-color .15s}@media(hover:hover){.detail-tab:hover{color:var(--color-gray-700)}}.detail-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.project-detail-layout{display:grid;grid-template-columns:1fr 280px;gap:var(--space-5)}.detail-tab-content{min-height:300px}.project-detail-sidebar{min-width:0}@media(max-width:900px){.project-detail-layout{grid-template-columns:1fr}}@media(max-width:767px){.detail-tabs{gap:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.detail-tabs::-webkit-scrollbar{display:none}.detail-tab{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);flex-shrink:0}}@media(max-width:640px){.detail-tab{padding:var(--space-2)}}.detail-tabs--pills{border-bottom:none;gap:var(--space-2);padding:var(--space-2) 0;margin-bottom:var(--space-3);-webkit-overflow-scrolling:touch}.detail-tab--pill{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);border:1px solid var(--color-gray-200);border-radius:999px;border-bottom:1px solid var(--color-gray-200);margin-bottom:0;background:var(--bg-surface);transition:background .15s,color .15s,border-color .15s}.detail-tab--pill.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent);border-bottom-color:var(--color-accent)}.project-detail-layout--mobile{display:block}.project-detail-layout--mobile .detail-tab-content{min-height:200px}.read-only-banner{display:flex;align-items:center;padding:var(--space-3) var(--space-5);background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border, var(--color-warning-text));border-radius:var(--radius-md);margin-bottom:var(--space-5);font-size:var(--font-size-sm);font-weight:500}.wizard-step-indicator{display:flex;align-items:flex-start;justify-content:center;gap:0;margin-bottom:var(--space-8)}.wizard-step-item{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;max-width:120px}.wizard-step-line{position:absolute;top:14px;right:50%;width:100%;height:2px;background-color:var(--color-gray-200);z-index:0}.wizard-step-line.active{background-color:var(--color-accent)}.wizard-step-circle{width:28px;height:28px;border-radius:50%;border:2px solid var(--color-gray-300);background-color:var(--bg-surface);color:var(--color-gray-400);font-size:var(--font-size-sm);font-weight:600;display:flex;align-items:center;justify-content:center;cursor:default;position:relative;z-index:1;transition:all .2s ease;padding:0}.wizard-step-circle.current{border-color:var(--color-accent);color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.wizard-step-circle.completed{border-color:var(--color-accent);background-color:var(--color-accent);color:var(--color-white);cursor:pointer}.wizard-step-circle:disabled{cursor:default}@media(hover:hover){.wizard-step-circle.completed:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}}.wizard-step-label{margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--color-gray-400);text-align:center;white-space:nowrap}.wizard-step-label.current{color:var(--color-accent);font-weight:600}.wizard-step-label.completed{color:var(--color-gray-600)}@media(hover:none){.wizard-step-circle{min-width:44px;min-height:44px}}@media(max-width:960px){.wizard-step-indicator{overflow-x:auto;justify-content:flex-start;-webkit-overflow-scrolling:touch;padding-bottom:var(--space-2);margin-bottom:var(--space-4)}.wizard-step-item{min-width:60px;flex:0 0 auto}.wizard-step-label{font-size:10px;white-space:nowrap}}.wizard-navigation{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) 0;margin-top:var(--space-6);border-top:1px solid var(--color-gray-200)}.wizard-nav-left,.wizard-nav-center,.wizard-nav-right{flex:1;display:flex}.wizard-nav-left{justify-content:flex-start}.wizard-nav-center{justify-content:center}.wizard-nav-right{justify-content:flex-end}@media(max-width:960px){.wizard-navigation{flex-wrap:wrap;gap:var(--space-3)}.wizard-nav-center{flex:0 0 auto}.wizard-nav-center{order:3;width:100%;justify-content:center}}.toast{position:fixed;bottom:var(--space-6);right:var(--space-6);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);color:var(--color-white);font-size:var(--font-size-base);display:flex;align-items:center;gap:var(--space-3);box-shadow:var(--shadow-lg);cursor:pointer;z-index:1000;animation:toast-slide-in .3s ease-out}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{background-color:var(--color-success)}.toast-error{background-color:var(--color-danger)}.toast-info{background-color:var(--color-info)}.toast-message{flex:1}.toast-close{background:none;border:none;color:var(--color-white);font-size:var(--font-size-lg);cursor:pointer;padding:0;line-height:1;opacity:.8}@media(hover:hover){.toast-close:hover{opacity:1}}@media(hover:none){.toast-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}.pac-container{z-index:10000;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--color-gray-200);font-family:var(--font-family)}.wizard-duration{font-size:var(--font-size-md);font-weight:600;color:var(--color-accent);padding-top:var(--space-2)}.budget-progress{margin-top:var(--space-4);padding:var(--space-3) 0}.budget-progress-header{display:flex;justify-content:space-between;font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-2)}.budget-progress-bar{height:8px;background-color:var(--color-gray-100);border-radius:4px;overflow:hidden}.budget-progress-fill{height:100%;background-color:var(--color-accent);border-radius:4px;transition:width .3s ease}.budget-progress-fill.over{background-color:var(--color-danger)}.agent-config-grid{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.agent-config-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;transition:background-color .15s}@media(hover:hover){.agent-config-item:hover{background-color:var(--color-gray-50)}}.agent-config-item input[type=checkbox]{margin-top:2px;flex-shrink:0}.agent-config-text{display:flex;flex-direction:column;gap:2px}.agent-config-label{font-size:var(--font-size-base);font-weight:500;color:var(--color-gray-700)}.agent-config-desc{font-size:var(--font-size-sm);color:var(--color-gray-500)}.review-section{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4)}.review-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.review-section-header h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.review-grid{display:grid;grid-template-columns:140px 1fr;gap:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.review-grid dt{color:var(--color-gray-500);font-weight:500}.review-grid dd{color:var(--color-gray-700);word-break:break-word}.review-table{width:100%;font-size:var(--font-size-sm);border-collapse:collapse}.review-table th{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-200);color:var(--color-gray-500);font-weight:500;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.5px}.review-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100);color:var(--color-gray-700)}.wizard-submit-error{background-color:var(--color-danger-bg);border:1px solid var(--color-danger);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-5)}.wizard-submit-error-message{color:var(--color-danger);font-weight:500;margin-bottom:var(--space-2)}.wizard-submit-error-list{list-style:disc;padding-left:var(--space-5);color:var(--color-danger);font-size:var(--font-size-sm)}@media(max-width:960px){.review-grid{grid-template-columns:1fr}.review-section{padding:var(--space-3) var(--space-4)}.review-table{font-size:var(--font-size-xs)}.review-table th,.review-table td{padding:var(--space-2)}}.wizard-container{width:100%;max-width:800px;margin:0 auto;padding:var(--space-4) var(--space-2)}.wizard-card-wrapper{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-8)}.wizard-draft-prompt{background-color:var(--color-accent-light);border:1px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.wizard-draft-prompt p{font-size:var(--font-size-base);color:var(--color-gray-700)}.wizard-draft-actions{display:flex;gap:var(--space-2);flex-shrink:0}.wizard-success{text-align:center;padding:var(--space-12) var(--space-8)}.wizard-success-icon{width:64px;height:64px;border-radius:50%;background-color:var(--color-success);color:var(--color-white);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-5);font-size:32px}.wizard-success h2{font-size:var(--font-size-xl);color:var(--color-gray-700);margin-bottom:var(--space-2)}.wizard-success p{font-size:var(--font-size-base);color:var(--color-gray-500);margin-bottom:var(--space-6)}.wizard-step{min-height:200px}.wizard-step-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-1)}.wizard-step-subtitle{font-size:var(--font-size-base);color:var(--color-gray-500);margin-bottom:var(--space-6)}.wizard-field-group{margin-bottom:var(--space-5);flex:1;min-width:0}.wizard-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600);margin-bottom:var(--space-1)}.wizard-required{color:var(--color-danger)}.wizard-input,.wizard-select,.wizard-textarea{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-gray-700);background-color:var(--bg-surface);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);transition:border-color .15s,box-shadow .15s}.wizard-input:focus,.wizard-select:focus,.wizard-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.wizard-input-error{border-color:var(--color-danger)}.wizard-input-error:focus{box-shadow:0 0 0 3px #dc354526}.wizard-textarea{resize:vertical;min-height:80px}.wizard-select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:var(--space-8)}.wizard-error{font-size:var(--font-size-sm);color:var(--color-danger);margin-top:var(--space-1)}.wizard-helper{font-size:var(--font-size-sm);color:var(--color-gray-400);margin-top:var(--space-1)}.wizard-char-count{text-align:right}.wizard-row{display:flex;gap:var(--space-4);align-items:flex-start}.wizard-col-2{flex:2}.wizard-section{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-gray-100)}.wizard-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);flex-wrap:wrap;gap:var(--space-2)}.wizard-section-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.wizard-section-actions{display:flex;gap:var(--space-2)}.wizard-list-item{padding:var(--space-3) 0;border-bottom:1px solid var(--color-gray-100)}.wizard-list-item:last-child{border-bottom:none}.wizard-card{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4)}.wizard-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.wizard-card-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.5px}.wizard-empty{font-size:var(--font-size-sm);color:var(--color-gray-400);text-align:center;padding:var(--space-5) 0}.wizard-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);font-size:var(--font-size-base);font-family:var(--font-family);font-weight:500;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:all .15s;white-space:nowrap}.wizard-btn:disabled{opacity:.5;cursor:not-allowed}.wizard-btn-primary{background-color:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.wizard-btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover);border-color:var(--color-accent-hover)}}.wizard-btn-secondary{background-color:var(--bg-surface);color:var(--color-accent);border-color:var(--color-accent)}@media(hover:hover){.wizard-btn-secondary:hover:not(:disabled){background-color:var(--color-accent-light)}}.wizard-btn-ghost{background:none;color:var(--color-accent);border:none;padding:var(--space-2) var(--space-3)}@media(hover:hover){.wizard-btn-ghost:hover:not(:disabled){background-color:var(--color-accent-light)}}.wizard-btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm)}.wizard-btn-icon{width:28px;height:28px;padding:0;font-size:var(--font-size-lg);border-radius:var(--radius-sm);flex-shrink:0}.wizard-btn-danger-ghost{background:none;color:var(--color-gray-400);border:none}@media(hover:hover){.wizard-btn-danger-ghost:hover:not(:disabled){color:var(--color-danger);background-color:var(--color-danger-bg)}}.wizard-checkbox-label,.wizard-radio-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-base);color:var(--color-gray-700);cursor:pointer}.wizard-radio-group{display:flex;gap:var(--space-5)}@media(hover:none){.wizard-btn-icon{min-width:44px;min-height:44px}}@media(max-width:960px){.wizard-container{max-width:100%;overflow-x:hidden}.wizard-card-wrapper{padding:var(--space-4);border-radius:var(--radius-md)}.wizard-row{flex-direction:column;gap:var(--space-3)}.wizard-draft-prompt{flex-direction:column;align-items:flex-start;padding:var(--space-3)}.wizard-radio-group{flex-direction:column;gap:var(--space-2)}.wizard-success{padding:var(--space-6) var(--space-4)}}.account-autocomplete{position:relative;width:100%}.account-autocomplete-input{width:100%;border:1px solid var(--color-gray-200);padding:4px 8px;font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-gray-700);background:var(--bg-surface);border-radius:var(--radius-sm);transition:border-color .15s}.account-autocomplete-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.account-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:2px;background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-height:200px;overflow-y:auto;z-index:200}.account-autocomplete-item{display:flex;gap:var(--space-2);padding:6px 8px;cursor:pointer;font-size:var(--font-size-sm);transition:background-color .1s}.account-autocomplete-item.highlighted{background-color:var(--color-accent-light)}.account-autocomplete-code{font-weight:600;color:var(--color-accent);min-width:48px}.account-autocomplete-name{color:var(--color-gray-600)}.split-editor-modal{max-width:720px}.split-editor-body{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.split-editor-fields{display:flex;gap:var(--space-3)}.split-editor-fields .form-group{flex:1}.split-editor-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.split-editor-table th{text-align:left;padding:var(--space-2) var(--space-2);font-weight:600;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--color-gray-200)}.split-editor-table td{padding:var(--space-1) var(--space-2);vertical-align:top}.split-editor-table .amount-col{width:110px;text-align:right}.split-editor-table .memo-col{width:140px}.split-editor-table .action-col{width:32px;text-align:center}.split-amount-input,.split-memo-input{width:100%;border:1px solid var(--color-gray-200);padding:4px 6px;font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-gray-700);border-radius:var(--radius-sm);transition:border-color .15s}.split-amount-input{text-align:right;font-variant-numeric:tabular-nums}.split-amount-input:focus,.split-memo-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.split-remove-btn{border:none;background:none;font-size:16px;color:var(--color-gray-400);cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm);line-height:1}@media(hover:hover){.split-remove-btn:hover{color:var(--color-danger);background:var(--color-danger-bg)}}@media(hover:none){.split-remove-btn{min-width:44px;min-height:44px}}.split-totals-row td{padding-top:var(--space-2);border-top:2px solid var(--color-gray-200)}.split-total{font-weight:600;font-variant-numeric:tabular-nums}.split-balanced{color:var(--color-success);font-weight:500}.split-unbalanced{color:var(--color-danger);font-weight:500}@media(max-width:767px){.split-editor-modal{width:calc(100vw - var(--space-4));max-width:none;margin:var(--space-2)}.split-editor-fields{flex-direction:column}.split-editor-body{padding:var(--space-3);overflow-x:auto;-webkit-overflow-scrolling:touch}.split-editor-table{min-width:500px}}.related-items-sidebar{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4)}.related-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.related-items-header h4{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);text-transform:uppercase;letter-spacing:.05em}.related-items-add-btn{background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);padding:2px 10px;font-size:var(--font-size-xs);color:var(--color-gray-500);cursor:pointer;transition:all .15s}.related-items-add-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.related-items-empty{text-align:center;padding:var(--space-5) var(--space-3);color:var(--color-gray-400);font-size:var(--font-size-sm)}.related-items-empty p{margin:0 0 var(--space-3)}.related-items-group{margin-bottom:var(--space-3)}.related-items-group:last-child{margin-bottom:0}.related-items-group-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.related-item-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s;position:relative}.related-item-card.not-navigable{cursor:default}.related-item-card:hover{background:var(--bg-hover, var(--color-gray-100))}.related-item-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:14px;border-radius:var(--radius-sm);background:var(--color-gray-100)}.related-item-info{flex:1;min-width:0}.related-item-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none;display:block}.related-item-name:hover{color:var(--color-accent)}.related-item-relation{font-size:var(--font-size-xs);color:var(--color-gray-400)}.related-item-remove{opacity:0;background:none;border:none;color:var(--color-gray-400);cursor:pointer;font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-sm);transition:all .15s;flex-shrink:0}.related-item-card:hover .related-item-remove{opacity:1}.related-item-remove:hover{color:var(--color-danger, #dc2626);background:var(--color-danger-bg, #fef2f2)}.related-item-auto-badge{font-size:10px;color:var(--color-gray-400);background:var(--color-gray-100);padding:1px 5px;border-radius:var(--radius-sm);flex-shrink:0}.related-items-loading{text-align:center;padding:var(--space-4);color:var(--color-gray-400);font-size:var(--font-size-sm)}.add-link-overlay{position:fixed;inset:0;background:#0006;z-index:1000;display:flex;align-items:center;justify-content:center}.add-link-dialog{background:var(--bg-surface, #fff);border-radius:var(--radius-md);width:480px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000026}.add-link-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.add-link-dialog-header h3{margin:0;font-size:var(--font-size-base);font-weight:600}.add-link-dialog-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--color-gray-400);padding:4px}.add-link-dialog-close:hover{color:var(--color-gray-700)}.add-link-dialog-body{padding:var(--space-4);overflow-y:auto;flex:1}.add-link-relation-row{display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.add-link-relation-row select{flex:1;padding:6px 10px;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--font-size-sm);background:var(--bg-surface, #fff)}.entity-search{margin-bottom:var(--space-3)}.entity-search-input{width:100%;padding:8px 12px;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--font-size-sm);outline:none;box-sizing:border-box}.entity-search-input:focus{border-color:var(--color-accent)}.entity-search-type-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-3)}.entity-search-type-tab{background:none;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);padding:4px 10px;font-size:var(--font-size-xs);cursor:pointer;color:var(--color-gray-500);transition:all .15s}.entity-search-type-tab.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.entity-search-type-tab:hover:not(.active){border-color:var(--color-gray-400)}.entity-search-results{max-height:300px;overflow-y:auto}.entity-search-result{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s}.entity-search-result:hover{background:var(--bg-hover, var(--color-gray-100))}.entity-search-result-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:14px;border-radius:var(--radius-sm);background:var(--color-gray-100);flex-shrink:0}.entity-search-result-info{flex:1;min-width:0}.entity-search-result-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.entity-search-result-meta{font-size:var(--font-size-xs);color:var(--color-gray-400)}.entity-search-empty{text-align:center;padding:var(--space-4);color:var(--color-gray-400);font-size:var(--font-size-sm)}.entity-search-loading{text-align:center;padding:var(--space-3);color:var(--color-gray-400);font-size:var(--font-size-sm)}.add-link-error{color:var(--color-danger, #dc2626);font-size:var(--font-size-sm);margin-top:var(--space-2)}.wbs-dialog-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.wbs-dialog{background:var(--bg-surface);border-radius:var(--radius-md);width:600px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 24px #0000001f}.wbs-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100)}.wbs-dialog-header h3{margin:0;font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.wbs-dialog-body{padding:var(--space-4);overflow-y:auto;flex:1}.wbs-dialog-body .form-group{margin-bottom:var(--space-3)}.wbs-dialog-body .form-group label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.3px;margin-bottom:var(--space-1)}.wbs-dialog-body .form-group select{width:100%;padding:var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.wbs-actions{display:flex;gap:var(--space-2);margin-bottom:var(--space-2)}.wbs-task-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);margin-bottom:var(--space-3)}.wbs-task-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-50);cursor:pointer;font-size:var(--font-size-sm)}.wbs-task-row:last-child{border-bottom:none}.wbs-task-row:hover{background:var(--color-gray-50)}.wbs-task-disabled{opacity:.5;cursor:default}.wbs-task-code{color:var(--color-gray-500);font-variant-numeric:tabular-nums;min-width:60px}.wbs-task-title{flex:1;color:var(--color-gray-700)}.wbs-task-cost{color:var(--color-gray-600);font-variant-numeric:tabular-nums;text-align:right;min-width:80px}.wbs-replace-toggle{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.wbs-dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-gray-100)}.wbs-error{background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);border-radius:var(--radius-sm);margin:var(--space-2) var(--space-4) 0}.wbs-loading{padding:var(--space-3);text-align:center;color:var(--color-gray-500);font-size:var(--font-size-sm)}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.btn-close{background:none;border:none;font-size:var(--font-size-base);color:var(--color-gray-400);cursor:pointer;padding:var(--space-1)}@media(max-width:767px){.wbs-dialog-overlay{align-items:flex-end}.wbs-dialog{width:100%;max-width:100%;max-height:80vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding-bottom:env(safe-area-inset-bottom,0px);animation:wbs-slide-up .25s ease-out}@keyframes wbs-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.send-dialog-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.send-dialog{background:var(--bg-surface);border-radius:var(--radius-md);width:480px;max-width:95vw;box-shadow:0 4px 24px #0000001f}.send-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100)}.send-dialog-header h3{margin:0;font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.send-dialog-body{padding:var(--space-4)}.send-dialog-body .form-group{margin-bottom:var(--space-3)}.send-dialog-body .form-group label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.3px;margin-bottom:var(--space-1)}.send-dialog-body .form-group input,.send-dialog-body .form-group textarea{width:100%;padding:var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:inherit;color:var(--color-gray-700);box-sizing:border-box}.send-dialog-body .form-group input:focus,.send-dialog-body .form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.send-pdf-note{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-bottom:var(--space-3)}.send-dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}.send-error{background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);border-radius:var(--radius-sm);margin:var(--space-2) var(--space-4) 0}@media(max-width:767px){.send-dialog-overlay{align-items:flex-end}.send-dialog{width:100%;max-width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding-bottom:env(safe-area-inset-bottom,0px);animation:send-slide-up .25s ease-out}@keyframes send-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}@media print{.sidebar,.app-header,.report-controls,.report-breadcrumb,.report-actions{display:none!important}.app-body{margin-left:0!important}.app-main{padding:0!important}.report-page{padding:0;max-width:100%}.report-page h1{font-size:18pt;margin-bottom:8pt}.report-table{width:100%;border-collapse:collapse;font-size:9pt;page-break-inside:auto}.report-table th,.report-table td{border-bottom:.5pt solid var(--color-gray-400);padding:3pt 6pt}.report-table th{border-bottom:1pt solid var(--color-gray-700);font-weight:600}.report-section-total td{border-top:1pt solid var(--color-gray-700);font-weight:600}.report-footer{border-top:2pt solid var(--color-gray-700);font-weight:700;font-size:10pt;margin-top:12pt;padding-top:6pt}.report-summary-cards{display:flex;gap:12pt}.report-summary-card{border:.5pt solid var(--color-gray-400);padding:6pt;flex:1}tr{page-break-inside:avoid}}.email-tab{display:flex;flex-direction:column;height:calc(100vh - 220px);min-height:400px}.email-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-gray-200);margin-bottom:var(--space-3);flex-wrap:wrap}.email-filters{display:flex;gap:0}.email-filter-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer;transition:color .15s,background .15s}.email-filter-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.email-filter-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.email-filter-btn:not(:first-child){border-left:none}.email-filter-btn.active{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.email-filter-btn:not(.active):hover{color:var(--color-gray-700);background:var(--color-gray-50)}}.email-toolbar-actions{display:flex;gap:var(--space-2);align-items:center}.email-search{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700);background:var(--bg-surface);min-width:180px}.email-search:focus{outline:none;border-color:var(--color-accent)}.email-toolbar-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer;transition:border-color .15s,color .15s}.email-toolbar-btn:disabled{opacity:.5;cursor:not-allowed}@media(hover:hover){.email-toolbar-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}}.email-compose-btn{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:opacity .15s}@media(hover:hover){.email-compose-btn:hover{opacity:.9}}.email-split{display:flex;flex:1;min-height:0;gap:1px;background:var(--color-gray-200);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden}.email-list-pane{flex:1;min-width:0;overflow-y:auto;background:var(--bg-surface)}.email-list-pane.has-selection{flex:0 0 360px;max-width:360px}.email-detail-pane{flex:1;min-width:0;overflow-y:auto;background:var(--bg-surface);display:none}.email-detail-pane.visible{display:block}.email-detail-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-gray-400);font-size:var(--font-size-sm)}.email-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100);cursor:pointer;transition:background .1s}@media(hover:hover){.email-row:hover{background:var(--color-gray-50)}}.email-row.selected{background:var(--color-gray-100)}.email-row.unread{font-weight:600}.email-row-left{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;min-width:140px;max-width:180px}.email-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent);flex-shrink:0}.email-star-btn{border:none;background:none;cursor:pointer;font-size:var(--font-size-base);color:var(--color-gray-300);padding:0;line-height:1;flex-shrink:0}.email-star-btn.starred{color:var(--color-warning)}.email-row-sender{font-size:var(--font-size-sm);color:var(--color-gray-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-row-direction{font-size:var(--font-size-xs);color:var(--color-gray-500)}.email-row-content{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--font-size-sm)}.email-row-subject{color:var(--color-gray-700)}.email-row-snippet{color:var(--color-gray-400);font-weight:400}.email-row-meta{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.email-attach-icon{font-size:var(--font-size-xs);color:var(--color-gray-400)}.email-row-date{font-size:var(--font-size-xs);color:var(--color-gray-400);white-space:nowrap}.email-loading,.email-empty{padding:var(--space-8);text-align:center;color:var(--color-gray-400)}.email-empty h4{font-size:var(--font-size-base);color:var(--color-gray-500);margin-bottom:var(--space-2)}.email-empty p{font-size:var(--font-size-sm)}.email-error{padding:var(--space-4);text-align:center;color:var(--color-danger);font-size:var(--font-size-sm)}.email-pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-3);border-top:1px solid var(--color-gray-100);font-size:var(--font-size-sm);color:var(--color-gray-500)}.email-pagination button{padding:var(--space-1) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.email-pagination button:disabled{opacity:.5;cursor:not-allowed}.email-thread{padding:var(--space-4)}.email-thread-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.email-back-btn{padding:var(--space-1) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}@media(hover:hover){.email-back-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}}.email-reply-btn{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:opacity .15s}@media(hover:hover){.email-reply-btn:hover{opacity:.9}}.email-thread-subject{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-3)}.email-thread-labels{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap}.email-label{display:inline-block;padding:2px 8px;background:var(--color-gray-100);border-radius:12px;font-size:var(--font-size-xs);color:var(--color-gray-500)}.email-thread-messages{display:flex;flex-direction:column;gap:var(--space-3)}.email-message{border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden}.email-message-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-4);background:var(--color-gray-50);cursor:pointer}.email-message-sender{font-size:var(--font-size-sm);color:var(--color-gray-700);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-message-sender strong{font-weight:600}.email-message-snippet{color:var(--color-gray-400);font-weight:400}.email-message-date{font-size:var(--font-size-xs);color:var(--color-gray-400);white-space:nowrap;flex-shrink:0;margin-left:var(--space-3)}.email-message-body{padding:var(--space-4)}.email-message-meta{display:flex;flex-direction:column;gap:2px;font-size:var(--font-size-xs);color:var(--color-gray-400);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-gray-100)}.email-message-content{font-size:var(--font-size-sm);color:var(--color-gray-700);line-height:1.6;word-break:break-word}.email-message-content img{max-width:100%;height:auto}.email-compose-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.email-compose-modal{background:var(--bg-surface);border-radius:var(--radius-md);width:600px;max-width:90vw;max-height:85vh;overflow-y:auto;padding:var(--space-5);box-shadow:0 8px 32px #00000026}.email-compose-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.email-compose-header h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.email-compose-close{padding:var(--space-1) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer}.email-compose-error{padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);background:var(--color-danger-bg);color:var(--color-danger);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.email-compose-form{display:flex;flex-direction:column;gap:var(--space-3)}.email-compose-row{display:flex;flex-direction:column;gap:var(--space-1)}.email-compose-row label{font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em}.email-compose-row input,.email-compose-row select,.email-compose-row textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700);background:var(--bg-surface);font-family:inherit}.email-compose-row input:focus,.email-compose-row select:focus,.email-compose-row textarea:focus{outline:none;border-color:var(--color-accent)}.email-compose-row textarea{resize:vertical;min-height:120px}.email-compose-actions{display:flex;gap:var(--space-2);margin-top:var(--space-4);justify-content:flex-end}.email-compose-send{padding:var(--space-2) var(--space-5);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:opacity .15s}.email-compose-send:disabled{opacity:.5;cursor:not-allowed}@media(hover:hover){.email-compose-send:hover:not(:disabled){opacity:.9}}.email-compose-cancel{padding:var(--space-2) var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.template-panel-overlay{position:fixed;inset:0;background:#0000004d;display:flex;justify-content:flex-end;z-index:1000}.template-panel{width:400px;max-width:90vw;height:100%;background:var(--bg-surface);box-shadow:-4px 0 16px #0000001a;display:flex;flex-direction:column;overflow:hidden}.template-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-200)}.template-panel-header h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.template-panel-close{padding:var(--space-1) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer}.template-panel-filters{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-gray-100)}.template-panel-select{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-600);background:var(--bg-surface)}.template-panel-list{flex:1;overflow-y:auto;padding:var(--space-3) var(--space-5)}.template-panel-message{text-align:center;color:var(--color-gray-400);font-size:var(--font-size-sm);padding:var(--space-6) 0}.template-panel-item{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);margin-bottom:var(--space-2);transition:border-color .15s}@media(hover:hover){.template-panel-item:hover{border-color:var(--color-gray-300)}}.template-panel-item-info{min-width:0;flex:1}.template-panel-item-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);margin-bottom:2px}.template-panel-item-subject{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-bottom:4px}.template-panel-item-preview{font-size:var(--font-size-xs);color:var(--color-gray-400);line-height:1.4}.template-panel-use-btn{padding:var(--space-1) var(--space-3);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;flex-shrink:0;transition:opacity .15s}@media(hover:hover){.template-panel-use-btn:hover{opacity:.9}}@media(max-width:767px){.email-toolbar{flex-direction:column;align-items:stretch}.email-toolbar-actions{flex-wrap:wrap}.email-search{min-width:0;flex:1}.email-split{flex-direction:column}.email-list-pane,.email-list-pane.has-selection{flex:none;max-width:none;max-height:50%}.email-detail-pane.visible{display:block;flex:1}.email-compose-modal{width:100%;max-width:100%;max-height:100%;border-radius:0}.template-panel{width:100%}}.contact-card{background:var(--color-surface, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:12px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:box-shadow .15s,border-color .15s;-webkit-tap-highlight-color:transparent}.contact-card:active{background:var(--color-surface-hover, #f9fafb);box-shadow:0 2px 8px #00000014}.contact-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.contact-card-avatar{width:40px;height:40px;min-width:40px;border-radius:50%;background:var(--color-primary, #2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.contact-card-avatar.org{border-radius:8px;background:var(--color-gray-500, #6b7280)}.contact-card-info{flex:1;min-width:0}.contact-card-name{font-size:15px;font-weight:600;color:var(--color-text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.contact-card-company{font-size:13px;color:var(--color-text-secondary, #6b7280);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-card-badge{font-size:11px;font-weight:600;color:#fff;padding:2px 8px;border-radius:20px;white-space:nowrap;text-transform:capitalize;flex-shrink:0}.contact-card-actions{display:flex;flex-direction:column;gap:6px;padding-left:52px}.contact-card-action{font-size:13px;color:var(--color-primary, #2563eb);text-decoration:none;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px 0}.contact-card-action--call{color:var(--color-success-text, #059669)}.contact-card-action--email{color:var(--color-primary, #2563eb)}.contact-card-action--disabled{color:var(--color-gray-400, #9ca3af);cursor:default}.comm-hub-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-gray-200);margin-bottom:var(--space-5)}.comm-hub-tab{padding:var(--space-3) var(--space-5);border:none;background:none;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-500);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}@media(hover:hover){.comm-hub-tab:hover{color:var(--color-gray-700)}}.comm-hub-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.comm-agent-tab{max-width:800px}.comm-agent-tab-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-gray-400)}.comm-agent-tab-empty h3{font-size:var(--font-size-lg);color:var(--color-gray-500);margin-bottom:var(--space-2)}.comm-agent-tab-empty p{font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.contacts-page{max-width:1200px}.contacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-5)}.contacts-header-actions{display:flex;gap:var(--space-3)}.contacts-create-btn{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:opacity .15s}@media(hover:hover){.contacts-create-btn:hover{opacity:.9}}.contacts-import-btn{padding:var(--space-2) var(--space-4);background:var(--bg-surface);color:var(--color-gray-600);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:border-color .15s}@media(hover:hover){.contacts-import-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}}.contacts-filters{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap}.contacts-search{flex:1;min-width:200px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700);background:var(--bg-surface)}.contacts-search:focus{outline:none;border-color:var(--color-accent)}.contacts-filters select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-600);background:var(--bg-surface)}.contacts-loading,.contacts-error{padding:var(--space-6);text-align:center;color:var(--color-gray-400)}.contacts-error{color:var(--color-danger)}.contacts-table{width:100%;border-collapse:collapse;background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden}.contacts-table th,.contacts-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100);font-size:var(--font-size-sm)}.contacts-table th{background:var(--color-gray-50);font-weight:600;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em}.contacts-table tr:last-child td{border-bottom:none}@media(hover:hover){.contacts-table tr:hover td{background:var(--color-gray-50)}}.contact-row{cursor:pointer}.contact-name-cell{display:flex;align-items:center;gap:var(--space-3)}.contact-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-accent);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:600;flex-shrink:0}.contact-avatar.org{border-radius:var(--radius-sm);background:var(--color-gray-300)}.contact-name-text{display:flex;flex-direction:column}.contact-display-name{font-weight:500;color:var(--color-gray-700)}.contact-email{font-size:var(--font-size-xs);color:var(--color-gray-400)}.contact-tag{display:inline-block;padding:2px 8px;background:var(--color-gray-100);border-radius:12px;font-size:var(--font-size-xs);color:var(--color-gray-600);margin-right:4px;margin-bottom:2px}.contact-attention-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.contact-attention-dot--high{background:var(--attention-high)}.contact-attention-dot--medium{background:var(--attention-medium)}.contact-attention-dot--low{background:var(--attention-low)}.contact-projects-count{font-size:var(--font-size-sm);color:var(--color-gray-500)}.contact-actions-cell{display:flex;gap:4px}.contact-action-link{padding:2px 6px;font-size:var(--font-size-xs);text-decoration:none}.contact-action-btn{padding:2px 6px;font-size:var(--font-size-xs);border:none;background:none;cursor:pointer;color:var(--color-gray-600)}.contacts-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-500)}.contacts-pagination-buttons{display:flex;gap:var(--space-2)}.contacts-pagination button{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-gray-600)}.contacts-pagination button:disabled{opacity:.5;cursor:not-allowed}@media(hover:hover){.contacts-pagination button:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}}.contacts-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-gray-400)}.contacts-empty h3{font-size:var(--font-size-lg);margin-bottom:var(--space-2);color:var(--color-gray-500)}.contacts-empty p{margin-bottom:var(--space-4)}.contacts-empty-cta{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}@media(hover:none){.contact-avatar{min-width:44px;min-height:44px}}@media(max-width:767px){.comm-hub-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.comm-hub-tab{padding:var(--space-2) var(--space-3);white-space:nowrap;font-size:var(--font-size-xs)}.contacts-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.contacts-header-actions{width:100%}.contacts-header-actions button{flex:1}.contacts-filters{flex-direction:column}.contacts-search{min-width:0;width:100%}.contacts-pagination{flex-direction:column;gap:var(--space-2);text-align:center}}.contacts-filters--sticky{position:sticky;top:0;z-index:10;background:var(--color-background, #f9fafb);padding:10px 12px;margin:0 -12px;border-bottom:1px solid var(--color-border, #e5e7eb)}.contacts-card-list{padding:12px 0 80px}.contacts-fab{position:fixed;bottom:24px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--color-primary, #2563eb);color:#fff;font-size:28px;line-height:1;border:none;cursor:pointer;box-shadow:0 4px 16px #2563eb66;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-tap-highlight-color:transparent;transition:transform .15s,box-shadow .15s}.contacts-fab:active{transform:scale(.95);box-shadow:0 2px 8px #2563eb66}.template-selector{border:1px solid var(--color-gray-200);border-radius:var(--radius-md, 8px);padding:var(--space-4);margin-bottom:var(--space-4);background:var(--bg-surface);max-height:400px;overflow:auto}.template-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.template-selector-title{margin:0;font-size:var(--font-size-base);color:var(--color-gray-700)}.template-selector-controls{display:flex;gap:var(--space-2);align-items:center}.template-selector-filter{padding:4px 8px;font-size:var(--font-size-sm);border:1px solid var(--color-gray-200);border-radius:4px}.template-selector-close-btn{font-size:var(--font-size-sm);padding:2px 8px;border:1px solid var(--color-gray-200);border-radius:4px;background:var(--bg-surface);cursor:pointer;color:var(--color-gray-600)}.template-selector-message{color:var(--color-gray-400);font-size:var(--font-size-sm)}.template-selector-list{display:flex;flex-direction:column;gap:var(--space-2)}.template-selector-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm, 4px);cursor:pointer}.template-selector-item-active{background:var(--color-accent-light)}.template-selector-item-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.template-selector-item-meta{font-size:var(--font-size-xs);color:var(--color-gray-400)}.template-selector-builtin{margin-left:var(--space-2);color:var(--color-accent)}.template-selector-use-btn{font-size:var(--font-size-xs);padding:2px 10px;border:1px solid var(--color-accent);border-radius:4px;background:var(--bg-surface);color:var(--color-accent);cursor:pointer}.template-selector-preview{padding:var(--space-3);background:var(--color-gray-50);border-radius:0 0 var(--radius-sm, 4px) var(--radius-sm, 4px);border:1px solid var(--color-gray-100);border-top:none;font-size:var(--font-size-sm)}.template-selector-preview-subject{margin-bottom:var(--space-2)}.template-selector-preview-label{color:var(--color-gray-600)}.template-selector-preview-value{color:var(--color-gray-500)}.template-selector-preview-body{white-space:pre-wrap;color:var(--color-gray-500)}.template-selector-preview-vars{margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--color-gray-400)}.panel-heading{margin:0 0 var(--space-3) 0;font-size:var(--font-size-base);color:var(--color-gray-700)}.compose-info{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-3)}.compose-info-reply{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-2)}.time-input{width:60px;text-align:center}.input-disabled{background:var(--color-gray-100)}.sms-char-counter{display:flex;justify-content:space-between;font-size:var(--font-size-xs);margin-top:var(--space-1);color:var(--color-gray-400)}.sms-char-counter--warn{color:var(--color-warning)}.status-badge{display:inline-block;padding:1px 8px;border-radius:9999px;font-size:var(--font-size-xs);font-weight:600}.description-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-action{font-size:var(--font-size-xs);padding:2px 6px}.channel-filter-bar{display:flex;gap:var(--space-1);margin-bottom:var(--space-3);border-bottom:1px solid var(--color-gray-200);padding-bottom:var(--space-2)}.channel-filter-btn{padding:4px 12px;font-size:var(--font-size-sm);border:none;border-radius:var(--radius-sm);cursor:pointer;background:transparent;color:var(--color-gray-500)}.channel-filter-btn--active{background:var(--color-gray-800);color:var(--color-white)}.timeline-recording-link{font-size:var(--font-size-xs);margin-right:var(--space-1)}.timeline-body{flex:1}.pagination-info{font-size:var(--font-size-sm);color:var(--color-gray-500);align-self:center}.btn-settings{background:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);cursor:pointer;font-size:var(--font-size-sm)}.text-empty{color:var(--color-gray-400);font-size:var(--font-size-sm)}:root{--tone-cooperative: #5B8BA0;--tone-neutral: #6B7280;--tone-tense: #D4A843;--tone-adversarial: #9B3B3B}.tone-indicator{display:inline-flex;gap:2px;align-items:flex-end;height:16px;vertical-align:middle;cursor:default}.tone-indicator-bar{width:3px;border-radius:1px;background:var(--color-gray-200);transition:background-color .15s}.tone-indicator-bar--1{height:4px}.tone-indicator-bar--2{height:7px}.tone-indicator-bar--3{height:10px}.tone-indicator-bar--4{height:14px}.tone-indicator[data-tone=cooperative] .tone-indicator-bar--1,.tone-indicator[data-tone=cooperative] .tone-indicator-bar--2,.tone-indicator[data-tone=cooperative] .tone-indicator-bar--3,.tone-indicator[data-tone=cooperative] .tone-indicator-bar--4{background:var(--tone-cooperative)}.tone-indicator[data-tone=neutral] .tone-indicator-bar--1,.tone-indicator[data-tone=neutral] .tone-indicator-bar--2,.tone-indicator[data-tone=neutral] .tone-indicator-bar--3{background:var(--tone-neutral)}.tone-indicator[data-tone=tense] .tone-indicator-bar--1,.tone-indicator[data-tone=tense] .tone-indicator-bar--2{background:var(--tone-tense)}.tone-indicator[data-tone=adversarial] .tone-indicator-bar--1{background:var(--tone-adversarial)}.tone-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;line-height:1.4}.tone-badge--cooperative{background:#5b8ba01f;color:var(--tone-cooperative)}.tone-badge--neutral{background:var(--color-gray-100);color:var(--tone-neutral)}.tone-badge--tense{background:#d4a8431f;color:var(--tone-tense)}.tone-badge--adversarial{background:#9b3b3b1f;color:var(--tone-adversarial)}.tone-trend-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4)}.tone-trend-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.tone-trend-header h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-500);margin:0}.tone-trend-summary{display:flex;gap:var(--space-2);align-items:center}.tone-trend-current{font-size:var(--font-size-sm);font-weight:600}.tone-trend-direction{font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-sm);font-weight:500;background:var(--color-gray-100);color:var(--color-gray-500)}.tone-trend-direction--improving{background:#5b8ba01f;color:var(--tone-cooperative)}.tone-trend-direction--stable{background:var(--color-gray-100);color:var(--color-gray-500)}.tone-trend-direction--declining{background:#9b3b3b1f;color:var(--tone-adversarial)}.tone-trend-chart-container{margin-bottom:var(--space-2)}.tone-chart-tooltip{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:2px;box-shadow:var(--shadow-sm)}.tone-chart-tooltip-label{font-size:var(--font-size-xs);color:var(--color-gray-400)}.tone-chart-tooltip-tone{font-size:var(--font-size-sm);font-weight:600}.tone-chart-tooltip-channel{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:capitalize}.tone-trend-gauge{display:flex;gap:3px;height:6px;border-radius:3px;overflow:hidden}.tone-trend-gauge-segment{flex:1;border-radius:3px;min-width:12px}.contact-detail-page{max-width:1100px}.contact-detail-back{display:inline-block;margin-bottom:var(--space-4);color:var(--color-gray-400);font-size:var(--font-size-sm);cursor:pointer;text-decoration:none}@media(hover:hover){.contact-detail-back:hover{color:var(--color-accent)}}.contact-detail-layout{display:grid;grid-template-columns:1fr 280px;gap:var(--space-5)}@media(max-width:800px){.contact-detail-layout{grid-template-columns:1fr}}.contact-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-5);padding:var(--space-5);background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.contact-header-info{display:flex;gap:var(--space-4);align-items:flex-start}.contact-header-avatar{width:56px;height:56px;border-radius:50%;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:600;flex-shrink:0}.contact-header-avatar.org{border-radius:var(--radius-md);background:var(--color-gray-300)}.contact-header-name{font-size:var(--font-size-xl);font-weight:600;color:var(--color-gray-700);display:flex;align-items:center;gap:var(--space-2)}.contact-attention-indicator{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.contact-attention-indicator--high{background:var(--attention-high)}.contact-attention-indicator--medium{background:var(--attention-medium)}.contact-attention-indicator--low{background:var(--attention-low)}.contact-header-meta{font-size:var(--font-size-sm);color:var(--color-gray-400);margin-top:var(--space-1)}.contact-header-links{display:flex;gap:var(--space-3);margin-top:var(--space-2)}.contact-header-links a{font-size:var(--font-size-sm);color:var(--color-accent);text-decoration:none}@media(hover:hover){.contact-header-links a:hover{text-decoration:underline}}.contact-header-tags{display:flex;gap:4px;margin-top:var(--space-2);flex-wrap:wrap}.contact-header-tag{display:inline-block;padding:2px 10px;background:var(--color-gray-100);border-radius:12px;font-size:var(--font-size-xs);color:var(--color-gray-600)}.contact-header-actions{display:flex;flex-direction:column}.contact-quick-actions{display:flex;gap:var(--space-1);margin-bottom:var(--space-2)}.contact-manage-actions{display:flex;gap:var(--space-1)}.contact-edit-btn{padding:var(--space-2) var(--space-3);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.contact-delete-btn{padding:var(--space-2) var(--space-3);background:var(--bg-surface);color:var(--color-danger);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.contact-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-gray-200);margin-bottom:var(--space-4)}.contact-tab{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-400);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}@media(hover:hover){.contact-tab:hover{color:var(--color-gray-600)}}.contact-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.contact-form-section{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.contact-form-section h3{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-3)}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-3)}.contact-form-field{display:flex;flex-direction:column;gap:var(--space-1)}.contact-form-field.full{grid-column:1 / -1}.contact-form-field label{font-size:var(--font-size-xs);color:var(--color-gray-500);font-weight:500}.contact-form-field input,.contact-form-field select,.contact-form-field textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700)}.contact-form-field textarea{min-height:80px;resize:vertical}.contact-form-field input:focus,.contact-form-field select:focus,.contact-form-field textarea:focus{outline:none;border-color:var(--color-accent)}.contact-form-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.contact-save-btn{padding:var(--space-2) var(--space-4);background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer}.contact-cancel-btn{padding:var(--space-2) var(--space-4);background:var(--bg-surface);color:var(--color-gray-600);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.contact-projects-table{width:100%;border-collapse:collapse}.contact-projects-table th,.contact-projects-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100);font-size:var(--font-size-sm)}.contact-projects-table th{font-weight:600;color:var(--color-gray-500);font-size:var(--font-size-xs);text-transform:uppercase}.contact-project-name{color:var(--color-accent);text-decoration:none;font-weight:500}@media(hover:hover){.contact-project-name:hover{text-decoration:underline}}.contact-unlink-btn{padding:2px 8px;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-500);font-size:var(--font-size-xs);cursor:pointer}@media(hover:hover){.contact-unlink-btn:hover{color:var(--color-danger);border-color:var(--color-danger)}}@media(hover:none){.contact-unlink-btn{min-width:44px;min-height:44px}}.contact-sidebar{display:flex;flex-direction:column;gap:var(--space-4)}.contact-sidebar-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4)}.contact-sidebar-card h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-500);margin-bottom:var(--space-3)}.contact-stat-row{display:flex;justify-content:space-between;padding:var(--space-1) 0;font-size:var(--font-size-sm)}.contact-stat-label{color:var(--color-gray-400)}.contact-stat-value{color:var(--color-gray-700);font-weight:500}.contact-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.contact-section-header h3{margin:0}.contact-section-filters{display:flex;gap:var(--space-2);align-items:center}.contact-doc-filter-select{padding:4px 8px;font-size:var(--font-size-sm);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm)}.contact-info-section-label{font-weight:600;margin-bottom:var(--space-1);display:block}.contact-form-row--align-center{align-items:center}.contact-form-field--fixed-label{flex:0 0 120px}.contact-notes-text{white-space:pre-wrap;font-size:var(--font-size-sm);color:var(--color-gray-600)}.contact-muted-text{color:var(--color-gray-400);font-size:var(--font-size-sm)}.contact-error-text{color:var(--color-danger);font-size:var(--font-size-sm)}.contact-task-name{font-weight:500;color:var(--color-gray-700)}.contact-task-status-badge{font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-sm);background:var(--bg-hover);font-weight:600;text-transform:capitalize}.contact-task-priority{text-transform:capitalize;font-size:var(--font-size-sm)}.contact-task-cell-sm{font-size:var(--font-size-sm)}.contact-task-due{font-size:var(--font-size-sm);color:var(--color-gray-500)}.contact-pagination{display:flex;justify-content:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--font-size-sm)}.contact-placeholder{text-align:center;padding:var(--space-8);color:var(--color-gray-400)}.ix-timeline{margin-bottom:var(--space-4)}.ix-timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.ix-timeline-header h3{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em;margin:0}.ix-filter-bar{display:flex;gap:var(--space-1);margin-bottom:var(--space-4);flex-wrap:wrap}.ix-filter-btn{padding:var(--space-1) var(--space-3);border:1px solid var(--color-gray-200);border-radius:14px;background:var(--bg-surface);color:var(--color-gray-500);font-size:var(--font-size-xs);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ix-filter-btn--active{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}@media(hover:hover){.ix-filter-btn:hover:not(.ix-filter-btn--active){border-color:var(--color-accent);color:var(--color-accent)}}.ix-timeline-list{display:flex;flex-direction:column;gap:var(--space-3);border-left:2px solid var(--color-gray-200);padding-left:var(--space-4);margin-left:var(--space-2)}.ix-empty{text-align:center;padding:var(--space-8);color:var(--color-gray-400);font-size:var(--font-size-sm)}.ix-empty p{margin-bottom:var(--space-3)}.ix-card{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);position:relative}.ix-card:before{content:"";position:absolute;left:calc(-1 * var(--space-4) - 7px);top:var(--space-3);width:10px;height:10px;border-radius:50%;background:var(--color-gray-300);border:2px solid var(--bg-surface)}.ix-card-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.ix-card-type{display:flex;align-items:center;gap:var(--space-1);font-weight:600;font-size:var(--font-size-sm)}.ix-card-type-label{font-size:var(--font-size-sm)}.ix-card-direction{font-size:var(--font-size-xs);color:var(--color-gray-400);padding:1px 6px;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm)}.ix-card-time{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-left:auto}.ix-card-subject{font-weight:500;font-size:var(--font-size-sm);color:var(--color-gray-700);margin-bottom:var(--space-1)}.ix-card-notes{font-size:var(--font-size-sm);color:var(--color-gray-600);white-space:pre-wrap;line-height:1.5;margin-bottom:var(--space-2)}.ix-card-expand-btn{background:none;border:none;color:var(--color-accent);font-size:var(--font-size-xs);cursor:pointer;padding:0;margin-left:var(--space-1)}.ix-card-meta{display:flex;gap:var(--space-3);margin-bottom:var(--space-2)}.ix-card-meta-item{font-size:var(--font-size-xs);color:var(--color-gray-400)}.ix-card-facts{background:var(--color-gray-50);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2)}.ix-card-facts-title{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.ix-card-facts-list{margin:0;padding-left:var(--space-4);font-size:var(--font-size-sm);color:var(--color-gray-600)}.ix-card-facts-list li{margin-bottom:2px}.ix-card-actions{display:flex;gap:var(--space-2)}.ix-card-action-btn{padding:2px 8px;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-500);font-size:var(--font-size-xs);cursor:pointer}@media(hover:hover){.ix-card-action-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.ix-card-action-btn--danger:hover{border-color:var(--color-danger);color:var(--color-danger)}}.ix-dialog-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.ix-dialog{background:var(--bg-surface);border-radius:var(--radius-md);width:520px;max-width:95vw;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000026}.ix-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.ix-dialog-header h3{margin:0;font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.ix-dialog-close{background:none;border:none;color:var(--color-gray-400);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm)}@media(hover:hover){.ix-dialog-close:hover{color:var(--color-gray-600)}}.ix-dialog-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.ix-dialog-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.ix-dialog-field{display:flex;flex-direction:column;gap:var(--space-1)}.ix-dialog-field label{font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500)}.ix-dialog-field input,.ix-dialog-field select,.ix-dialog-field textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700)}.ix-dialog-field input:focus,.ix-dialog-field select:focus,.ix-dialog-field textarea:focus{outline:none;border-color:var(--color-accent)}.ix-dialog-field textarea{resize:vertical;min-height:80px}.ix-direction-toggle{display:flex;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden}.ix-direction-btn{flex:1;padding:var(--space-2);border:none;background:var(--bg-surface);color:var(--color-gray-500);font-size:var(--font-size-sm);cursor:pointer;transition:background .15s,color .15s}.ix-direction-btn.active{background:var(--color-accent);color:#fff}.ix-direction-btn+.ix-direction-btn{border-left:1px solid var(--color-gray-200)}.ix-dialog-error{color:var(--color-danger);font-size:var(--font-size-sm);margin:0}.ix-dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-gray-200)}@media(max-width:767px){.contact-detail-layout{grid-template-columns:1fr}.contact-detail-header{flex-direction:column;gap:var(--space-3);padding:var(--space-3)}.contact-header-actions{width:100%}.contact-header-actions button{flex:1}.contact-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.contact-tab{white-space:nowrap;flex-shrink:0}.contact-form-row{grid-template-columns:1fr}.contact-projects-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}.contact-detail-page--mobile .contact-detail-layout{display:block}.contact-detail-page--mobile .contact-detail-header{flex-direction:column;gap:0}.contact-detail-page--mobile .contact-header-actions{display:none}.contact-mobile-actions{display:flex;gap:8px;padding:10px 0 12px}.contact-mobile-action-btn{flex:1;padding:10px 4px;border-radius:8px;border:1px solid var(--color-border, #e5e7eb);background:var(--color-surface, #fff);font-size:13px;font-weight:500;color:var(--color-text-primary, #111827);cursor:pointer;text-align:center;text-decoration:none;display:block;-webkit-tap-highlight-color:transparent}.contact-mobile-action-btn--call{background:#ecfdf5;border-color:#6ee7b7;color:#059669}.contact-mobile-action-btn--email{background:#eff6ff;border-color:#93c5fd;color:#2563eb}.contact-mobile-action-btn:disabled{opacity:.4;cursor:default}.org-settings{max-width:800px;margin:0 auto;padding:1.5rem}.org-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color, #e0e0e0);margin-bottom:1.5rem}.org-tab{padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.9rem;font-weight:500;color:var(--text-muted, #666);cursor:pointer;transition:all .15s ease}.org-tab:hover{color:var(--text-primary, #333)}.org-tab.active{color:var(--color-primary, #1a73e8);border-bottom-color:var(--color-primary, #1a73e8)}.org-tab-panel{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.org-section{margin-bottom:2rem}.org-section-title{font-size:1.1rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary, #333)}.org-divider{border:none;border-top:1px solid var(--border-color, #e0e0e0);margin:2rem 0}.org-form-group{margin-bottom:1rem}.org-form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary, #555);margin-bottom:.35rem}.org-form-group input,.org-form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #d0d0d0);border-radius:4px;font-size:.9rem;background:var(--bg-input, #fff);color:var(--text-primary, #333)}.org-form-group input:focus,.org-form-group select:focus{outline:none;border-color:var(--color-primary, #1a73e8);box-shadow:0 0 0 2px #1a73e826}.org-form-group input:disabled,.org-form-group input[readonly]{background:var(--bg-muted, #f5f5f5);cursor:not-allowed;color:var(--text-muted, #666)}.org-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:600px){.org-form-row{grid-template-columns:1fr}}.org-error{background:var(--bg-error, #fff0f0);border:1px solid var(--border-error, #ffcdd2);color:var(--text-error, #c62828);padding:.5rem .75rem;border-radius:4px;font-size:.85rem;margin-bottom:1rem}.org-success{background:var(--bg-success, #e8f5e9);border:1px solid var(--border-success, #c8e6c9);color:var(--text-success, #2e7d32);padding:.5rem .75rem;border-radius:4px;font-size:.85rem;margin-bottom:1rem}.org-btn-primary{padding:.5rem 1rem;background:var(--color-primary, #1a73e8);color:#fff;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s ease}.org-btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #1557b0)}.org-btn-primary:disabled{opacity:.6;cursor:not-allowed}.org-btn-secondary{padding:.5rem 1rem;background:var(--bg-secondary, #fff);color:var(--text-primary, #333);border:1px solid var(--border-color, #d0d0d0);border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s ease}.org-btn-secondary:hover:not(:disabled){background:var(--bg-hover, #f5f5f5)}.org-btn-danger{padding:.5rem 1rem;background:var(--color-danger, #c62828);color:#fff;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .15s ease}.org-btn-danger:hover:not(:disabled){background:var(--color-danger-dark, #a31f1f)}.org-btn-danger:disabled{opacity:.6;cursor:not-allowed}.org-invite-btn{padding:.5rem 1rem;background:var(--color-primary, #1a73e8);color:#fff;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer}.org-invite-btn:hover{background:var(--color-primary-dark, #1557b0)}.org-invite-form{background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;padding:1.25rem;margin-bottom:1.5rem}.org-invite-form h3{font-size:1rem;font-weight:600;margin:0 0 1rem}.org-invite-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}.org-invite-fields input,.org-invite-fields select{padding:.5rem .6rem;border:1px solid var(--border-color, #d0d0d0);border-radius:4px;font-size:.85rem}.org-invite-actions{display:flex;gap:.5rem;justify-content:flex-end}.org-users-table{width:100%;border-collapse:collapse}.org-users-table th{text-align:left;padding:.6rem .75rem;font-size:.8rem;font-weight:600;color:var(--text-muted, #666);text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--border-color, #e0e0e0)}.org-users-table td{padding:.7rem .75rem;font-size:.9rem;border-bottom:1px solid var(--border-color-light, #f0f0f0);color:var(--text-primary, #333)}.org-users-table select{padding:.3rem .5rem;border:1px solid var(--border-color, #d0d0d0);border-radius:4px;font-size:.85rem}.org-you{color:var(--text-muted, #999);font-size:.8rem}.org-remove-btn{padding:.25rem .6rem;background:none;color:var(--text-error, #c62828);border:1px solid var(--border-error, #ffcdd2);border-radius:4px;font-size:.8rem;cursor:pointer}.org-remove-btn:hover{background:var(--bg-error, #fff0f0)}.org-danger-zone{border:2px solid var(--border-error, #ffcdd2);border-radius:6px;padding:1.5rem;background:var(--bg-error-subtle, #fff8f8)}.org-danger-zone h3{color:var(--text-error, #c62828);font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.org-danger-zone p{color:var(--text-secondary, #555);font-size:.9rem;margin:0 0 1rem}.org-danger-actions{display:flex;gap:1rem;flex-wrap:wrap}.org-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.org-modal{background:var(--bg-primary, #fff);border-radius:8px;padding:1.5rem;max-width:450px;width:90%;box-shadow:0 4px 20px #00000026}.org-modal h3{font-size:1.1rem;font-weight:600;margin:0 0 .75rem;color:var(--text-error, #c62828)}.org-modal p{font-size:.9rem;color:var(--text-secondary, #555);margin:0 0 1rem}.org-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}@media(prefers-color-scheme:dark){.org-tab{color:var(--text-muted, #999)}.org-tab:hover{color:var(--text-primary, #e0e0e0)}.org-danger-zone{background:var(--bg-error-subtle, rgba(198, 40, 40, .1))}}@media(max-width:600px){.org-settings{padding:1rem}.org-tabs{overflow-x:auto}.org-invite-fields{grid-template-columns:1fr}.org-users-table{font-size:.85rem}.org-users-table th,.org-users-table td{padding:.5rem}}.gww-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:var(--space-4)}.gww-modal{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:640px;max-height:90vh;overflow-y:auto;animation:gww-slide-up .2s ease-out}@keyframes gww-slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.gww-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-200)}.gww-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-900);margin:0}.gww-close-btn{background:none;border:none;padding:var(--space-2);cursor:pointer;color:var(--color-gray-500);border-radius:var(--radius-sm);transition:background-color .15s,color .15s}.gww-close-btn:hover{background:var(--color-gray-100);color:var(--color-gray-700)}.gww-step-indicator{display:flex;justify-content:center;gap:var(--space-1);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-gray-100);overflow-x:auto}.gww-step{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);min-width:56px}.gww-step-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:500;background:var(--color-gray-100);color:var(--color-gray-500);transition:all .2s}.gww-step.active .gww-step-circle{background:var(--color-accent);color:#fff;box-shadow:0 0 0 3px var(--color-accent-ring)}.gww-step.done .gww-step-circle{background:var(--color-success);color:#fff}.gww-step-label{font-size:10px;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.5px}.gww-step.active .gww-step-label{color:var(--color-accent);font-weight:500}.gww-step.done .gww-step-label{color:var(--color-success)}.gww-body{padding:var(--space-5)}.gww-loading{text-align:center;padding:var(--space-8);color:var(--color-gray-500)}.gww-step-content h2{font-size:var(--font-size-xl);font-weight:600;color:var(--color-gray-900);margin:0 0 var(--space-2) 0}.gww-step-desc{color:var(--color-gray-600);margin:0 0 var(--space-4) 0;line-height:1.5}.gww-step-note{font-size:var(--font-size-sm);color:var(--color-gray-500);margin:0 0 var(--space-4) 0}.gww-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-4)}.gww-option-card{background:var(--bg-surface);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4);text-align:center;cursor:pointer;transition:all .15s}.gww-option-card:hover{border-color:var(--color-gray-300);background:var(--color-gray-50);z-index:0}.gww-option-card.selected{border-color:var(--color-accent);background:var(--color-accent-light)}.gww-option-icon{font-size:24px;display:block;margin-bottom:var(--space-2)}.gww-option-title{display:block;font-weight:600;color:var(--color-gray-900);margin-bottom:var(--space-1)}.gww-option-desc{display:block;font-size:var(--font-size-sm);color:var(--color-gray-500)}.gww-info-box{background:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.gww-info-box p{margin:0 0 var(--space-2) 0}.gww-info-box ul{margin:0 0 var(--space-2) 0;padding-left:var(--space-5)}.gww-info-box li{margin-bottom:var(--space-1)}.gww-info-box a{color:var(--color-accent);text-decoration:none}.gww-info-box a:hover{text-decoration:underline}.gww-info-note{font-size:var(--font-size-sm);font-style:italic;color:var(--color-gray-600)}.gww-field-group{margin-bottom:var(--space-4)}.gww-field-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);margin-bottom:var(--space-1)}.gww-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--font-size-base);background:var(--bg-surface);transition:border-color .15s,box-shadow .15s}.gww-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.gww-input:disabled{background:var(--color-gray-100);cursor:not-allowed}.gww-textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--font-size-base);font-family:inherit;background:var(--bg-surface);resize:vertical;transition:border-color .15s,box-shadow .15s}.gww-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.gww-field-hint{font-size:var(--font-size-sm);color:var(--color-gray-500);margin:var(--space-1) 0 0 0}.gww-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;border:none}.gww-btn:disabled{opacity:.5;cursor:not-allowed}.gww-btn-primary{background:var(--color-accent);color:#fff}.gww-btn-primary:hover:not(:disabled){background:var(--color-accent-dark)}.gww-btn-secondary{background:var(--color-gray-100);color:var(--color-gray-700)}.gww-btn-secondary:hover:not(:disabled){background:var(--color-gray-200)}.gww-btn-outline{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent)}.gww-btn-outline:hover:not(:disabled){background:var(--color-accent-light)}.gww-btn-google{background:var(--color-accent);color:#fff;padding:var(--space-3) var(--space-5);font-size:var(--font-size-base);margin-bottom:var(--space-4)}.gww-btn-google:hover:not(:disabled){background:var(--color-accent-dark)}.gww-footer{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-gray-100);position:relative;z-index:1}.gww-pitch-box{background:var(--color-accent-light);border:1px solid var(--color-accent);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.gww-pitch-headline{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-900);margin:0 0 var(--space-2) 0}.gww-pitch-box p{margin:0 0 var(--space-2) 0}.gww-feature-list{margin:0 0 var(--space-3) 0;padding-left:var(--space-5)}.gww-feature-list li{margin-bottom:var(--space-1)}.gww-pitch-cost{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0}.gww-checklist{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.gww-checklist h3{font-size:var(--font-size-base);font-weight:600;margin:0 0 var(--space-2) 0}.gww-checklist ol{margin:0;padding-left:var(--space-5)}.gww-checklist li{margin-bottom:var(--space-1)}.gww-pro-tip{background:var(--color-warning-light);border-left:3px solid var(--color-warning);padding:var(--space-3);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.gww-confirm-section{margin-top:var(--space-4)}.gww-checkbox-label{display:flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;margin-bottom:var(--space-2)}.gww-checkbox-label input[type=checkbox]{margin-top:2px;flex-shrink:0}.gww-api-checklist{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-4);margin-top:var(--space-4)}.gww-api-checklist h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);margin:var(--space-3) 0 var(--space-2) 0}.gww-api-item{padding:var(--space-1) 0}.gww-api-item a{color:var(--color-accent);text-decoration:none}.gww-api-item a:hover{text-decoration:underline}.gww-oauth-steps{margin-bottom:var(--space-4)}.gww-oauth-step{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-3)}.gww-oauth-step h4{font-size:var(--font-size-base);font-weight:600;margin:0 0 var(--space-1) 0}.gww-oauth-step p{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0 0 var(--space-2) 0}.gww-oauth-step ul{font-size:var(--font-size-sm);margin:0;padding-left:var(--space-5)}.gww-oauth-step li{margin-bottom:var(--space-1)}.gww-uri-row{display:flex;gap:var(--space-2);align-items:center;margin-top:var(--space-2)}.gww-uri{flex:1;background:var(--color-gray-100);padding:var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);overflow-x:auto}.gww-copy-btn{background:var(--color-gray-200);border:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.gww-copy-btn:hover{background:var(--color-gray-300)}.gww-cred-form{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-4)}.gww-drive-steps{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.gww-drive-step{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-4);transition:opacity .2s}.gww-drive-step.done{background:var(--color-success-light)}.gww-drive-step.disabled{opacity:.5}.gww-drive-step-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.gww-drive-step-icon{width:24px;height:24px;border-radius:50%;background:var(--color-gray-300);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600}.gww-drive-step.done .gww-drive-step-icon{background:var(--color-success)}.gww-drive-step-title{font-weight:500}.gww-sync-section{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-4)}.gww-sync-section h4{margin:0 0 var(--space-2) 0}.gww-sync-section p{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0 0 var(--space-3) 0}.gww-email-config{margin-bottom:var(--space-4)}.gww-test-email-section{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-4)}.gww-test-email-section h4{margin:0 0 var(--space-1) 0}.gww-test-email-section>p{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0 0 var(--space-3) 0}.gww-test-email-row{display:flex;gap:var(--space-2)}.gww-test-email-row .gww-input{flex:1}.gww-success-text{color:var(--color-success);font-size:var(--font-size-sm);margin:var(--space-2) 0 0 0}.gww-error{color:var(--color-danger);font-size:var(--font-size-sm);margin:var(--space-2) 0 0 0}.gww-complete{text-align:center;position:relative;overflow:hidden}.gww-success-icon{width:80px;height:80px;margin:0 auto var(--space-4);color:var(--color-success);animation:gww-success-pop .4s ease-out}@keyframes gww-success-pop{0%{transform:scale(0)}70%{transform:scale(1.1)}to{transform:scale(1)}}.gww-complete-subtitle{color:var(--color-gray-600);margin-bottom:var(--space-5)}.gww-summary{background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--space-4);text-align:left;margin-bottom:var(--space-4)}.gww-summary-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0}.gww-summary-icon{color:var(--color-success);font-weight:700}.gww-whats-next{text-align:left;margin-bottom:var(--space-4)}.gww-whats-next h4{margin:0 0 var(--space-2) 0;font-size:var(--font-size-sm);color:var(--color-gray-700)}.gww-whats-next ul{margin:0;padding-left:var(--space-5);font-size:var(--font-size-sm);color:var(--color-gray-600)}.gww-confetti{position:absolute;top:0;left:0;right:0;height:100%;pointer-events:none;background-image:radial-gradient(circle,var(--color-accent) 2px,transparent 2px),radial-gradient(circle,var(--color-success) 2px,transparent 2px),radial-gradient(circle,var(--color-warning) 2px,transparent 2px);background-size:20px 20px,30px 30px,25px 25px;background-position:0 0,10px 10px,5px 5px;animation:gww-confetti-fall 3s linear forwards;opacity:.8}@keyframes gww-confetti-fall{0%{transform:translateY(-100%);opacity:.8}to{transform:translateY(100%);opacity:0}}.gww-authorize-section{background:var(--color-gray-50);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-top:1.25rem}.settings-page{display:flex;height:100%;background-color:var(--bg-app);overflow:hidden}.settings-nav{width:220px;min-width:220px;background-color:var(--bg-surface);border-right:1px solid var(--border-color);padding:var(--space-3) var(--space-2);overflow-y:auto}.settings-nav-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer;border:none;background:none;width:100%;text-align:left;transition:background-color .12s,color .12s}@media(hover:hover){.settings-nav-item:hover{background-color:var(--bg-hover);color:var(--color-gray-700)}}.settings-nav-item.active{background-color:var(--color-accent);color:var(--color-white)}.settings-content{flex:1;overflow-y:auto;padding:var(--space-6) var(--space-8)}.settings-section{max-width:640px}.settings-section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-1)}.settings-section-desc{font-size:var(--font-size-sm);color:var(--color-gray-400);margin-bottom:var(--space-6)}.settings-group{margin-bottom:var(--space-6)}.settings-group-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-3)}.settings-group-desc{font-size:var(--font-size-sm);color:var(--color-gray-400);margin:calc(-1 * var(--space-2)) 0 var(--space-3)}.settings-field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.settings-field label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600)}.settings-field input,.settings-field select,.settings-field textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-gray-700);background-color:var(--bg-surface);transition:border-color .15s,box-shadow .15s}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #007aff1f}.settings-field input:disabled{background-color:var(--color-gray-50);color:var(--color-gray-400)}.settings-field-hint{font-size:var(--font-size-xs);color:var(--color-gray-400)}.settings-field-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--border-color-light)}.settings-toggle-label{font-size:var(--font-size-sm);color:var(--color-gray-600)}.settings-toggle-desc{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:2px}.settings-toggle{position:relative;width:38px;height:22px;flex-shrink:0}.settings-toggle input{opacity:0;width:0;height:0}.settings-toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-gray-200);border-radius:11px;transition:background-color .2s}.settings-toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:2px;bottom:2px;background-color:var(--color-white);border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000026}.settings-toggle input:checked+.settings-toggle-slider{background-color:var(--color-success)}.settings-toggle input:checked+.settings-toggle-slider:before{transform:translate(16px)}.settings-save-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);background-color:var(--color-accent);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background-color .15s}@media(hover:hover){.settings-save-btn:hover{background-color:var(--color-accent-hover)}}.settings-save-btn:disabled{opacity:.6;cursor:not-allowed}.settings-success{color:var(--color-success-text);background-color:var(--color-success-bg);border:1px solid var(--color-success-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.settings-error{color:var(--color-danger-text);background-color:var(--color-danger-bg);border:1px solid var(--color-danger-border);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.settings-about-row{display:flex;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--border-color-light);font-size:var(--font-size-sm)}.settings-about-label{color:var(--color-gray-500)}.settings-about-value{color:var(--color-gray-700);font-weight:500}.settings-integration-card{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4);background-color:var(--bg-surface)}.settings-integration-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.settings-integration-name{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.settings-integration-status{font-size:var(--font-size-xs);padding:2px var(--space-2);border-radius:var(--radius-sm)}.settings-integration-status.connected{background-color:var(--color-success-bg);color:var(--color-success-text)}.settings-integration-status.disconnected{background-color:var(--color-gray-100);color:var(--color-gray-400)}.theme-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}@media(max-width:540px){.theme-cards{grid-template-columns:1fr}}.theme-card{display:flex;flex-direction:column;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;overflow:hidden;position:relative;text-align:left;transition:border-color .15s,box-shadow .15s;padding:0}@media(hover:hover){.theme-card:hover{border-color:var(--color-gray-300)}}.theme-card.active{border:3px solid var(--primary-color, var(--color-accent))}.theme-card-preview{height:80px;overflow:hidden}[data-preview-theme=light]{--preview-bg: #f5f5f7;--preview-surface: #ffffff;--preview-text: #1d1d1f;--preview-accent: #007aff;--preview-border: rgba(0, 0, 0, .08)}[data-preview-theme=dark]{--preview-bg: #000000;--preview-surface: #1c1c1e;--preview-text: #f5f5f7;--preview-accent: #0a84ff;--preview-border: rgba(255, 255, 255, .12)}[data-preview-theme=high-contrast]{--preview-bg: #ffffff;--preview-surface: #ffffff;--preview-text: #000000;--preview-accent: #0055cc;--preview-border: rgba(0, 0, 0, .08)}.theme-card-preview-bg{height:100%;padding:var(--space-3);display:flex;align-items:flex-end;background-color:var(--preview-bg)}.theme-card-preview-auto{display:flex;height:100%}.theme-card-preview-half{flex:1;padding:var(--space-3);display:flex;align-items:flex-end;background-color:var(--preview-bg)}.theme-card-preview-half.light{border-right:1px solid var(--preview-border, rgba(0, 0, 0, .08))}.theme-card-preview-surface{width:100%;padding:var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--preview-border, rgba(0, 0, 0, .08));background-color:var(--preview-surface);display:flex;flex-direction:column;gap:4px}.theme-card-preview-accent{width:40%;height:6px;border-radius:3px;background-color:var(--preview-accent)}.theme-card-preview-line{width:70%;height:4px;border-radius:2px;background-color:var(--preview-text);opacity:.6}.theme-card-preview-line.short{width:50%;opacity:.4}.theme-card-info{padding:var(--space-3);display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--border-color-light)}.theme-card-name{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);display:flex;align-items:center;gap:var(--space-2)}.theme-card-auto-indicator{font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-400);background:var(--color-gray-100);padding:1px var(--space-2);border-radius:var(--radius-sm)}.theme-card-desc{font-size:var(--font-size-xs);color:var(--color-gray-400)}.theme-card-check{position:absolute;top:var(--space-2);right:var(--space-2);width:24px;height:24px;background:var(--color-accent);color:var(--color-white);border-radius:50%;display:flex;align-items:center;justify-content:center}.settings-credential-field{display:flex;align-items:center;gap:var(--space-3)}.settings-credential-field.editing{gap:var(--space-2)}.settings-credential-field.editing input{flex:1}.settings-credential-status{font-size:var(--font-size-sm);font-weight:500}.settings-credential-status.configured{color:var(--color-success-text)}.settings-credential-status.not-configured{color:var(--color-gray-400)}.settings-credential-success{display:block;margin-top:var(--space-2);color:var(--color-success-text);font-size:var(--font-size-sm)}.settings-credential-error{display:block;margin-top:var(--space-2);color:var(--color-danger);font-size:var(--font-size-sm)}.settings-credential-btn{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-accent);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-3)}@media(hover:hover){.settings-credential-btn:hover{background-color:var(--bg-hover)}}.settings-credential-btn.save{background-color:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.settings-credential-btn.save:hover{background-color:var(--color-accent-hover)}}.settings-loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-gray-400);font-size:var(--font-size-sm)}@media(max-width:767px){.settings-page{flex-direction:column;overflow:visible}.settings-nav{width:100%;min-width:0;border-right:none;border-bottom:1px solid var(--border-color);display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:var(--space-2);gap:var(--space-1)}.settings-nav-item{white-space:nowrap;flex-shrink:0}.settings-content{padding:var(--space-4)}.settings-field-row{grid-template-columns:1fr}.settings-credential-field{flex-direction:column;align-items:flex-start}.settings-integration-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}}.google-oauth-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-surface);color:var(--color-gray-400);font-size:var(--font-size-sm);cursor:not-allowed;opacity:.7;margin-bottom:var(--space-3)}.google-coming-soon-badge{font-size:var(--font-size-xs);background-color:var(--color-gray-100);color:var(--color-gray-500);padding:1px var(--space-2);border-radius:var(--radius-sm);font-weight:500}.google-advanced-section{border-top:1px solid var(--border-color-light);padding-top:var(--space-3)}.google-advanced-toggle{display:flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--color-gray-500);font-size:var(--font-size-sm);cursor:pointer;padding:0}@media(hover:hover){.google-advanced-toggle:hover{color:var(--color-gray-700)}}.google-advanced-chevron{display:flex;transition:transform .15s}.google-advanced-chevron.expanded{transform:rotate(90deg)}.google-cred-form{margin-top:var(--space-3);padding-left:var(--space-4)}.google-cred-instructions{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-3)}.google-cred-instructions a{color:var(--color-accent);text-decoration:none}@media(hover:hover){.google-cred-instructions a:hover{text-decoration:underline}}.google-connection-info{display:flex;gap:var(--space-6);margin-bottom:var(--space-4)}.google-connection-detail{display:flex;flex-direction:column;gap:2px}.google-connection-label{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.04em}.google-connection-value{font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:500}.google-drive-quota{margin-bottom:var(--space-4)}.google-drive-quota-header{display:flex;justify-content:space-between;margin-bottom:var(--space-1)}.google-drive-quota-label{font-size:var(--font-size-sm);color:var(--color-gray-500)}.google-drive-quota-value{font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:500}.google-drive-quota-bar{height:8px;background-color:var(--color-gray-100);border-radius:4px;overflow:hidden}.google-drive-quota-fill{height:100%;border-radius:4px;transition:width .3s}.google-drive-quota-fill.quota-ok{background-color:var(--color-success)}.google-drive-quota-fill.quota-warning{background-color:var(--color-warning)}.google-drive-quota-fill.quota-critical{background-color:var(--color-danger)}.google-drive-quota-pct{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:2px;display:block}.google-disconnect-btn{color:var(--color-danger-text);border-color:var(--color-danger-border)}@media(hover:hover){.google-disconnect-btn:hover{background-color:var(--color-danger-bg)}}.google-disconnect-overlay{position:fixed;inset:0;background-color:var(--overlay-bg, rgba(0, 0, 0, .4));display:flex;align-items:center;justify-content:center;z-index:1000}.google-disconnect-modal{background-color:var(--bg-surface);border-radius:var(--radius-md);padding:var(--space-6);max-width:400px;width:90%;box-shadow:var(--shadow-lg, 0 4px 24px rgba(0, 0, 0, .15))}.google-disconnect-modal h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--space-2)}.google-disconnect-modal p{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--space-4)}.google-disconnect-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.google-disconnect-confirm{background-color:var(--color-danger);color:var(--color-white);border-color:var(--color-danger)}@media(hover:hover){.google-disconnect-confirm:hover{opacity:.9}}.asset-form{display:flex;flex-direction:column;gap:var(--space-4)}.asset-form-error{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-danger-bg, #ffe5e5);color:var(--color-danger);font-size:var(--font-size-sm);border:1px solid var(--color-danger-border, #fcc)}.asset-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-group--full{grid-column:1 / -1}.asset-form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-gray-100)}@media(max-width:640px){.asset-form-grid{grid-template-columns:1fr}}.maintenance-section{margin-top:var(--space-2)}.maintenance-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:768px){.maintenance-panels{grid-template-columns:1fr}}.maintenance-schedule-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.maintenance-schedule-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-gray-100);font-size:var(--font-size-sm)}.maintenance-schedule-item.overdue{border-color:var(--color-danger-border, #fcc);background:var(--color-danger-bg, #fff5f5)}.maintenance-schedule-item.due-soon{border-color:var(--color-warning-border, #fde68a);background:var(--color-warning-bg, #fffbeb)}.maintenance-schedule-task{flex:1;display:flex;flex-direction:column;gap:2px}.maintenance-task-name{font-weight:500;color:var(--color-gray-700)}.maintenance-schedule-dates{display:flex;flex-direction:column;gap:2px;text-align:right}.maintenance-alert{font-size:var(--font-size-xs);font-weight:600;padding:2px var(--space-2);border-radius:var(--radius-sm);white-space:nowrap}.overdue-badge{background:var(--color-danger-bg, #fff5f5);color:var(--color-danger)}.due-soon-badge{background:var(--color-warning-bg, #fffbeb);color:var(--color-warning)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.maintenance-log-form{padding:var(--space-4);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);margin-bottom:var(--space-4);background:var(--color-gray-50)}.maintenance-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media(max-width:640px){.maintenance-form-grid{grid-template-columns:1fr}}.maintenance-form-actions{display:flex;justify-content:flex-end;margin-top:var(--space-3)}.maintenance-history-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.maintenance-history-item{padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-gray-100);font-size:var(--font-size-sm)}.maintenance-history-main{display:flex;justify-content:space-between;align-items:center}.maintenance-history-task{font-weight:500;color:var(--color-gray-700)}.maintenance-history-date{font-size:var(--font-size-xs);color:var(--color-gray-400)}.maintenance-history-meta{display:flex;gap:var(--space-3);margin-top:var(--space-1)}.maintenance-history-cost{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-600)}.maintenance-history-notes{margin-top:var(--space-1);font-size:var(--font-size-xs);color:var(--color-gray-500);line-height:1.4}.mt-2,.depreciation-section{margin-top:var(--space-2)}.depreciation-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:768px){.depreciation-panels{grid-template-columns:1fr}}.depreciation-summary{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-top:var(--space-3)}.depreciation-stat{display:flex;flex-direction:column;gap:2px}.depreciation-stat-label{font-size:var(--font-size-xs);color:var(--color-gray-500);font-weight:500}.depreciation-stat-value{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700)}.capitalize{text-transform:capitalize}.depreciation-chart{margin-top:var(--space-3)}.depreciation-bars{display:flex;align-items:flex-end;gap:var(--space-2);height:200px;padding-bottom:var(--space-2);border-bottom:1px solid var(--color-gray-200)}.depreciation-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-1);height:100%}.depreciation-bar-container{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.depreciation-bar{width:80%;max-width:40px;background:var(--color-accent-light, #e5f1ff);border:1px solid var(--color-accent, #007AFF);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:height .3s ease;min-height:4px}.depreciation-bar.current-year{background:var(--color-accent, #007AFF)}.depreciation-bar-label{font-size:10px;color:var(--color-gray-400);writing-mode:vertical-lr;text-orientation:mixed;transform:rotate(180deg);white-space:nowrap}@media(min-width:640px){.depreciation-bar-label{writing-mode:horizontal-tb;transform:none}}.depreciation-chart-legend{text-align:center;margin-top:var(--space-2)}.depreciation-table-wrapper{overflow-x:auto;margin-top:var(--space-3)}.depreciation-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.depreciation-table th,.depreciation-table td{padding:var(--space-2) var(--space-4);text-align:right;border-bottom:1px solid var(--color-gray-100)}.depreciation-table th:first-child,.depreciation-table td:first-child{text-align:left}.depreciation-table th{font-weight:600;color:var(--color-gray-600);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;background:var(--color-gray-50)}.depreciation-table td{font-variant-numeric:tabular-nums}.current-year-row{background:var(--color-accent-light, #e5f1ff);font-weight:600}.mt-4{margin-top:var(--space-4)}.cal-sidebar{width:220px;min-width:220px;border-left:1px solid var(--border-color);background:var(--bg-surface);display:flex;flex-direction:column;padding:var(--space-4) var(--space-3);gap:var(--space-5);overflow-y:auto;font-family:var(--font-family)}.cal-sidebar-section{display:flex;flex-direction:column;gap:var(--space-2)}.cal-sidebar-section-title{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.04em;margin:0}.cal-sidebar-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-1) 0}.cal-sidebar-row-name{font-size:var(--font-size-sm);color:var(--color-gray-700)}.cal-sidebar-cal-row{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);border-radius:var(--radius-sm);transition:background .15s ease}.cal-sidebar-cal-row:hover{background:var(--bg-hover)}.cal-sidebar-cal-main{display:flex;align-items:flex-start;gap:var(--space-2)}.cal-sidebar-color-swatch{width:12px;height:12px;min-width:12px;border-radius:50%;margin-top:2px}.cal-sidebar-cal-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.cal-sidebar-cal-name-row{display:flex;align-items:center;gap:var(--space-1);min-width:0}.cal-sidebar-cal-name{font-size:var(--font-size-sm);color:var(--color-gray-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-sidebar-provider-badge{font-size:var(--font-size-xs);color:var(--color-gray-400);white-space:nowrap;flex-shrink:0}.cal-sidebar-last-sync{font-size:var(--font-size-xs);color:var(--color-gray-400)}.cal-sidebar-reauth{font-size:var(--font-size-xs);color:var(--color-danger);font-weight:500}.cal-sidebar-muted{font-size:var(--font-size-sm);color:var(--color-gray-400);margin:0;padding:var(--space-1) 0}.cal-sidebar-cal-actions{display:flex;gap:var(--space-2);padding-left:20px}.cal-sidebar-action-btn{font-size:var(--font-size-xs);color:var(--color-accent);background:none;border:none;padding:0;cursor:pointer;font-family:var(--font-family)}.cal-sidebar-action-btn:hover{color:var(--color-accent-hover)}.cal-sidebar-action-btn:disabled{opacity:.5;cursor:not-allowed}.cal-sidebar-action-btn--danger{color:var(--color-danger)}.cal-sidebar-action-btn--danger:hover{color:var(--color-danger);opacity:.8}.cal-sidebar-toggle{position:relative;display:inline-flex;align-items:center;cursor:pointer;flex-shrink:0}.cal-sidebar-toggle input{position:absolute;opacity:0;width:0;height:0}.cal-sidebar-toggle-slider{width:36px;height:20px;background:var(--color-gray-300);border-radius:10px;position:relative;transition:background .2s ease}.cal-sidebar-toggle-slider:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--bg-surface);border-radius:50%;transition:transform .2s ease;box-shadow:var(--shadow-sm)}.cal-sidebar-toggle input:checked+.cal-sidebar-toggle-slider{background:var(--color-accent)}.cal-sidebar-toggle input:checked+.cal-sidebar-toggle-slider:after{transform:translate(16px)}.cal-sidebar-actions{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2)}.cal-sidebar-link-btn{font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-accent);background:var(--color-accent-light);border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);cursor:pointer;text-align:center;font-weight:500;transition:background .15s ease}.cal-sidebar-link-btn:hover{background:var(--bg-selected)}.cal-sidebar-link-btn--disabled{color:var(--color-gray-400);background:var(--color-gray-50);cursor:not-allowed}.cal-sidebar-link-btn--disabled:hover{background:var(--color-gray-50)}.cal-sidebar-link-btn--secondary{color:var(--color-gray-600);background:var(--color-gray-50)}.cal-sidebar-link-btn--secondary:hover{background:var(--color-gray-100)}.cal-sidebar-ical-form{display:flex;flex-direction:column;gap:var(--space-2)}.cal-sidebar-ical-input{width:100%;padding:var(--space-2);font-size:var(--font-size-sm);font-family:var(--font-family);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700)}.cal-sidebar-ical-input:focus{outline:none;border-color:var(--color-accent)}.cal-sidebar-ical-actions{display:flex;gap:var(--space-2)}.cal-sidebar-ical-btn{flex:1;padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:500;color:var(--color-white);background:var(--color-accent);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.cal-sidebar-ical-btn:hover:not(:disabled){background:var(--color-accent-hover)}.cal-sidebar-ical-btn:disabled{opacity:.5;cursor:not-allowed}.cal-sidebar-ical-btn--cancel{color:var(--color-gray-600);background:var(--color-gray-100)}.cal-sidebar-ical-btn--cancel:hover{background:var(--color-gray-200)}.cal-sidebar-ical-error{margin:0;font-size:var(--font-size-xs);color:var(--color-danger)}.cal-sidebar-row-name--filter{font-size:var(--font-size-xs);color:var(--color-gray-500)}.cal-sidebar-rename-input{font-size:var(--text-sm);padding:2px 4px;border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);width:120px;outline:none}.cal-sidebar-color-picker-wrap{position:relative}.cal-sidebar-color-swatch--clickable{cursor:pointer}.cal-sidebar-color-swatch--clickable:hover{transform:scale(1.3)}.cal-sidebar-color-popup{position:absolute;top:100%;left:-4px;margin-top:4px;display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:var(--radius-md);z-index:20;width:140px;box-shadow:0 2px 8px #00000026}.cal-sidebar-color-option{width:20px;height:20px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:transform .1s}.cal-sidebar-color-option:hover{transform:scale(1.2)}.cal-sidebar-color-option--active{border-color:var(--text-primary)}.qc-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.qc-modal{background:var(--bg-surface);border:1px solid var(--border-primary);border-radius:var(--radius-lg);width:400px;max-width:90vw}.qc-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px 12px;border-bottom:1px solid var(--border-primary)}.qc-header h3{margin:0;font-size:var(--text-lg)}.qc-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary);padding:4px 8px}.qc-body{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.qc-field{display:flex;flex-direction:column;gap:4px}.qc-field label{font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.qc-value{font-size:var(--text-sm);color:var(--text-primary)}.qc-select{padding:8px 10px;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-sm)}.qc-error{color:var(--color-danger);font-size:var(--text-sm);margin:0}.qc-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--border-primary)}.qc-btn{padding:8px 16px;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;cursor:pointer;border:1px solid var(--border-primary)}.qc-btn--cancel{background:var(--bg-surface);color:var(--text-primary)}.qc-btn--create{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.qc-btn--create:hover{opacity:.9}.qc-btn:disabled{opacity:.5;cursor:not-allowed}.cal-container{display:flex;flex-direction:column;gap:var(--space-3)}.cal-top-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.cal-loading{text-align:center;padding:var(--space-8);color:var(--color-gray-400);font-size:var(--font-size-sm)}.cal-error{text-align:center;padding:var(--space-8);color:var(--color-danger);font-size:var(--font-size-sm)}.cal-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.cal-toolbar-nav{display:flex;align-items:center;gap:var(--space-1)}.cal-toolbar-btn{padding:var(--space-1) var(--space-2);font-family:Inter,-apple-system,sans-serif;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;line-height:1.4;transition:background-color .15s}@media(hover:hover){.cal-toolbar-btn:hover{background:var(--color-gray-50)}}.cal-toolbar-today{font-size:var(--font-size-xs)}.cal-toolbar-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0;white-space:nowrap}.cal-toolbar-views{display:flex;gap:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.cal-toolbar-view-btn{padding:var(--space-1) var(--space-2);font-family:Inter,-apple-system,sans-serif;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);background:var(--bg-surface);border:none;border-right:1px solid var(--border-color);cursor:pointer;transition:background-color .15s,color .15s}.cal-toolbar-view-btn:last-child{border-right:none}.cal-toolbar-view-btn--active{color:var(--color-gray-700);background:var(--color-gray-100);font-weight:600}@media(hover:hover){.cal-toolbar-view-btn:not(.cal-toolbar-view-btn--active):hover{background:var(--color-gray-50)}}.cal-month-header{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--border-color)}.cal-month-day-name{padding:var(--space-2);text-align:center;font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.cal-month-grid{border:1px solid var(--border-color);border-top:none}.cal-month-week{display:grid;grid-template-columns:repeat(7,1fr)}.cal-month-cell{min-height:100px;border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:var(--space-1);cursor:pointer;transition:background-color .1s}.cal-month-cell:last-child{border-right:none}@media(hover:hover){.cal-month-cell:hover{background:var(--color-gray-50)}}.cal-month-cell--outside{background:var(--color-gray-50)}.cal-month-cell--outside .cal-month-date{color:var(--color-gray-300)}.cal-month-cell--today .cal-month-date{color:var(--color-white);background:var(--color-accent);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.cal-month-date{display:inline-block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600);margin-bottom:var(--space-1)}.cal-month-activities{display:flex;flex-direction:column;gap:1px}.cal-month-more{font-size:11px;color:var(--color-accent);background:none;border:none;cursor:pointer;text-align:left;padding:1px 4px;font-weight:500}@media(hover:hover){.cal-month-more:hover{text-decoration:underline}}.cal-week{overflow-y:auto;max-height:calc(100vh - 220px);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.cal-week-header{display:grid;grid-template-columns:var(--cal-time-gutter-width, 60px) repeat(7,1fr);border-bottom:1px solid var(--border-color);position:sticky;top:0;background:var(--bg-surface);z-index:10}.cal-week-gutter-header{padding:var(--space-2);font-size:var(--font-size-xs);color:var(--color-gray-400);text-align:center;border-right:1px solid var(--border-color)}.cal-week-day-header{padding:var(--space-2);text-align:center;border-right:1px solid var(--border-color)}.cal-week-day-header:last-child{border-right:none}.cal-week-day-header--today{background:color-mix(in srgb,var(--color-accent) 5%,transparent)}.cal-week-day-name{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-400);text-transform:uppercase}.cal-week-day-num{display:block;font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.cal-week-day-header--today .cal-week-day-num{color:var(--color-accent)}.cal-week-allday{display:grid;grid-template-columns:var(--cal-time-gutter-width, 60px) repeat(7,1fr);border-bottom:1px solid var(--border-color);min-height:32px}.cal-week-allday-cell{padding:2px;border-right:1px solid var(--border-color);display:flex;flex-direction:column;gap:1px}.cal-week-allday-cell:last-child{border-right:none}.cal-week-body{display:grid;grid-template-columns:var(--cal-time-gutter-width, 60px) repeat(7,1fr);position:relative}.cal-week-gutter{border-right:1px solid var(--border-color)}.cal-week-gutter-label{font-size:11px;color:var(--color-gray-400);text-align:right;padding-right:var(--space-2);position:relative;top:-6px;-webkit-user-select:none;user-select:none}.cal-week-day-col{position:relative;border-right:1px solid var(--border-color);cursor:crosshair}.cal-week-day-col:last-child{border-right:none}.cal-week-day-col--today{background:color-mix(in srgb,var(--color-accent) 3%,transparent)}.cal-week-hour-line{position:absolute;left:0;right:0;height:1px;background:var(--border-color);pointer-events:none}.cal-week-now-line{position:absolute;left:-4px;right:0;height:2px;background:var(--color-danger);z-index:5;pointer-events:none}.cal-week-now-line:before{content:"";position:absolute;left:0;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--color-danger)}.cal-week-drag-ghost{position:absolute;left:2px;right:2px;background:color-mix(in srgb,var(--color-accent) 15%,transparent);border:1px dashed var(--color-accent);border-radius:var(--radius-sm);pointer-events:none;z-index:4}.cal-day{overflow-y:auto;max-height:calc(100vh - 220px);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.cal-day-allday{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color)}.cal-day-allday-label{font-size:var(--font-size-xs);color:var(--color-gray-400);font-weight:500;white-space:nowrap;min-width:var(--cal-time-gutter-width, 60px)}.cal-day-allday-items{display:flex;gap:var(--space-1);flex-wrap:wrap}.cal-day-body{display:grid;grid-template-columns:var(--cal-time-gutter-width, 60px) 1fr;position:relative}.cal-day-col{position:relative;cursor:crosshair}.cal-block{padding:2px 6px;border-radius:3px;font-size:11px;line-height:1.3;cursor:pointer;overflow:hidden;border-left:3px solid transparent;transition:opacity .15s;-webkit-user-select:none;user-select:none;z-index:3}.cal-block--work{background:var(--color-activity-work-bg);border-left-color:var(--color-activity-work);color:var(--color-activity-work)}.cal-block--meeting{background:var(--color-activity-meeting-bg);border-left-color:var(--color-activity-meeting);color:var(--color-activity-meeting)}.cal-block--call{background:var(--color-activity-call-bg);border-left-color:var(--color-activity-call);color:var(--color-activity-call)}.cal-block--follow-up{background:var(--color-activity-follow-up-bg);border-left-color:var(--color-activity-follow-up);color:var(--color-activity-follow-up)}.cal-block--inspection{background:var(--color-activity-inspection-bg);border-left-color:var(--color-activity-inspection);color:var(--color-activity-inspection)}.cal-block--delivery{background:var(--color-activity-delivery-bg);border-left-color:var(--color-activity-delivery);color:var(--color-activity-delivery)}.cal-block--deadline{background:var(--color-activity-deadline-bg);border-left-color:var(--color-activity-deadline);color:var(--color-activity-deadline)}.cal-block--travel{background:var(--color-activity-travel-bg);border-left-color:var(--color-activity-travel);color:var(--color-activity-travel)}.cal-block--review{background:var(--color-activity-review-bg);border-left-color:var(--color-activity-review);color:var(--color-activity-review)}.cal-block--training{background:var(--color-activity-training-bg);border-left-color:var(--color-activity-training);color:var(--color-activity-training)}.cal-block--site-visit{background:var(--color-activity-site-visit-bg);border-left-color:var(--color-activity-site-visit);color:var(--color-activity-site-visit)}.cal-block--admin{background:var(--color-activity-admin-bg);border-left-color:var(--color-activity-admin);color:var(--color-activity-admin)}.cal-block--in-progress{animation:cal-pulse 2s ease-in-out infinite}@keyframes cal-pulse{0%,to{opacity:1}50%{opacity:.7}}.cal-block--completed{opacity:.5}.cal-block--skipped,.cal-block--cancelled{opacity:.4;text-decoration:line-through}.cal-block--compact{white-space:nowrap;text-overflow:ellipsis;padding:1px 4px;font-size:11px}.cal-block--personal{border-left-width:4px}.cal-block-you-badge{display:inline-block;margin-left:var(--space-1);padding:0 4px;font-size:9px;font-weight:600;color:var(--color-white);background:var(--color-accent);border-radius:3px;vertical-align:middle;text-transform:uppercase;letter-spacing:.3px}@media(hover:hover){.cal-block:hover{filter:brightness(.95)}}.cal-block-title{font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis}.cal-block-time{display:block;font-size:10px;opacity:.8}.cal-block-location{display:block;font-size:10px;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-context-menu{position:fixed;z-index:1000;background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-1) 0;min-width:180px}.cal-context-header{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.cal-context-status{font-size:var(--font-size-xs);font-weight:400;color:var(--color-gray-400)}.cal-context-divider{height:1px;background:var(--color-gray-100);margin:var(--space-1) 0}.cal-context-item{display:block;width:100%;text-align:left;padding:var(--space-2) var(--space-3);border:none;background:none;font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;color:var(--color-gray-700);cursor:pointer;transition:background-color .1s}@media(hover:hover){.cal-context-item:hover{background-color:var(--color-gray-50)}}.cal-context-item--danger{color:var(--color-danger)}.cal-user-selector{display:flex;align-items:center;gap:var(--space-1);position:relative;flex-wrap:wrap}.cal-user-chip{display:inline-flex;align-items:center;gap:2px;padding:0;border:2px solid;border-radius:20px;font-size:var(--font-size-xs);background:var(--bg-surface)}.cal-user-chip--hidden{opacity:.4}.cal-user-chip-toggle{padding:2px 6px;background:none;border:none;cursor:pointer;font-size:11px;font-weight:600;color:var(--color-gray-600);font-family:Inter,-apple-system,sans-serif}.cal-user-chip-remove{padding:2px 4px;background:none;border:none;cursor:pointer;font-size:11px;color:var(--color-gray-400);font-family:Inter,-apple-system,sans-serif}@media(hover:hover){.cal-user-chip-remove:hover{color:var(--color-danger)}}.cal-user-add-btn{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:500;color:var(--color-accent);background:none;border:1px dashed var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;font-family:Inter,-apple-system,sans-serif;white-space:nowrap;transition:background-color .15s}@media(hover:hover){.cal-user-add-btn:hover{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}}.cal-user-dropdown{position:absolute;top:100%;right:0;width:240px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);z-index:100;overflow:hidden;margin-top:var(--space-1)}.cal-user-search{width:100%;padding:var(--space-2) var(--space-3);border:none;border-bottom:1px solid var(--border-color);font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;outline:none;background:var(--bg-surface);color:var(--color-gray-700)}.cal-user-list{max-height:200px;overflow-y:auto}.cal-user-list-empty{padding:var(--space-3);text-align:center;font-size:var(--font-size-xs);color:var(--color-gray-400)}.cal-user-option{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);background:none;border:none;cursor:pointer;text-align:left;font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;color:var(--color-gray-700);transition:background-color .1s}@media(hover:hover){.cal-user-option:hover{background:var(--color-gray-50)}}.cal-user-avatar{width:24px;height:24px;border-radius:50%;background:var(--color-gray-100);color:var(--color-gray-500);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;flex-shrink:0}@media(max-width:767px){.cal-top-bar{flex-direction:column;align-items:stretch}.cal-toolbar{flex-wrap:wrap;justify-content:center}.cal-toolbar-label{font-size:var(--font-size-sm);text-align:center;flex-basis:100%;order:-1;margin-bottom:var(--space-1)}.cal-month-cell{min-height:48px;padding:2px}.cal-month-day-name{font-size:10px}.cal-month-activities .cal-block{height:4px;width:4px;border-radius:50%;padding:0;min-width:4px;border-left:none}.cal-month-activities .cal-block-title,.cal-month-activities .cal-block-time,.cal-month-activities .cal-block-location{display:none}.cal-month-activities{flex-direction:row;flex-wrap:wrap;gap:2px;justify-content:center}.cal-month-more{font-size:9px}.cal-week-header,.cal-week-body,.cal-week-allday{grid-template-columns:var(--cal-time-gutter-width, 50px) repeat(7,minmax(100px,1fr));overflow-x:auto}.cal-week{overflow:auto}.cal-day-body{grid-template-columns:45px 1fr}.cal-user-selector{justify-content:center}}.cal-block--external{border-left-style:dashed!important;cursor:pointer}.cal-ext-provider{display:inline-block;margin-left:var(--space-1);font-size:9px;font-weight:600;color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px;vertical-align:middle}.ext-event-detail-overlay{position:fixed;inset:0;background:#0000004d;z-index:1000;display:flex;align-items:center;justify-content:center}.ext-event-detail{background:var(--bg-surface);border-radius:var(--radius-lg);width:440px;max-width:90vw;max-height:80vh;overflow-y:auto;display:flex;flex-direction:column}.ext-event-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3);border-bottom:1px solid var(--border-color)}.ext-event-detail-title{margin:0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700);line-height:1.3}.ext-event-detail-provider{display:block;font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:var(--space-1)}.ext-event-detail-close{padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-500);background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;font-family:Inter,-apple-system,sans-serif;white-space:nowrap;flex-shrink:0}@media(hover:hover){.ext-event-detail-close:hover{background:var(--color-gray-50)}}.ext-event-detail-body{padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.ext-event-detail-row{display:flex;gap:var(--space-3)}.ext-event-detail-row--block{flex-direction:column;gap:var(--space-1)}.ext-event-detail-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-400);min-width:80px;flex-shrink:0}.ext-event-detail-value{font-size:var(--font-size-sm);color:var(--color-gray-700)}.ext-event-detail-status{text-transform:capitalize}.ext-event-detail-desc{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.5;white-space:pre-wrap;max-height:200px;overflow-y:auto}.ext-event-detail-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-color)}.ext-event-detail-footer-actions{display:flex;align-items:center;gap:var(--space-3)}.ext-event-detail-create-btn{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:500;font-family:Inter,-apple-system,sans-serif;color:var(--color-white);background:var(--color-accent);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.ext-event-detail-create-btn:hover{background:var(--color-accent-hover)}.ext-event-detail-readonly{font-size:var(--font-size-xs);color:var(--color-gray-400);font-style:italic}.ext-event-detail-link{font-size:var(--font-size-sm);font-weight:500;color:var(--color-accent);text-decoration:none}@media(hover:hover){.ext-event-detail-link:hover{text-decoration:underline}}.cal-layout{display:flex;gap:0}.cal-layout-main{flex:1;min-width:0}.cal-layout-sidebar{flex-shrink:0}.cal-block-add-btn{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:none;background:var(--color-accent);color:#fff;font-size:13px;font-weight:700;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s;display:flex;align-items:center;justify-content:center;padding:0;z-index:5}.cal-block:hover .cal-block-add-btn{opacity:1}.cal-block-add-btn:hover{background:var(--color-accent-hover, var(--color-accent));transform:scale(1.15)}@media(max-width:767px){.cal-layout-sidebar{display:none}.cal-layout{display:block}.cal-day-grid{width:100%}}.wp-container{display:flex;flex-direction:column;gap:var(--space-3)}.wp-toolbar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.wp-toolbar-nav{display:flex;align-items:center;gap:var(--space-1)}.wp-toolbar-btn{padding:var(--space-1) var(--space-2);font-family:Inter,-apple-system,sans-serif;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;line-height:1.4;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s}@media(hover:hover){.wp-toolbar-btn:hover{background:var(--color-gray-50)}}.wp-toolbar-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0;white-space:nowrap}.wp-toolbar-views{display:flex;gap:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;margin-left:auto}.wp-view-btn{padding:var(--space-1) var(--space-3);font-family:Inter,-apple-system,sans-serif;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-500);background:var(--bg-surface);border:none;border-right:1px solid var(--border-color);cursor:pointer;min-height:44px;transition:background-color .15s,color .15s}.wp-view-btn:last-child{border-right:none}.wp-view-btn--active{color:var(--color-gray-700);background:var(--color-gray-100);font-weight:600}@media(hover:hover){.wp-view-btn:not(.wp-view-btn--active):hover{background:var(--color-gray-50)}}.wp-stats{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-600);flex-wrap:wrap}.wp-stats-label{font-weight:600;color:var(--color-gray-700)}.wp-stats-item{white-space:nowrap}.wp-stats-num{font-weight:600}.wp-loading{text-align:center;padding:var(--space-8);color:var(--color-gray-400);font-size:var(--font-size-sm)}.wp-error{text-align:center;padding:var(--space-8);color:var(--color-danger);font-size:var(--font-size-sm)}.wp-weekly{display:flex;gap:var(--space-3)}.wp-weekly-lanes{flex:1;display:grid;grid-template-columns:repeat(7,1fr);gap:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.wp-day-lane{border-right:1px solid var(--border-color);min-height:500px;display:flex;flex-direction:column;transition:background-color .15s}.wp-day-lane:last-child{border-right:none}.wp-day-lane--today{background:color-mix(in srgb,var(--color-accent) 3%,transparent)}.wp-day-lane--drag-over{background:color-mix(in srgb,var(--color-accent) 8%,transparent)}.wp-day-header{padding:var(--space-2);border-bottom:1px solid var(--border-color);text-align:center;position:sticky;top:0;background:var(--bg-surface);z-index:2}.wp-day-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-1)}.wp-day-info{flex:1;text-align:center}.wp-day-add-btn{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-accent);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s}@media(hover:hover){.wp-day-add-btn:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent);border-color:var(--color-accent)}}.wp-day-lane--today .wp-day-header{background:color-mix(in srgb,var(--color-accent) 5%,transparent)}.wp-day-name{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.wp-day-num{display:block;font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.wp-day-lane--today .wp-day-num{color:var(--color-accent)}.wp-day-completion{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:2px}.wp-day-progress{height:3px;background:var(--color-gray-100);border-radius:2px;margin:var(--space-1) var(--space-2) 0;overflow:hidden}.wp-day-progress-fill{height:100%;background:var(--color-success);border-radius:2px;transition:width .3s ease}.wp-day-cards{flex:1;padding:var(--space-1);display:flex;flex-direction:column;gap:var(--space-1);min-height:60px}.wp-day-empty{flex:1;display:flex;align-items:center;justify-content:center;border:1px dashed var(--color-gray-200);border-radius:var(--radius-sm);margin:var(--space-1);color:var(--color-gray-300);font-size:var(--font-size-xs);min-height:60px}.wp-day-empty--clickable{cursor:pointer;transition:border-color .15s,color .15s,background-color .15s}@media(hover:hover){.wp-day-empty--clickable:hover{border-color:var(--color-accent);color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 5%,transparent)}}.wp-card{padding:var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-color);border-left:3px solid transparent;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s;position:relative}.wp-card--dragging{opacity:.5}.wp-card--ghost{opacity:.7;transform:scale(1.02)}.wp-card--work{border-left-color:var(--color-activity-work)}.wp-card--meeting{border-left-color:var(--color-activity-meeting)}.wp-card--call{border-left-color:var(--color-activity-call)}.wp-card--follow-up{border-left-color:var(--color-activity-follow-up)}.wp-card--inspection{border-left-color:var(--color-activity-inspection)}.wp-card--delivery{border-left-color:var(--color-activity-delivery)}.wp-card--deadline{border-left-color:var(--color-activity-deadline)}.wp-card--travel{border-left-color:var(--color-activity-travel)}.wp-card--review{border-left-color:var(--color-activity-review)}.wp-card--training{border-left-color:var(--color-activity-training)}.wp-card--site-visit{border-left-color:var(--color-activity-site-visit)}.wp-card--admin{border-left-color:var(--color-activity-admin)}.wp-card--completed{opacity:.55}.wp-card--skipped,.wp-card--cancelled{opacity:.4}.wp-card--skipped .wp-card-title,.wp-card--cancelled .wp-card-title{text-decoration:line-through}.wp-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-1)}.wp-card-status{flex-shrink:0;font-size:var(--font-size-sm);line-height:1;cursor:pointer;min-width:20px;min-height:20px;display:flex;align-items:center;justify-content:center}.wp-card-title{font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-700);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1}.wp-card-badge{flex-shrink:0;font-size:10px;font-weight:500;padding:1px 4px;border-radius:3px;white-space:nowrap}.wp-card-time{font-size:10px;color:var(--color-gray-400);margin-top:2px}.wp-card-subtitle{font-size:10px;color:var(--color-gray-400);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-unplanned{width:220px;flex-shrink:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;max-height:500px}.wp-unplanned-header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.wp-unplanned-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-700);margin:0}.wp-unplanned-actions{display:flex;align-items:center;gap:var(--space-2)}.wp-unplanned-count{font-size:var(--font-size-xs);color:var(--color-gray-400)}.wp-unplanned-add-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-accent);font-size:var(--font-size-md);font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s}@media(hover:hover){.wp-unplanned-add-btn:hover{background:color-mix(in srgb,var(--color-accent) 10%,transparent);border-color:var(--color-accent)}}.wp-unplanned-search{width:100%;padding:var(--space-2) var(--space-3);border:none;border-bottom:1px solid var(--border-color);font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;outline:none;background:var(--bg-surface);color:var(--color-gray-700)}.wp-unplanned-list{flex:1;overflow-y:auto;padding:var(--space-1);display:flex;flex-direction:column;gap:var(--space-1)}.wp-unplanned-empty{padding:var(--space-4);text-align:center;font-size:var(--font-size-xs);color:var(--color-gray-400)}.wp-daily{display:flex;flex-direction:column;gap:var(--space-3)}.wp-day-tabs{display:flex;gap:var(--space-1);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:var(--space-1) 0}.wp-day-tabs::-webkit-scrollbar{display:none}.wp-day-tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:pointer;min-width:56px;min-height:44px;font-family:Inter,-apple-system,sans-serif;transition:background-color .15s,border-color .15s;flex-shrink:0}.wp-day-tab--active{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 5%,transparent)}.wp-day-tab--today{border-color:var(--color-accent)}@media(hover:hover){.wp-day-tab:not(.wp-day-tab--active):hover{background:var(--color-gray-50)}}.wp-day-tab-name{font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-400);text-transform:uppercase}.wp-day-tab--active .wp-day-tab-name{color:var(--color-accent)}.wp-day-tab-num{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.wp-day-tab--active .wp-day-tab-num{color:var(--color-accent)}.wp-day-tab-dot{width:6px;height:6px;border-radius:50%;background:var(--color-gray-200)}.wp-day-tab-dot--complete{background:var(--color-success)}.wp-day-tab-dot--partial{background:var(--color-warning)}.wp-day-tab-dot--none{background:transparent}.wp-daily-date{text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-500);font-weight:500}.wp-daily-cards{display:flex;flex-direction:column;gap:var(--space-2)}.wp-daily-empty{text-align:center;padding:var(--space-8);color:var(--color-gray-400);font-size:var(--font-size-sm);border:1px dashed var(--color-gray-200);border-radius:var(--radius-sm)}.wp-dcard{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border-color);border-left:4px solid transparent;border-radius:var(--radius-sm);min-height:44px;cursor:pointer;transition:background-color .15s;position:relative;overflow:hidden;touch-action:pan-y}.wp-dcard--work{border-left-color:var(--color-activity-work)}.wp-dcard--meeting{border-left-color:var(--color-activity-meeting)}.wp-dcard--call{border-left-color:var(--color-activity-call)}.wp-dcard--follow-up{border-left-color:var(--color-activity-follow-up)}.wp-dcard--inspection{border-left-color:var(--color-activity-inspection)}.wp-dcard--delivery{border-left-color:var(--color-activity-delivery)}.wp-dcard--deadline{border-left-color:var(--color-activity-deadline)}.wp-dcard--travel{border-left-color:var(--color-activity-travel)}.wp-dcard--review{border-left-color:var(--color-activity-review)}.wp-dcard--training{border-left-color:var(--color-activity-training)}.wp-dcard--site-visit{border-left-color:var(--color-activity-site-visit)}.wp-dcard--admin{border-left-color:var(--color-activity-admin)}.wp-dcard--completed{opacity:.6}.wp-dcard--skipped,.wp-dcard--cancelled{opacity:.45}.wp-dcard--skipped .wp-dcard-title,.wp-dcard--cancelled .wp-dcard-title{text-decoration:line-through}.wp-dcard--overdue{border-color:var(--color-danger);border-left-color:var(--color-danger)}.wp-dcard-status{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);cursor:pointer;border-radius:var(--radius-sm);transition:background-color .15s}@media(hover:hover){.wp-dcard-status:hover{background:var(--color-gray-50)}}.wp-dcard-body{flex:1;min-width:0}.wp-dcard-top-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.wp-dcard-time{font-size:var(--font-size-xs);color:var(--color-gray-500);font-weight:500}.wp-dcard-time--overdue{color:var(--color-danger)}.wp-dcard-badge{font-size:10px;font-weight:500;padding:1px 6px;border-radius:3px;white-space:nowrap}.wp-dcard-title{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);line-height:1.4;margin-top:2px}.wp-dcard-subtitle{font-size:var(--font-size-xs);color:var(--color-gray-400);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wp-dcard-overdue-prompt{margin-top:var(--space-2);padding:var(--space-2);background:var(--color-danger-bg);border:1px solid var(--color-danger);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-danger-text);cursor:pointer}.wp-dcard-expand{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-color)}.wp-dcard-description{font-size:var(--font-size-xs);color:var(--color-gray-500);line-height:1.5;margin:0}.wp-dcard-linked{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:var(--space-2)}.wp-dcard-chip{font-size:10px;padding:2px 6px;border:1px solid var(--border-color);border-radius:3px;color:var(--color-gray-500)}.wp-dcard-swipe-left,.wp-dcard-swipe-right{position:absolute;top:0;bottom:0;width:80px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;color:var(--color-white)}.wp-dcard-swipe-right{left:0;background:var(--color-success)}.wp-dcard-swipe-left{right:0;background:var(--color-danger)}.wp-dcard-content{display:flex;align-items:flex-start;gap:var(--space-3);width:100%;position:relative;transition:transform .15s ease;background:var(--bg-surface);z-index:1}.wp-daily-add{display:flex;align-items:center;justify-content:center;padding:var(--space-3);border:1px dashed var(--color-accent);border-radius:var(--radius-sm);background:none;color:var(--color-accent);font-size:var(--font-size-sm);font-weight:500;font-family:Inter,-apple-system,sans-serif;cursor:pointer;min-height:44px;width:100%;transition:background-color .15s}@media(hover:hover){.wp-daily-add:hover{background:color-mix(in srgb,var(--color-accent) 5%,transparent)}}.wp-pull-indicator{text-align:center;padding:var(--space-2);font-size:var(--font-size-xs);color:var(--color-gray-400);transition:opacity .15s}.wp-sheet-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--color-gray-700) 40%,transparent);z-index:1000;display:flex;align-items:flex-end;justify-content:center}.wp-sheet{width:100%;max-width:500px;background:var(--bg-surface);border-top:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-3) var(--space-4) var(--space-6);max-height:80vh;overflow-y:auto}.wp-sheet-handle{width:36px;height:4px;background:var(--color-gray-200);border-radius:2px;margin:0 auto var(--space-3)}.wp-sheet-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-3)}.wp-sheet-actions{display:flex;flex-direction:column;gap:var(--space-1)}.wp-sheet-action{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3);border:none;background:none;font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;color:var(--color-gray-700);cursor:pointer;min-height:44px;text-align:left;border-radius:var(--radius-sm);transition:background-color .1s}@media(hover:hover){.wp-sheet-action:hover{background:var(--color-gray-50)}}.wp-sheet-action--danger{color:var(--color-danger)}.wp-sheet-action-icon{flex-shrink:0;width:24px;text-align:center;font-size:var(--font-size-md)}.wp-sheet-divider{height:1px;background:var(--color-gray-100);margin:var(--space-1) 0}.wp-skip-reasons{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.wp-skip-reason{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);cursor:pointer;font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;color:var(--color-gray-700);min-height:44px;transition:border-color .15s,background-color .15s}.wp-skip-reason--selected{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 5%,transparent)}@media(hover:hover){.wp-skip-reason:hover{border-color:var(--color-gray-300)}}.wp-skip-note{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;outline:none;background:var(--bg-surface);color:var(--color-gray-700);margin-bottom:var(--space-3);min-height:44px}.wp-skip-note:focus{border-color:var(--color-accent)}.wp-reschedule-field{margin-bottom:var(--space-3)}.wp-reschedule-field label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);margin-bottom:var(--space-1)}.wp-reschedule-field input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;outline:none;background:var(--bg-surface);color:var(--color-gray-700);min-height:44px}.wp-reschedule-field input:focus{border-color:var(--color-accent)}.wp-sheet-submit{width:100%;padding:var(--space-3);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;font-family:Inter,-apple-system,sans-serif;cursor:pointer;min-height:44px;transition:background-color .15s}.wp-sheet-submit--primary{background:var(--color-accent);color:var(--color-white)}@media(hover:hover){.wp-sheet-submit--primary:hover{filter:brightness(.95)}}.wp-sheet-submit--secondary{background:var(--color-gray-100);color:var(--color-gray-600);margin-top:var(--space-2)}.wp-sheet-submit--mt{margin-top:var(--space-3)}.wp-sheet-submit:disabled{opacity:.5;cursor:not-allowed}.wp-quick-create{display:flex;flex-direction:column;gap:var(--space-3)}.wp-quick-field label{display:block;font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);margin-bottom:var(--space-1)}.wp-quick-field input,.wp-quick-field select{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:Inter,-apple-system,sans-serif;outline:none;background:var(--bg-surface);color:var(--color-gray-700);min-height:44px}.wp-quick-field input:focus,.wp-quick-field select:focus{border-color:var(--color-accent)}.wp-quick-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}@media(max-width:767px){.wp-toolbar{flex-wrap:wrap;justify-content:center}.wp-toolbar-label{flex-basis:100%;text-align:center;font-size:var(--font-size-sm);order:-1;margin-bottom:var(--space-1)}.wp-toolbar-views{margin-left:0}.wp-stats{justify-content:center;gap:var(--space-3);font-size:var(--font-size-xs)}.wp-weekly{flex-direction:column}.wp-weekly-lanes{grid-template-columns:repeat(7,1fr);overflow-x:auto}.wp-day-lane{min-width:100px}.wp-unplanned{width:100%}.wp-dcard{padding:var(--space-3)}.wp-sheet{max-width:100%;border-radius:var(--radius-md) var(--radius-md) 0 0}}.new-task-overlay{position:fixed;inset:0;background:#0006;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.new-task-modal{background:var(--bg-surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:480px;max-height:85vh;display:flex;flex-direction:column;border:1px solid var(--border-color);animation:new-task-slide-up .2s ease-out}@keyframes new-task-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:768px){.new-task-overlay{align-items:center}.new-task-modal{border-radius:var(--radius-lg);max-height:70vh}}.new-task-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color);flex-shrink:0}.new-task-header h3{margin:0;font-size:var(--font-size-lg);font-weight:600}.new-task-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-muted);padding:var(--space-1);line-height:1}.new-task-body{padding:var(--space-4) var(--space-5);overflow-y:auto;flex:1}.new-task-project-list{display:flex;flex-direction:column;gap:var(--space-2)}.new-task-project-btn{display:flex;align-items:center;min-height:56px;width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-base);font-family:var(--font-family);text-align:left;transition:border-color .15s,background .15s}.new-task-project-btn:hover,.new-task-project-btn:focus{border-color:var(--color-accent);background:var(--bg-hover)}.new-task-project-btn:active{background:var(--bg-active)}.new-task-form{display:flex;flex-direction:column;gap:var(--space-4)}.new-task-form label{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.new-task-form .form-input{padding:var(--space-3) var(--space-3);font-size:var(--font-size-base);min-height:48px}.new-task-project-label{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--bg-hover);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.new-task-project-change{background:none;border:none;color:var(--color-accent);cursor:pointer;font-size:var(--font-size-sm);padding:0}.new-task-error{padding:var(--space-2) var(--space-3);background:var(--color-danger-bg);color:var(--color-danger);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.new-task-actions{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-color);flex-shrink:0}.new-task-actions .btn{flex:1;min-height:48px;font-size:var(--font-size-base);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-family);font-weight:500}.new-task-actions .btn-secondary{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary)}.new-task-actions .btn-primary{background:var(--color-accent);border:1px solid var(--color-accent);color:#fff}.new-task-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}@media(max-width:767px){.planner-tasks-tab--mobile{position:relative;display:flex;flex-direction:column;height:100%}.tasks-mobile-filter-bar{position:sticky;top:0;z-index:10;background:var(--bg-base, #fff);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-2)}.tasks-mobile-search{width:100%}.tasks-mobile-pills{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none}.tasks-mobile-pills::-webkit-scrollbar{display:none}.tasks-mobile-pill{flex:0 0 auto;padding:var(--space-1) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-full, 999px);background:var(--bg-surface);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer;white-space:nowrap}.tasks-mobile-pill--active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.tasks-mobile-list{flex:1;overflow-y:auto;padding:var(--space-2) var(--space-3);padding-bottom:80px;display:flex;flex-direction:column;gap:var(--space-2)}.tasks-mobile-item{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-3);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-1)}.tasks-mobile-item:active{background:var(--bg-hover)}.tasks-mobile-item-header{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.tasks-mobile-item-title{font-size:var(--font-size-md);font-weight:500;color:var(--color-gray-800)}.tasks-mobile-item-meta{display:flex;gap:var(--space-3);font-size:var(--font-size-xs);color:var(--color-gray-500);flex-wrap:wrap}.tasks-mobile-loading,.tasks-mobile-empty{text-align:center;padding:var(--space-8);color:var(--color-gray-400)}.tasks-mobile-fab{position:fixed;right:var(--space-4);bottom:var(--space-6);width:56px;height:56px;border-radius:50%;background:var(--color-accent);color:#fff;font-size:28px;line-height:1;border:none;box-shadow:0 4px 16px #0003;cursor:pointer;z-index:50;display:flex;align-items:center;justify-content:center}}@media(max-width:600px){.planner-activities-tab .section-header{align-items:flex-start;gap:var(--space-3)}.planner-activities-tab .tasks-filters{gap:var(--space-2)}.planner-activities-tab .tasks-filters .form-input{flex:1 1 100%;min-width:0}.planner-activities-tab .tasks-table-wrapper{overflow-x:visible}.planner-activities-tab .tasks-table,.planner-activities-tab .tasks-table tbody{display:block;width:100%}.planner-activities-tab .tasks-table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.planner-activities-tab .tasks-table tbody{display:flex;flex-direction:column;gap:var(--space-3)}.planner-activities-tab .tasks-table tr.tasks-row{position:relative;display:block;padding:var(--space-3) calc(var(--space-3) + 20px) var(--space-3) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--bg-surface)}.planner-activities-tab .tasks-table tr.tasks-row:after{content:">";position:absolute;top:var(--space-3);right:var(--space-3);color:var(--color-text-secondary);font-size:20px;line-height:1}.planner-activities-tab .tasks-table tr.tasks-row:active{background:var(--color-bg-hover, rgba(0, 0, 0, .02))}.planner-activities-tab .tasks-table td{display:grid;grid-template-columns:minmax(84px,34%) minmax(0,1fr);align-items:start;gap:var(--space-2);padding:6px 0;border-bottom:0;min-width:0}.planner-activities-tab .tasks-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.planner-activities-tab .tasks-table td:first-child{display:block;padding-top:0;padding-bottom:var(--space-2)}.planner-activities-tab .tasks-table td:first-child:before{content:none}.planner-activities-tab .tasks-title{padding-right:var(--space-2);color:var(--color-text);font-size:var(--font-size-md);line-height:1.35;overflow-wrap:anywhere}.planner-activities-tab .tasks-table td>span:not(.activity-type-badge):not(.activity-status-pill):not(.priority-badge),.planner-activities-tab .tasks-table td{overflow-wrap:anywhere}.planner-activities-tab .activity-type-badge,.planner-activities-tab .activity-status-pill,.planner-activities-tab .priority-badge{width:fit-content;max-width:100%}.planner-activities-tab .tasks-table-empty{display:block;border-bottom:0}}.activity-form-overlay{position:fixed;inset:0;background-color:color-mix(in srgb,var(--color-gray-700) 30%,transparent);z-index:1000;display:flex;justify-content:flex-end}.activity-form-panel{width:480px;max-width:100vw;height:100%;background-color:var(--bg-surface);border-left:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.activity-form-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color);flex-shrink:0}.activity-form-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0}.activity-form-close{background:none;border:1px solid var(--border-color);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-500);font-weight:500;transition:background-color .15s}@media(hover:hover){.activity-form-close:hover{background-color:var(--bg-hover)}}.activity-form-body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.activity-form-field{display:flex;flex-direction:column;gap:var(--space-1);flex:1}.activity-form-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600)}.activity-form-row{display:flex;gap:var(--space-3)}.activity-form-textarea{resize:vertical;min-height:60px}.activity-form-checkbox-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.activity-form-error{color:var(--color-danger);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-sm);margin:0}.activity-form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;padding-top:var(--space-4);border-top:1px solid var(--border-color);margin-top:auto}.activity-form-field{position:relative}.activity-form-linked-value{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700)}.activity-form-clear-btn{background:none;border:none;color:var(--color-gray-400);font-size:var(--font-size-xs);cursor:pointer;padding:0;font-weight:500}@media(hover:hover){.activity-form-clear-btn:hover{color:var(--color-danger)}}.activity-form-search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:10;max-height:200px;overflow-y:auto}.activity-form-search-item{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}@media(hover:hover){.activity-form-search-item:hover{background:var(--bg-hover)}}.activity-form-search-loading,.activity-form-search-empty{color:var(--color-gray-400);cursor:default}@media(hover:hover){.activity-form-search-loading:hover,.activity-form-search-empty:hover{background:none}}.activity-form-search-name{color:var(--color-gray-700)}.activity-form-search-meta{color:var(--color-gray-400);font-size:var(--font-size-xs)}@media(max-width:767px){.activity-form-panel{width:100vw}.activity-form-row{flex-direction:column}}.activity-detail-overlay{position:fixed;inset:0;background-color:color-mix(in srgb,var(--color-gray-700) 30%,transparent);z-index:1000;display:flex;justify-content:flex-end}.activity-detail-panel{width:480px;max-width:100vw;height:100%;background-color:var(--bg-surface);border-left:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.activity-detail-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color);flex-shrink:0}.activity-detail-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0}.activity-detail-close{background:none;border:1px solid var(--border-color);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-500);font-weight:500;transition:background-color .15s}@media(hover:hover){.activity-detail-close:hover{background-color:var(--bg-hover)}}.activity-detail-badges{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-color);flex-wrap:wrap}.activity-detail-body{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.activity-detail-section{display:flex;flex-direction:column;gap:var(--space-2)}.activity-detail-row{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-1) 0}.activity-detail-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-400)}.activity-detail-value{font-size:var(--font-size-sm);color:var(--color-gray-700)}.activity-detail-description{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.5;margin:0;white-space:pre-wrap}.activity-detail-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.activity-chip{display:inline-block;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:500;color:var(--color-accent);background:var(--color-accent-light);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s}@media(hover:hover){.activity-chip:hover{background:var(--color-gray-100)}}.activity-chip--tag{color:var(--color-gray-600);background:var(--color-gray-100);cursor:default}.activity-detail-actions-section{padding-top:var(--space-3);border-top:1px solid var(--border-color)}.activity-detail-action-buttons{display:flex;gap:var(--space-2);flex-wrap:wrap}.activity-detail-inline-form{display:flex;gap:var(--space-2);margin-top:var(--space-2);align-items:center}.activity-detail-inline-form .form-input{flex:1}.activity-detail-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-color);flex-shrink:0}.activity-detail-delete-confirm{display:flex;align-items:center;gap:var(--space-2)}.btn-danger-outline{background:none;color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background-color .15s,color .15s}@media(hover:hover){.btn-danger-outline:hover{background:var(--color-danger);color:var(--color-white)}}.btn-danger{background:var(--color-danger);color:var(--color-white);border:none;border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);font-weight:500;cursor:pointer}@media(max-width:767px){.activity-detail-panel{width:100vw}}:root{--color-purple: color-mix(in srgb, var(--color-accent) 50%, var(--color-danger) 80%);--color-indigo: color-mix(in srgb, var(--color-accent) 70%, var(--color-danger));--color-activity-work: var(--color-accent);--color-activity-meeting: var(--color-purple);--color-activity-call: var(--color-success);--color-activity-follow-up: var(--color-warning);--color-activity-inspection: var(--color-danger);--color-activity-delivery: var(--color-info);--color-activity-deadline: var(--color-danger-text);--color-activity-travel: var(--color-gray-500);--color-activity-review: var(--color-indigo);--color-activity-training: var(--color-purple);--color-activity-site-visit: var(--color-warning);--color-activity-admin: var(--color-gray-400);--color-activity-work-bg: color-mix(in srgb, var(--color-activity-work) 10%, transparent);--color-activity-meeting-bg: color-mix(in srgb, var(--color-activity-meeting) 10%, transparent);--color-activity-call-bg: var(--color-success-bg);--color-activity-follow-up-bg: var(--color-warning-bg);--color-activity-inspection-bg: var(--color-danger-bg);--color-activity-delivery-bg: var(--color-info-bg);--color-activity-deadline-bg: var(--color-danger-bg);--color-activity-travel-bg: color-mix(in srgb, var(--color-gray-500) 8%, transparent);--color-activity-review-bg: color-mix(in srgb, var(--color-activity-review) 10%, transparent);--color-activity-training-bg: color-mix(in srgb, var(--color-activity-training) 10%, transparent);--color-activity-site-visit-bg: var(--color-warning-bg);--color-activity-admin-bg: color-mix(in srgb, var(--color-gray-400) 8%, transparent);--cal-grid-border: var(--border-color);--cal-time-gutter-width: 60px;--cal-hour-height: 60px;--cal-current-time: var(--color-danger);--cal-overlay-1: var(--color-accent);--cal-overlay-2: var(--color-success);--cal-overlay-3: var(--color-warning);--cal-overlay-4: var(--color-danger);--cal-overlay-5: var(--color-info)}.planner-placeholder{text-align:center;padding:var(--space-12) var(--space-6);border:1px dashed var(--color-gray-200);border-radius:var(--radius-md)}.planner-placeholder-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-2)}.planner-placeholder-text{font-size:var(--font-size-sm);color:var(--color-gray-400);margin:0}.planner-tab-error{text-align:center;padding:var(--space-8);color:var(--color-danger)}.tasks-actions-cell{display:flex;align-items:center;gap:var(--space-4)}.planner-quick-add{font-size:var(--font-size-sm);color:var(--color-accent);background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:2px var(--space-8);cursor:pointer;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s}.planner-quick-add:disabled{opacity:.5;cursor:default}@media(hover:hover){.planner-quick-add:hover:not(:disabled){background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}}.planner-add-to-cal{font-size:var(--font-size-xs);color:var(--color-accent);background:none;border:1px solid var(--color-accent);border-radius:var(--radius-sm);padding:2px var(--space-2);cursor:pointer;white-space:nowrap;font-weight:500;transition:background-color .15s,color .15s}@media(hover:hover){.planner-add-to-cal:hover{background:var(--color-accent);color:var(--color-white)}}.activity-type-badge{display:inline-block;font-size:var(--font-size-xs);font-weight:500;padding:2px 8px;border-radius:4px;white-space:nowrap}.activity-type--work{color:var(--color-activity-work);background:var(--color-activity-work-bg)}.activity-type--meeting{color:var(--color-activity-meeting);background:var(--color-activity-meeting-bg)}.activity-type--call{color:var(--color-activity-call);background:var(--color-activity-call-bg)}.activity-type--follow-up{color:var(--color-activity-follow-up);background:var(--color-activity-follow-up-bg)}.activity-type--inspection{color:var(--color-activity-inspection);background:var(--color-activity-inspection-bg)}.activity-type--delivery{color:var(--color-activity-delivery);background:var(--color-activity-delivery-bg)}.activity-type--deadline{color:var(--color-activity-deadline);background:var(--color-activity-deadline-bg)}.activity-type--travel{color:var(--color-activity-travel);background:var(--color-activity-travel-bg)}.activity-type--review{color:var(--color-activity-review);background:var(--color-activity-review-bg)}.activity-type--training{color:var(--color-activity-training);background:var(--color-activity-training-bg)}.activity-type--site-visit{color:var(--color-activity-site-visit);background:var(--color-activity-site-visit-bg)}.activity-type--admin{color:var(--color-activity-admin);background:var(--color-activity-admin-bg)}.activity-status-pill{display:inline-block;font-size:var(--font-size-xs);font-weight:500;padding:2px 8px;border-radius:4px;white-space:nowrap}.activity-status--planned{color:var(--color-info-text);background:var(--color-info-bg)}.activity-status--in-progress{color:var(--color-warning-text);background:var(--color-warning-bg)}.activity-status--completed{color:var(--color-success-text);background:var(--color-success-bg)}.activity-status--skipped{color:var(--color-gray-500);background:var(--color-gray-100)}.activity-status--rescheduled{color:var(--color-warning-text);background:var(--color-warning-bg)}.activity-status--cancelled{color:var(--color-danger-text);background:var(--color-danger-bg)}.context-menu-content{min-width:180px;background:#fff;border-radius:8px;box-shadow:0 4px 16px #00000026;padding:4px;z-index:1000;animation:contextMenuFadeIn .15s ease}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:13px;color:#1e293b;border:none;background:none;width:100%;text-align:left;cursor:pointer;border-radius:4px;transition:background .1s ease}.context-menu-item:hover{background:#f1f5f9}.context-menu-item--active{background:#eff6ff;color:#3b82f6}.context-menu-item--danger:hover{background:#fef2f2;color:#ef4444}.context-menu-subtrigger{justify-content:flex-start}.context-menu-chevron{margin-left:auto}.context-menu-separator{height:1px;background:#e2e8f0;margin:4px 0}.context-menu-color-swatch{width:14px;height:14px;border-radius:4px;border:1px solid rgba(0,0,0,.1)}.node-hover-actions{position:absolute;top:-36px;left:50%;transform:translate(-50%);display:flex;gap:4px;background:#fff;padding:4px;border-radius:6px;box-shadow:0 2px 8px #00000026;z-index:10}.node-hover-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;border-radius:4px;cursor:pointer;color:#64748b;transition:background .15s ease,color .15s ease}.node-hover-action-btn:hover{background:#f1f5f9;color:#1e293b}.node-hover-action-btn--danger:hover{background:#fef2f2;color:#ef4444}.canvas-edge-label{font-size:10px;fill:#64748b}.canvas-edge-label-container{background:#fff;padding:2px 6px;border-radius:4px;font-size:10px;color:#64748b;box-shadow:0 1px 4px #0000001a}.canvas-edge-label--dependency{background:#fef3c7;color:#92400e}.canvas-edge-label--assignment{background:#dcfce7;color:#166534}.canvas-edge-label--reference{background:#f3e8ff;color:#7c3aed}.canvas-edge-label--hierarchy{background:#f1f5f9;color:#475569}.share-dialog-overlay{position:fixed;inset:0;background:var(--overlay-bg);display:flex;align-items:center;justify-content:center;z-index:1000}.share-dialog{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:560px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;outline:none}.share-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color)}.share-dialog-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.share-dialog-close{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer}.share-dialog-close:hover{background:var(--bg-hover);color:var(--color-gray-700)}.share-dialog-body{padding:var(--space-5);overflow-y:auto;flex:1}.share-dialog-section{margin-bottom:var(--space-6)}.share-dialog-section:last-child{margin-bottom:0}.share-dialog-section-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-3) 0}.share-dialog-empty,.share-dialog-loading{font-size:var(--font-size-sm);color:var(--color-gray-400);margin:0;padding:var(--space-2) 0}.share-dialog-perm-list{list-style:none;margin:0;padding:0}.share-dialog-perm-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-color-light)}.share-dialog-perm-item:last-child{border-bottom:none}.share-dialog-perm-name{flex:1;font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:500}.share-dialog-perm-select{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-600);cursor:pointer}.share-dialog-perm-remove{background:none;border:none;font-size:var(--font-size-sm);color:var(--color-danger);cursor:pointer;padding:var(--space-1) var(--space-2)}.share-dialog-perm-remove:hover{text-decoration:underline}.share-dialog-token-list{list-style:none;margin:0;padding:0}.share-dialog-token-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-color-light)}.share-dialog-token-item:last-child{border-bottom:none}.share-dialog-token-info{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:0}.share-dialog-token-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-dialog-token-meta{font-size:var(--font-size-xs);color:var(--color-gray-400)}.share-dialog-token-actions{display:flex;gap:var(--space-2);flex-shrink:0}.share-dialog-btn{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--color-gray-600);white-space:nowrap}.share-dialog-btn:hover{background:var(--bg-hover)}.share-dialog-btn:disabled{opacity:.5;cursor:not-allowed}.share-dialog-btn--primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.share-dialog-btn--primary:hover{background:var(--color-accent-hover)}.share-dialog-btn--secondary{background:var(--bg-surface);color:var(--color-accent);border-color:var(--color-accent)}.share-dialog-btn--danger{background:none;color:var(--color-danger);border-color:var(--color-danger)}.share-dialog-btn--danger:hover{background:var(--color-danger-bg)}.share-dialog-create-link{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-color-light)}.share-dialog-create-link-row{display:flex;gap:var(--space-2);align-items:center}.share-dialog-input{flex:1;font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700);outline:none}.share-dialog-input:focus{border-color:var(--color-accent)}.share-dialog-input::placeholder{color:var(--color-gray-300)}.share-dialog-select{font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-600);cursor:pointer}.template-gallery-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.template-gallery{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;width:720px;max-width:90vw;max-height:80vh;overflow-y:auto;position:relative}.template-gallery__header{padding:24px 24px 16px;border-bottom:1px solid var(--color-border, #e2e8f0);position:relative}.template-gallery__title{font-size:18px;font-weight:600;color:var(--color-text, #1a1a1a);margin:0 0 4px}.template-gallery__subtitle{font-size:13px;color:var(--color-text-secondary, #64748b);margin:0}.template-gallery__close{position:absolute;top:16px;right:16px;background:none;border:1px solid var(--color-border, #e2e8f0);border-radius:4px;width:28px;height:28px;font-size:14px;color:var(--color-text-secondary, #64748b);cursor:pointer;display:flex;align-items:center;justify-content:center}.template-gallery__close:hover{background:var(--color-bg-hover, #f1f5f9)}.template-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:20px 24px 24px}.template-card{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e2e8f0);border-radius:6px;padding:16px;text-align:left;cursor:pointer;transition:border-color .15s}.template-card:hover{border-color:var(--color-accent, #007aff)}.template-card__category{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary, #94a3b8)}.template-card__name{font-size:15px;font-weight:600;color:var(--color-text, #1a1a1a);margin:4px 0 6px}.template-card__description{font-size:13px;color:var(--color-text-secondary, #64748b);line-height:1.4;margin:0 0 10px}.template-card__meta{display:flex;gap:12px;margin-bottom:8px}.template-card__meta-item{font-size:12px;color:var(--color-text-tertiary, #94a3b8)}.template-card__data-badges{display:flex;flex-wrap:wrap;gap:4px}.template-card__badge{font-size:11px;padding:2px 6px;border-radius:3px;background:var(--color-accent-bg, #e0f0ff);color:var(--color-accent, #007aff)}.template-card__badge--optional{background:var(--color-bg-hover, #f1f5f9);color:var(--color-text-tertiary, #94a3b8)}.template-gallery__confirm{padding:20px 24px 24px}.template-gallery__back{background:none;border:none;font-size:13px;color:var(--color-accent, #007aff);cursor:pointer;padding:0;margin-bottom:16px}.template-gallery__back:hover{text-decoration:underline}.template-confirm__detail{max-width:480px}.template-confirm__name{font-size:17px;font-weight:600;color:var(--color-text, #1a1a1a);margin:0 0 6px}.template-confirm__description{font-size:14px;color:var(--color-text-secondary, #64748b);margin:0 0 20px}.template-confirm__options{margin-bottom:20px}.template-confirm__options-title{font-size:13px;font-weight:600;color:var(--color-text, #1a1a1a);margin:0 0 10px}.template-confirm__option{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary, #64748b);margin-bottom:8px;cursor:pointer}.template-confirm__option select{font-size:13px;padding:2px 4px;border:1px solid var(--color-border, #e2e8f0);border-radius:4px}.template-confirm__status{font-size:13px;color:var(--color-text-secondary, #64748b);margin:0 0 12px;font-style:italic}.template-confirm__build-btn{background:var(--color-accent, #007aff);color:#fff;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .15s}.template-confirm__build-btn:hover:not(:disabled){opacity:.9}.template-confirm__build-btn:disabled{opacity:.5;cursor:not-allowed}.insights-panel{position:fixed;bottom:0;left:200px;right:0;background:var(--color-bg, #fff);border-top:1px solid var(--color-border, #e2e8f0);z-index:50;transition:transform .25s ease;transform:translateY(calc(100% - 40px))}.insights-panel--open{transform:translateY(0)}.insights-panel__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;height:40px;padding:0 20px;background:var(--color-bg, #fff);border:none;border-bottom:1px solid var(--color-border, #e2e8f0);cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text, #1a1a1a)}.insights-panel__toggle:hover{background:var(--color-bg-hover, #f8fafc)}.insights-panel__toggle-arrow{font-size:12px;color:var(--color-text-tertiary, #94a3b8)}.insights-panel__content{max-height:280px;overflow-y:auto;padding:12px 20px 16px}.insights-panel__stats{display:flex;gap:16px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--color-border, #e2e8f0)}.insights-panel__stat{font-size:12px;color:var(--color-text-tertiary, #94a3b8)}.insights-panel__stat--suggested{color:var(--color-accent, #007aff);font-weight:500}.insights-panel__group{margin-bottom:8px}.insights-panel__group-header{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;padding:6px 0;cursor:pointer;font-size:12px;font-weight:600;color:var(--color-text, #1a1a1a);text-transform:uppercase;letter-spacing:.04em}.insights-panel__group-header:hover{color:var(--color-accent, #007aff)}.insights-panel__list{list-style:none;margin:0;padding:0}.insights-panel__item{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:4px;font-size:13px;line-height:1.4;color:var(--color-text-secondary, #64748b);cursor:default;transition:background .1s}.insights-panel__item[role=button]{cursor:pointer}.insights-panel__item[role=button]:hover{background:var(--color-bg-hover, #f1f5f9)}.insights-panel__severity{font-size:11px;font-weight:500;padding:1px 5px;border-radius:3px;white-space:nowrap;flex-shrink:0}.insights-panel__severity--high{background:var(--color-danger-bg, #fef0ef);color:var(--color-danger, #dc3545)}.insights-panel__severity--medium{background:var(--color-warning-bg, #fff8e1);color:var(--color-warning, #f59e0b)}.insights-panel__severity--low{background:var(--color-info-bg, #e8f4fd);color:var(--color-info, #3b82f6)}.insights-panel__severity--info{background:var(--color-bg-hover, #f1f5f9);color:var(--color-text-tertiary, #94a3b8)}.insights-panel__message{flex:1}.search-picker-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;background:#0000004d}.search-picker{width:640px;max-height:70vh;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden}.search-picker__header{padding:var(--space-4);border-bottom:1px solid var(--color-gray-100)}.search-picker__input-row{display:flex;align-items:center;gap:var(--space-2)}.search-picker__input{flex:1;padding:var(--space-2) var(--space-3);font-size:16px;font-family:inherit;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700);outline:none}.search-picker__input:focus{border-color:var(--color-accent)}.search-picker__input::placeholder{color:var(--color-gray-300)}.search-picker__shortcut{font-size:12px;color:var(--color-gray-300);padding:2px 6px;border:1px solid var(--color-gray-200);border-radius:4px;white-space:nowrap}.search-picker__filters{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.search-picker__pill{padding:2px var(--space-2);font-size:12px;font-family:inherit;font-weight:500;border:1px solid var(--color-gray-200);border-radius:100px;background:var(--bg-surface);color:var(--color-gray-500);cursor:pointer;transition:border-color .1s,color .1s,background .1s}.search-picker__pill:hover{border-color:var(--color-gray-300);color:var(--color-gray-700)}.search-picker__pill--active{border-color:var(--color-accent);background:var(--bg-selected);color:var(--color-accent)}.search-picker__modes{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.search-picker__mode-toggle{font-size:12px;font-family:inherit;font-weight:500;padding:2px var(--space-2);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-500);cursor:pointer}.search-picker__mode-toggle--active{border-color:var(--color-accent);color:var(--color-accent);background:var(--bg-selected)}.search-picker__results{flex:1;overflow-y:auto;padding:var(--space-2) 0}.search-picker__empty{padding:var(--space-8) var(--space-4);text-align:center;color:var(--color-gray-400);font-size:13px}.search-picker__loading{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.search-picker__skeleton{height:40px;border-radius:var(--radius-sm);background:var(--color-gray-50);animation:skeleton-pulse 1.2s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.search-picker-result{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);cursor:pointer;transition:background .1s}.search-picker-result:hover{background:var(--bg-hover)}.search-picker-result--focused{background:var(--bg-selected)}.search-picker-result--on-map{opacity:.5}.search-picker-result--selected{background:var(--bg-selected)}.search-picker-result__checkbox{flex-shrink:0;width:16px;height:16px;accent-color:var(--color-accent)}.search-picker-result__type{flex-shrink:0;width:70px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.search-picker-result__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.search-picker-result__title{font-size:13px;font-weight:500;color:var(--color-gray-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-picker-result__subtitle{font-size:12px;color:var(--color-gray-400);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-picker-result__badge{flex-shrink:0;font-size:11px;font-weight:500;color:var(--color-gray-400);padding:1px var(--space-2);border:1px solid var(--color-gray-200);border-radius:100px}.search-picker__footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-gray-100)}.search-picker__selected-count{font-size:13px;color:var(--color-gray-500)}.search-picker__add-btn{padding:var(--space-2) var(--space-4);font-size:13px;font-weight:500;font-family:inherit;border:none;border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-white);cursor:pointer}.search-picker__add-btn:hover{opacity:.9}.search-picker__add-btn:disabled{opacity:.5;cursor:default}.bulk-add-filters{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-gray-100);background:var(--color-gray-50)}.bulk-add-filters__label{font-size:12px;font-weight:500;color:var(--color-gray-500);margin-bottom:var(--space-2)}.bulk-add-filters__row{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.bulk-add-filters__select,.bulk-add-filters__input{padding:var(--space-1) var(--space-2);font-size:13px;font-family:inherit;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--color-gray-700)}.bulk-add-filters__button{margin-left:auto;padding:var(--space-1) var(--space-3);font-size:13px;font-weight:500;font-family:inherit;border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:var(--color-accent);color:var(--color-white);cursor:pointer}.bulk-add-filters__button:hover{opacity:.9}.bulk-add-filters__button:disabled{opacity:.5;cursor:default}.account-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100);cursor:pointer;transition:background-color .15s;min-height:40px}@media(hover:hover){.account-row:hover{background-color:var(--color-gray-50)}}.account-row.placeholder{cursor:default}.account-row.placeholder .account-name{font-style:italic;color:var(--color-gray-500)}.account-row-left{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1}.account-expand-btn{width:20px;height:20px;border:none;background:none;cursor:pointer;font-size:10px;color:var(--color-gray-500);display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-sm);transition:background-color .15s}@media(hover:hover){.account-expand-btn:hover{background-color:var(--color-gray-200)}}.account-code{font-family:Fira Code,SF Mono,Consolas,monospace;font-weight:600;font-size:var(--font-size-sm);flex-shrink:0;min-width:48px}.account-name{font-size:var(--font-size-base);color:var(--color-gray-700);display:flex;align-items:center;gap:var(--space-2);min-width:0}.account-badge{font-size:var(--font-size-xs);color:var(--color-gray-400);background:var(--color-gray-100);padding:1px 6px;border-radius:var(--radius-sm);font-style:normal;font-weight:500}.account-row-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.account-row-actions{display:flex;align-items:center;gap:var(--space-1)}@media(hover:hover){.account-row-actions{opacity:0;transition:opacity .15s}.account-row:hover .account-row-actions,.account-row:focus-within .account-row-actions{opacity:1}}@media(hover:none){.account-row-actions{opacity:1}}.account-action-btn{width:26px;height:26px;border:none;background:none;cursor:pointer;color:var(--color-gray-400);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color .15s,color .15s}@media(hover:hover){.account-action-btn:hover{background:var(--bg-active);color:var(--color-gray-600)}.account-action-btn--danger:hover{background:var(--color-danger-bg);color:var(--color-danger)}}.account-balance{font-family:Fira Code,SF Mono,Consolas,monospace;font-weight:500;font-size:var(--font-size-sm);text-align:right;min-width:120px;flex-shrink:0}@media(hover:none){.account-expand-btn,.account-action-btn{min-width:44px;min-height:44px}}.account-tree{background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden}.account-tree-toolbar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-gray-100);flex-wrap:wrap}.account-tree-search{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-gray-700);width:240px;transition:border-color .15s}.account-tree-search:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.account-tree-filter{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-gray-700);background:var(--bg-surface)}.account-tree-toggle{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-gray-500);cursor:pointer;white-space:nowrap}.account-tree-toggle input{accent-color:var(--color-accent)}.account-tree-expand-actions{margin-left:auto;display:flex;gap:var(--space-2)}.btn-text{border:none;background:none;font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-accent);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}@media(hover:hover){.btn-text:hover{background:var(--color-accent-light)}}.account-tree-header{display:flex;justify-content:space-between;padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-gray-200);background:var(--color-gray-50)}.account-tree-header span:last-child{min-width:120px;text-align:right}.account-tree-body{max-height:calc(100vh - 280px);overflow-y:auto}.account-tree-empty{padding:var(--space-8) var(--space-6);text-align:center;color:var(--color-gray-500);font-size:var(--font-size-base)}.account-tree-error{color:var(--color-danger)}.modal-overlay{position:fixed;inset:0;z-index:900;background:#0000004d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center}.modal-content{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-gray-100)}.modal-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700)}.modal-close{border:none;background:none;font-size:20px;color:var(--color-gray-400);cursor:pointer;padding:var(--space-1);line-height:1}@media(hover:hover){.modal-close:hover{color:var(--color-gray-700)}}@media(hover:none){.modal-close{min-width:44px;min-height:44px}}.account-form{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.form-error-banner{background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--font-size-sm);border:1px solid var(--color-danger-border)}.form-row{display:flex;gap:var(--space-4)}.form-row .form-group{flex:1}.form-group{display:flex;flex-direction:column;gap:var(--space-1)}.form-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600)}.form-input{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-gray-700);background:var(--bg-surface);transition:border-color .15s}.form-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.form-input--error{border-color:var(--color-danger)}.form-input--error:focus{box-shadow:0 0 0 2px var(--color-danger-border)}.form-error{font-size:var(--font-size-xs);color:var(--color-danger)}.form-checkboxes{display:flex;flex-direction:column;gap:var(--space-2)}.form-checkbox{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-gray-600);cursor:pointer}.form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent)}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-gray-100)}.btn{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:500;cursor:pointer;border:1px solid transparent;transition:background-color .15s,border-color .15s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}@media(hover:hover){.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}}.btn-ghost{background:none;color:var(--color-gray-600);border-color:var(--color-gray-200)}@media(hover:hover){.btn-ghost:hover:not(:disabled){background:var(--color-gray-50)}}.btn-danger{background:var(--color-danger);color:var(--color-white);border-color:var(--color-danger)}@media(hover:hover){.btn-danger:hover:not(:disabled){background:var(--color-danger-text)}}.account-context-menu{position:fixed;z-index:1000;background:var(--bg-surface);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1) 0;min-width:200px}.context-menu-item{display:block;width:100%;text-align:left;padding:var(--space-2) var(--space-4);border:none;background:none;font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-gray-700);cursor:pointer;transition:background-color .1s}@media(hover:hover){.context-menu-item:hover{background-color:var(--color-gray-50)}}.context-menu-item--danger{color:var(--color-danger)}@media(hover:hover){.context-menu-item--danger:hover{background-color:var(--color-danger-bg)}}.context-menu-divider{height:1px;background:var(--color-gray-100);margin:var(--space-1) 0}.tax-cat-manager{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);padding:var(--space-4)}.tax-cat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.tax-cat-header h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0}.tax-cat-form{background:var(--color-gray-50);border:1px solid var(--color-gray-100);border-radius:var(--radius-sm);padding:var(--space-4);margin-bottom:var(--space-4)}.tax-cat-form .form-row{display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.tax-cat-form .form-group{flex:1;display:flex;flex-direction:column;gap:var(--space-1)}.tax-cat-form .form-group label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-gray-500)}.tax-cat-form .form-group input{padding:var(--space-2) var(--space-3);border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700);background:var(--bg-surface);font-family:var(--font-family)}.tax-cat-form .form-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.tax-cat-form .form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.tax-cat-form-error{color:var(--color-danger);font-size:var(--font-size-sm);margin-top:var(--space-2)}.tax-cat-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.tax-cat-table th{text-align:left;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-gray-500);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100)}.tax-cat-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-50);color:var(--color-gray-700)}.tax-cat-line{font-weight:600;min-width:48px}.tax-cat-desc{color:var(--color-gray-500)}.tax-cat-actions{display:flex;gap:var(--space-2)}.tax-cat-loading,.tax-cat-error{padding:var(--space-4);text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-500)}.tax-cat-error{color:var(--color-danger)}.schc-view{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);padding:var(--space-4)}.schc-header{margin-bottom:var(--space-4)}.schc-header h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-1) 0}.schc-subtitle{font-size:var(--font-size-sm);color:var(--color-gray-500)}.schc-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.schc-table th{text-align:left;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-gray-500);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100)}.schc-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-50);color:var(--color-gray-700)}.schc-line-num{font-weight:600;min-width:48px}.schc-desc{color:var(--color-gray-500)}.schc-amount{text-align:right;font-variant-numeric:tabular-nums}th.schc-amount{text-align:right}.schc-zero td{color:var(--color-gray-400)}.schc-total td{font-weight:600;border-top:2px solid var(--color-gray-200);border-bottom:none;padding-top:var(--space-3)}.schc-loading,.schc-error{padding:var(--space-4);text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-500)}.schc-error{color:var(--color-danger)}.c1099-list{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);padding:var(--space-4)}.c1099-header{margin-bottom:var(--space-4)}.c1099-header h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-700);margin:0 0 var(--space-1) 0}.c1099-subtitle{font-size:var(--font-size-sm);color:var(--color-gray-500)}.c1099-section{margin-bottom:var(--space-4)}.c1099-section h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-600);margin:0 0 var(--space-2) 0}.c1099-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.c1099-table th{text-align:left;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-gray-500);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-100)}.c1099-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-50);color:var(--color-gray-700)}.c1099-amount{text-align:right;font-variant-numeric:tabular-nums}th.c1099-amount{text-align:right}.c1099-total td{font-weight:600;border-top:2px solid var(--color-gray-200);border-bottom:none}.c1099-badge{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.c1099-required{background:var(--color-warning-bg, #fff3cd);color:var(--color-warning, #856404)}.c1099-below{background:var(--color-gray-50);color:var(--color-gray-500)}.c1099-empty{padding:var(--space-6);text-align:center;color:var(--color-gray-500);font-size:var(--font-size-sm)}.c1099-loading,.c1099-error{padding:var(--space-4);text-align:center;font-size:var(--font-size-sm);color:var(--color-gray-500)}.c1099-error{color:var(--color-danger)}.invoice-preview{max-width:700px;margin:0 auto;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);padding:var(--space-6);font-size:var(--font-size-sm);color:var(--color-gray-700)}.preview-header{margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-gray-200)}.preview-header-text{white-space:pre-wrap;font-size:var(--font-size-sm);color:var(--color-gray-600)}.preview-org-name{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-700)}.preview-title{font-size:var(--font-size-xl);font-weight:700;color:var(--color-gray-700);margin-bottom:var(--space-4);text-transform:uppercase;letter-spacing:1px}.preview-meta{display:flex;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-gray-100)}.preview-meta-left,.preview-meta-right{display:flex;flex-direction:column;gap:2px}.preview-meta-right{text-align:right}.preview-meta-label{font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.3px;font-weight:500}.preview-meta-value{font-weight:500}.preview-table{width:100%;border-collapse:collapse;margin-bottom:var(--space-4)}.preview-table th{text-align:left;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-gray-500);padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--color-gray-200)}.preview-table td{padding:var(--space-2);border-bottom:1px solid var(--color-gray-50);font-size:var(--font-size-sm)}.preview-table .col-right{text-align:right;font-variant-numeric:tabular-nums}.preview-empty{text-align:center;color:var(--color-gray-400);padding:var(--space-3)}.preview-totals{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1);margin-bottom:var(--space-4)}.preview-total-line{display:flex;justify-content:space-between;width:240px;font-size:var(--font-size-sm);color:var(--color-gray-600);padding:2px 0}.preview-total-bold{font-weight:600;color:var(--color-gray-700);border-top:1px solid var(--color-gray-200);padding-top:var(--space-1);margin-top:var(--space-1)}.preview-terms{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-gray-100)}.preview-terms-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;color:var(--color-gray-500);margin-bottom:var(--space-1)}.preview-terms-text{font-size:var(--font-size-xs);color:var(--color-gray-500);white-space:pre-wrap}.preview-footer{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-gray-100);font-size:var(--font-size-xs);color:var(--color-gray-400);text-align:center;white-space:pre-wrap}@media print{.invoice-preview{border:none;box-shadow:none;padding:0;max-width:none}}.dr-form{display:flex;flex-direction:column;gap:var(--spacing-md, 16px)}.dr-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md, 16px)}.dr-form-label{display:flex;flex-direction:column;gap:var(--spacing-xs, 4px);font-weight:500;font-size:.875rem;color:var(--color-text-secondary, #555)}.dr-form-section{border:1px solid var(--color-border, #e0e0e0);border-radius:4px;padding:var(--spacing-md, 16px)}.dr-form-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm, 8px)}.dr-form-section-title{margin:0;font-size:1rem;font-weight:600}.dr-form-table{width:100%;border-collapse:collapse;font-size:.875rem}.dr-form-table th{text-align:left;padding:var(--spacing-xs, 4px) var(--spacing-sm, 8px);font-weight:500;color:var(--color-text-secondary, #555);border-bottom:1px solid var(--color-border, #e0e0e0)}.dr-form-table td{padding:var(--spacing-xs, 4px) var(--spacing-sm, 8px)}.dr-form-number{width:120px;text-align:right}.dr-form-totals{display:flex;flex-direction:column;gap:var(--spacing-xs, 4px);padding:var(--spacing-md, 16px);background:var(--color-surface, #fafafa);border-radius:4px}.dr-form-total-row{display:flex;justify-content:space-between;font-size:.875rem}.dr-form-total-net{font-weight:700;font-size:1rem;padding-top:var(--spacing-sm, 8px);border-top:1px solid var(--color-border, #e0e0e0)}.dr-form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm, 8px)}.g702-preview{border:1px solid var(--color-border, #e0e0e0);border-radius:4px;padding:var(--spacing-lg, 24px);background:var(--color-bg, #fff);font-family:Courier New,monospace}.g702-header{text-align:center;margin-bottom:var(--spacing-lg, 24px);border-bottom:2px solid var(--color-text, #222);padding-bottom:var(--spacing-md, 16px)}.g702-title{margin:0;font-size:1.125rem;font-weight:700;text-transform:uppercase}.g702-subtitle{margin:var(--spacing-xs, 4px) 0 0;font-size:.875rem;color:var(--color-text-secondary, #555)}.g702-info{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-sm, 8px);margin-bottom:var(--spacing-lg, 24px);padding:var(--spacing-sm, 8px);background:var(--color-surface, #fafafa);border-radius:4px}.g702-info-row{display:flex;flex-direction:column;gap:2px}.g702-info-label{font-size:.75rem;color:var(--color-text-secondary, #555);text-transform:uppercase}.g702-info-value{font-size:.875rem;font-weight:600}.g702-status{font-size:.875rem;font-weight:600;text-transform:capitalize}.g702-status--draft{color:var(--color-text-secondary, #555)}.g702-status--submitted{color:var(--color-info, #2563eb)}.g702-status--approved,.g702-status--funded{color:var(--color-success, #16a34a)}.g702-table{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-lg, 24px)}.g702-table td{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border-bottom:1px solid var(--color-border, #e0e0e0);font-size:.875rem}.g702-line-num{width:40px;font-weight:500}.g702-line-desc{color:var(--color-text, #222)}.g702-line-amount{text-align:right;font-weight:500;white-space:nowrap}.g702-line-highlight td{font-weight:700;background:var(--color-surface, #fafafa);border-top:2px solid var(--color-text, #222);border-bottom:2px solid var(--color-text, #222)}.g702-signatures{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg, 24px);margin-top:var(--spacing-lg, 24px)}.g702-sig-block{display:flex;flex-direction:column;gap:var(--spacing-sm, 8px)}.g702-sig-label{font-size:.75rem;font-weight:500;text-transform:uppercase;color:var(--color-text-secondary, #555);margin:0}.g702-sig-line{height:1px;background:var(--color-text, #222);margin-top:var(--spacing-lg, 24px)}.g702-sig-date{font-size:.75rem;color:var(--color-text-secondary, #555);margin:0}.lw-tracker{border:1px solid var(--color-border, #e0e0e0);border-radius:4px;padding:var(--spacing-md, 16px)}.lw-tracker-header{display:flex;align-items:center;gap:var(--spacing-md, 16px);margin-bottom:var(--spacing-md, 16px)}.lw-tracker-title{margin:0;font-size:1rem;font-weight:600}.lw-tracker-summary{display:flex;gap:var(--spacing-sm, 8px);flex:1}.lw-summary-item{font-size:.8125rem;color:var(--color-text-secondary, #555)}.lw-form{padding:var(--spacing-md, 16px);background:var(--color-surface, #fafafa);border-radius:4px;margin-bottom:var(--spacing-md, 16px)}.lw-form-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:var(--spacing-sm, 8px)}.lw-form-label{display:flex;flex-direction:column;gap:2px;font-size:.8125rem;font-weight:500}.lw-form-actions{margin-top:var(--spacing-sm, 8px);display:flex;justify-content:flex-end}.lw-empty{color:var(--color-text-secondary, #555);font-size:.875rem;text-align:center;padding:var(--spacing-lg, 24px)}.lw-table{width:100%;border-collapse:collapse;font-size:.875rem}.lw-table th{text-align:left;padding:var(--spacing-sm, 8px);font-weight:500;color:var(--color-text-secondary, #555);border-bottom:1px solid var(--color-border, #e0e0e0)}.lw-table td{padding:var(--spacing-sm, 8px);border-bottom:1px solid var(--color-border-light, #f0f0f0)}.lw-type{text-transform:capitalize}.lw-amount{text-align:right;font-variant-numeric:tabular-nums}.lw-status{font-size:.75rem;font-weight:500;padding:2px 8px;border-radius:3px;text-transform:capitalize}.lw-status--pending{background:var(--color-warning-bg, #fef3cd);color:var(--color-warning, #b45309)}.lw-status--received{background:var(--color-success-bg, #d1fae5);color:var(--color-success, #16a34a)}.lw-status--waived{background:var(--color-info-bg, #dbeafe);color:var(--color-info, #2563eb)}.lw-actions{white-space:nowrap}.lw-error{color:var(--color-danger, #dc2626)}.ret-summary{border:1px solid var(--color-border, #e0e0e0);border-radius:4px;padding:var(--spacing-md, 16px)}.ret-summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md, 16px)}.ret-summary-title{margin:0;font-size:1rem;font-weight:600}.ret-total{display:flex;align-items:center;gap:var(--spacing-sm, 8px)}.ret-total-label{font-size:.875rem;color:var(--color-text-secondary, #555)}.ret-total-amount{font-size:1.125rem;font-weight:700}.ret-table{width:100%;border-collapse:collapse;font-size:.875rem}.ret-table th{text-align:left;padding:var(--spacing-sm, 8px);font-weight:500;color:var(--color-text-secondary, #555);border-bottom:1px solid var(--color-border, #e0e0e0)}.ret-table td{padding:var(--spacing-sm, 8px);border-bottom:1px solid var(--color-border-light, #f0f0f0)}.ret-name{font-weight:500}.ret-amount{text-align:right;font-variant-numeric:tabular-nums}.ret-held{font-weight:600}.ret-rate{text-align:right}.ret-waiver-count{text-align:center}.ret-waiver-pending{color:var(--color-warning, #b45309);font-weight:600}.ret-waiver-none{color:var(--color-text-secondary, #555)}.ret-waiver-received{color:var(--color-success, #16a34a);font-weight:500}.ret-footer td{border-top:2px solid var(--color-border, #e0e0e0);font-weight:700}.ret-footer-label{font-weight:700}.ret-empty{color:var(--color-text-secondary, #555);font-size:.875rem;text-align:center;padding:var(--spacing-lg, 24px)}.ret-error{color:var(--color-danger, #dc2626)}.dr-page{padding:var(--spacing-md, 16px);max-width:1200px}.dr-page-header{display:flex;align-items:center;gap:var(--spacing-md, 16px);margin-bottom:var(--spacing-md, 16px);flex-wrap:wrap}.dr-page-title-row{display:flex;align-items:center;gap:var(--spacing-sm, 8px);flex:1}.dr-page-title{margin:0;font-size:1.25rem;font-weight:700}.dr-page-count{font-size:.8125rem;color:var(--color-text-secondary, #555)}.dr-page-actions{display:flex;gap:var(--spacing-sm, 8px)}.dr-loading,.dr-error{text-align:center;padding:var(--spacing-xl, 32px)}.dr-error p{color:var(--color-danger, #dc2626)}.dr-form-wrapper{border:1px solid var(--color-border, #e0e0e0);border-radius:4px;padding:var(--spacing-md, 16px);margin-bottom:var(--spacing-md, 16px)}.dr-form-heading{margin:0 0 var(--spacing-md, 16px);font-size:1rem;font-weight:600}.dr-filters{display:flex;gap:var(--spacing-sm, 8px);margin-bottom:var(--spacing-md, 16px)}.dr-table-wrapper{overflow-x:auto}.dr-table{width:100%;border-collapse:collapse;font-size:.875rem}.dr-table th{text-align:left;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);font-weight:500;color:var(--color-text-secondary, #555);border-bottom:2px solid var(--color-border, #e0e0e0);white-space:nowrap}.dr-table td{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border-bottom:1px solid var(--color-border-light, #f0f0f0)}.dr-table-row{cursor:pointer}.dr-table-row:hover{background:var(--color-surface, #fafafa)}.dr-table-empty{text-align:center;color:var(--color-text-secondary, #555);padding:var(--spacing-xl, 32px)}.dr-number-cell{font-weight:600;white-space:nowrap}.dr-period-cell{white-space:nowrap;font-size:.8125rem}.dr-amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.dr-net{font-weight:600}.dr-pct{text-align:right}.dr-status-badge{font-size:.75rem;font-weight:500;padding:2px 8px;border-radius:3px;text-transform:capitalize}.dr-status--draft{background:var(--color-surface, #f5f5f5);color:var(--color-text-secondary, #555)}.dr-status--submitted{background:var(--color-info-bg, #dbeafe);color:var(--color-info, #2563eb)}.dr-status--approved{background:var(--color-success-bg, #d1fae5);color:var(--color-success, #16a34a)}.dr-status--funded{background:var(--color-success-bg, #d1fae5);color:var(--color-success, #065f46)}.dr-actions-cell{white-space:nowrap}.dr-actions-cell .btn{margin-right:var(--spacing-xs, 4px)}.dr-detail-actions{display:flex;gap:var(--spacing-sm, 8px);margin-bottom:var(--spacing-md, 16px);flex-wrap:wrap}.dr-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border, #e0e0e0);margin-bottom:var(--spacing-md, 16px)}.dr-tab{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border:none;background:none;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #555);border-bottom:2px solid transparent}.dr-tab:hover{color:var(--color-text, #222)}.dr-tab--active{color:var(--color-text, #222);border-bottom-color:var(--color-text, #222)}.dr-detail-content{min-height:300px}.dr-g703-view{overflow-x:auto}.dr-g703-table{width:100%;border-collapse:collapse;font-size:.875rem}.dr-g703-table th{text-align:left;padding:var(--spacing-sm, 8px);font-weight:500;color:var(--color-text-secondary, #555);border-bottom:2px solid var(--color-border, #e0e0e0)}.dr-g703-table td{padding:var(--spacing-sm, 8px);border-bottom:1px solid var(--color-border-light, #f0f0f0)}.dr-g703-table tfoot td{border-top:2px solid var(--color-border, #e0e0e0);font-weight:700}.receipt-review-page{padding:var(--space-6);max-width:960px}.receipt-review-header{margin-bottom:var(--space-4)}.review-notice{padding:var(--space-3) var(--space-4);background:var(--color-info-bg);color:var(--color-info-text);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-bottom:var(--space-4);border:1px solid var(--color-info-border)}.review-notice-success{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.review-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--space-4);align-items:start}.review-preview{background:var(--bg-surface);border:1px solid var(--color-gray-100);border-radius:var(--radius-md);padding:var(--space-3);position:sticky;top:var(--space-4)}.review-preview-image{width:100%;border-radius:var(--radius-sm);display:block}.review-form{display:flex;flex-direction:column;gap:var(--space-4)}.review-items-header{font-size:var(--font-size-xs);font-weight:500;color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.3px;margin-bottom:var(--space-2)}.review-items-list{display:flex;flex-direction:column;gap:var(--space-1)}.review-item-row{display:flex;justify-content:space-between;padding:var(--space-2);background:var(--color-gray-50);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.review-item-desc{color:var(--color-gray-600)}.review-item-amount{color:var(--color-gray-700);font-weight:500;font-variant-numeric:tabular-nums}@media(max-width:767px){.receipt-review-page{padding:var(--space-3)}.review-layout{grid-template-columns:1fr}.review-preview{position:static;max-height:200px;overflow:hidden}.review-preview-image{max-height:180px;object-fit:contain}.form-row{flex-direction:column}.form-row-2,.form-row-3{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}.receipt-scanner-page{padding:var(--space-6);max-width:720px}.receipt-scanner-header{margin-bottom:var(--space-4)}.scanner-content{display:flex;flex-direction:column;gap:var(--space-4)}.scanner-drop-zone{border:2px dashed var(--color-gray-200);border-radius:var(--radius-md);padding:var(--space-10);text-align:center;cursor:pointer;transition:border-color .15s,background-color .15s;min-height:240px;display:flex;align-items:center;justify-content:center}@media(hover:hover){.scanner-drop-zone:hover{border-color:var(--color-gray-300);background:var(--color-gray-50)}}.scanner-drop-zone-active{border-color:var(--color-accent);background:var(--color-accent-light)}.scanner-drop-zone-scanning{border-color:var(--color-accent);border-style:solid;cursor:default}.scanner-prompt{display:flex;flex-direction:column;gap:var(--space-1)}.scanner-title{font-size:var(--font-size-lg);font-weight:500;color:var(--color-gray-600)}.scanner-subtitle{font-size:var(--font-size-sm);color:var(--color-gray-400)}.scanner-formats{font-size:var(--font-size-xs);color:var(--color-gray-300);margin-top:var(--space-2)}.scanner-processing{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.scanner-spinner{width:32px;height:32px;border:3px solid var(--color-gray-200);border-top-color:var(--color-accent);border-radius:50%;animation:scanner-spin .8s linear infinite}@keyframes scanner-spin{to{transform:rotate(360deg)}}.scanner-status{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-600)}.scanner-hint{font-size:var(--font-size-xs);color:var(--color-gray-400)}.scanner-alt-actions{display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.scanner-or{font-size:var(--font-size-xs);color:var(--color-gray-400);text-transform:uppercase;letter-spacing:.5px}.scanner-error{padding:var(--space-3) var(--space-4);background:var(--color-danger-bg);color:var(--color-danger);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}@media(max-width:767px){.receipt-scanner-page{padding:var(--space-3)}.scanner-drop-zone{min-height:160px;padding:var(--space-6)}.scanner-alt-actions{flex-direction:column;gap:var(--space-2)}.scanner-alt-actions .btn{width:100%}}.aipm-inferences{width:100%}.aipm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-16, 16px)}.aipm-header h3{margin:0;font-size:var(--font-lg, 16px);font-weight:600}.aipm-filters select{padding:6px 12px;border:1px solid var(--color-border, #dee2e6);border-radius:4px;font-size:var(--font-sm, 13px);background:var(--color-bg, #fff)}.aipm-loading,.aipm-error,.aipm-empty{padding:var(--space-16, 16px);text-align:center;color:var(--color-text-muted, #6c757d);font-size:var(--font-sm, 13px)}.aipm-error{color:var(--color-danger, #dc3545)}.aipm-list{display:flex;flex-direction:column;gap:var(--space-8, 8px)}.aipm-card{border:1px solid var(--color-border, #dee2e6);border-radius:4px;padding:var(--space-16, 16px);background:var(--color-bg, #fff)}.aipm-card--applied{border-left:3px solid var(--color-success, #28a745)}.aipm-card--pending{border-left:3px solid var(--color-warning, #ffc107)}.aipm-card--rejected{border-left:3px solid var(--color-danger, #dc3545);opacity:.7}.aipm-card--undone{border-left:3px solid var(--color-text-muted, #6c757d);opacity:.7}.aipm-card-header{display:flex;align-items:center;gap:var(--space-8, 8px);margin-bottom:var(--space-8, 8px)}.aipm-badge{display:inline-block;padding:2px 6px;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;background:var(--color-info, #17a2b8);color:#fff;border-radius:3px}.aipm-status{font-size:var(--font-xs, 12px);font-weight:500;text-transform:capitalize}.aipm-status--applied{color:var(--color-success, #28a745)}.aipm-status--pending{color:var(--color-warning-text, #856404)}.aipm-status--rejected{color:var(--color-danger, #dc3545)}.aipm-status--undone{color:var(--color-text-muted, #6c757d)}.aipm-confidence{margin-left:auto;font-size:var(--font-xs, 12px);color:var(--color-text-muted, #6c757d)}.aipm-card-body{margin-bottom:var(--space-8, 8px)}.aipm-field{display:flex;gap:var(--space-8, 8px);align-items:baseline;margin-bottom:4px}.aipm-field-label{font-size:var(--font-sm, 13px);font-weight:500;color:var(--color-text-muted, #6c757d)}.aipm-field-value{font-size:var(--font-base, 14px);font-weight:600}.aipm-reasoning{font-size:var(--font-sm, 13px);color:var(--color-text-secondary, #495057);margin:4px 0;font-style:italic}.aipm-meta{display:flex;gap:var(--space-16, 16px);font-size:var(--font-xs, 12px);color:var(--color-text-muted, #6c757d)}.aipm-card-actions{display:flex;gap:var(--space-8, 8px)}.aipm-btn{padding:4px 12px;font-size:var(--font-sm, 13px);font-weight:500;border:1px solid var(--color-border, #dee2e6);border-radius:4px;background:var(--color-bg, #fff);cursor:pointer}.aipm-btn:disabled{opacity:.5;cursor:not-allowed}.aipm-btn--approve{color:var(--color-success, #28a745);border-color:var(--color-success, #28a745)}.aipm-btn--approve:hover:not(:disabled){background:var(--color-success, #28a745);color:#fff}.aipm-btn--reject{color:var(--color-danger, #dc3545);border-color:var(--color-danger, #dc3545)}.aipm-btn--reject:hover:not(:disabled){background:var(--color-danger, #dc3545);color:#fff}.aipm-btn--undo{color:var(--color-text-muted, #6c757d);border-color:var(--color-text-muted, #6c757d)}.aipm-btn--undo:hover:not(:disabled){background:var(--color-text-muted, #6c757d);color:#fff}.credential-warning{display:flex;align-items:center;gap:var(--space-3);padding:10px 16px;background:var(--color-warning-bg, #fff8e6);border:1px solid var(--color-warning-border, #ffe0a0);border-radius:6px;margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.credential-warning-text{color:var(--color-warning-text, #946200)}.credential-warning-link{background:none;border:none;color:var(--color-accent);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;text-decoration:underline;padding:0}@media(hover:hover){.credential-warning-link:hover{color:var(--color-accent-hover)}}
