:root{--gpe-blue: #307FE2;--gpe-blue-light: #E8F1FC;--gpe-blue-dark: #1E5BB0;--sensocab-mint: #44B59D;--sensocab-mint-light: #E8F6F2;--nicolay-red: #a72920;--primary-rgb: 42 115 212;--primary: rgb(var(--primary-rgb));--primary-foreground: #FFFFFF;--primary-light: #E8F1FC;--primary-dark: #1E5BB0;--background: #F8FAFC;--foreground: #0F172A;--card: #FFFFFF;--card-foreground: #0F172A;--popover: #FFFFFF;--popover-foreground: #0F172A;--secondary: #E8F6F2;--secondary-foreground: #0F172A;--muted: #F1F5F9;--muted-foreground: #475569;--accent: #E8F1FC;--accent-foreground: #1E5BB0;--text-hint: #64748B;--success: #44B59D;--success-strong: #277459;--success-light: #E8F6F2;--success-foreground: #0F172A;--success-border: #7ACBB6;--warning: #D97706;--warning-strong: #B45309;--warning-light: #FEF3C7;--warning-foreground: #FFFFFF;--warning-border: #FBBF3B;--destructive: #a72920;--destructive-light: #F7E7E5;--destructive-foreground: #FFFFFF;--destructive-border: #DDA39E;--border: #E2E8F0;--border-light: #F1F5F9;--input: #E2E8F0;--ring: rgb(var(--primary-rgb));--sidebar: #0B2C49;--sidebar-foreground: #E2E8F0;--sidebar-foreground-muted: rgba(226,232,240,.7);--sidebar-accent: #0E385D;--sidebar-border: #16456B;--sidebar-primary: rgb(var(--primary-rgb));--sidebar-hover: rgba(255,255,255,.06);--sidebar-hover-strong: rgba(255,255,255,.12);--sidebar-foreground-subtle: rgba(255,255,255,.55);--sidebar-ring: #FFFFFF;--sidebar-control-border: rgba(255,255,255,.4);--brand-divider: rgba(255,255,255,.15);--sidebar-badge-ink-3: #F6CE7A;--sidebar-badge-ink-7: #F4C2D5;--sidebar-badge-ink-5: #BEB8DF;--radius-sm: 4px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--radius: .5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--space-inline: var(--space-2);--space-card: var(--space-4);--space-stack: var(--space-4);--space-section: var(--space-6);--space-page: var(--space-6);--font-headline: Nunito, system-ui, "Segoe UI", Arial, sans-serif;--font-sans: Arial, "Liberation Sans", Arimo, "Helvetica Neue", Helvetica, sans-serif;--shadow-xs: 0 1px 2px rgba(0,0,0,.04);--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 24px rgba(0,0,0,.1);--motion-duration-instant: .1s;--motion-duration-fast: .15s;--motion-duration-base: .2s;--motion-duration-slow: .3s;--motion-ease-out: cubic-bezier(.16, 1, .3, 1);--motion-ease-in-out: cubic-bezier(.65, 0, .35, 1);--motion-ease-in: cubic-bezier(.4, 0, 1, 1);--motion-ease-linear: linear;--z-base: 0;--z-raised: 10;--z-sticky: 20;--z-header: 30;--z-backdrop:40;--z-overlay: 50;--chart-1: #2A73D4;--chart-2: #1BAF7A;--chart-3: #EDA100;--chart-4: #008300;--chart-5: #4A3AA7;--chart-6: #E34948;--chart-7: #E87BA4;--chart-8: #EB6834;--chart-grid: #E2E8F0;--chart-axis: #64748B;--chart-3-ink: #966600;--chart-5-ink: #4A3AA7;--chart-7-ink: #D12465;--muted-foreground-strong: #475569;--file-doc: #185ABD;--file-doc-ink: #185ABD;--file-xls: #107C41;--file-xls-ink: #107B41;--file-pdf: #B30B00;--file-pdf-ink: #B30B00;--file-ppt: #ED6C47;--file-ppt-ink: #C73C13}.dark{--background: #020617;--foreground: #F1F5F9;--card: #0F172A;--card-foreground: #F1F5F9;--popover: #0F172A;--popover-foreground: #F1F5F9;--primary: #60A5FA;--primary-foreground: #020617;--accent: #14273F;--accent-foreground: #93C5FD;--secondary: #0F2B25;--secondary-foreground: #5FC9B0;--muted: #1E293B;--muted-foreground: #94A3B8;--success: #5FC9B0;--destructive: #E06B62;--border: #1E293B;--input: #1E293B;--ring: #60A5FA;--sidebar: #06182B;--sidebar-border: #123350;--chart-1: #3987E5;--chart-2: #199E70;--chart-3: #C98500;--chart-4: #008300;--chart-5: #9085E9;--chart-6: #E66767;--chart-7: #D55181;--chart-8: #D95926;--chart-grid: #1E293B;--chart-axis: #94A3B8;--chart-3-ink: #C98500;--chart-5-ink: #9085E9;--chart-7-ink: #D9608C;--muted-foreground-strong: #94A3B8;--text-hint: #94A3B8;--file-doc-ink: #4586E7;--file-xls-ink: #149D52;--file-pdf-ink: #E96B63;--file-ppt-ink: #ED6C47}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-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-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:var(--font-mono);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--leading-normal:1.5;--radius-sm:var(--radius-sm);--radius-md:.375rem;--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--shadow-xs:var(--shadow-xs);--shadow-sm:var(--shadow-sm);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--radius-full:var(--radius-full);--font-headline:var(--font-headline);--animate-overlay-in:overlay-in var(--motion-duration-slow) var(--motion-ease-out);--animate-dialog-in:dialog-in var(--motion-duration-slow) var(--motion-ease-out);--animate-popover-in:popover-in var(--motion-duration-fast) var(--motion-ease-out)}}@layer base,components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.top-1\/2{top:50%}.top-3\.5{top:calc(var(--spacing) * 3.5)}.right-3\.5{right:calc(var(--spacing) * 3.5)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.z-50{z-index:50}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mb-3\.5{margin-bottom:calc(var(--spacing) * 3.5)}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[80vh\]{max-height:80vh}.w-2\/3{width:66.6667%}.w-3\/4{width:75%}.w-4\/5{width:80%}.w-5\/6{width:83.3333%}.w-11\/12{width:91.6667%}.w-16{width:calc(var(--spacing) * 16)}.w-24{width:calc(var(--spacing) * 24)}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-full{width:100%}.max-w-lg{max-width:var(--container-lg)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.origin-\[var\(--radix-select-content-transform-origin\)\]{transform-origin:var(--radix-select-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.self-end{align-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-border{border-color:var(--border)}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--destructive) 30%,transparent)}}.border-success\/30{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.border-success\/30{border-color:color-mix(in oklab,var(--success) 30%,transparent)}}.border-transparent{border-color:#0000}.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-card{background-color:var(--card)}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.bg-muted{background-color:var(--muted)}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-success-strong{background-color:var(--success-strong)}.bg-success\/10{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--success) 10%,transparent)}}.bg-transparent{background-color:#0000}.p-1{padding:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pl-8{padding-left:calc(var(--spacing) * 8)}.font-sans{font-family:var(--font-sans)}.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))}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-success-strong{color:var(--success-strong)}.text-warning-strong{color:var(--warning-strong)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.shadow-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-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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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))}.duration-fast{--tw-duration:var(--motion-duration-fast);transition-duration:var(--motion-duration-fast)}.duration-instant{--tw-duration:var(--motion-duration-instant);transition-duration:var(--motion-duration-instant)}.ease-out{--tw-ease:var(--motion-ease-out);transition-timing-function:var(--motion-ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.hover\:border-text-hint:hover{border-color:var(--text-hint)}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/10:hover{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary-dark:hover{background-color:var(--primary-dark)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.hover\:bg-success-strong\/90:hover{background-color:var(--success-strong)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-success-strong\/90:hover{background-color:color-mix(in oklab,var(--success-strong) 90%,transparent)}}.hover\:bg-success\/10:hover{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-success\/10:hover{background-color:color-mix(in oklab,var(--success) 10%,transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=open\]\:animate-dialog-in[data-state=open]{animation:var(--animate-dialog-in)}.data-\[state\=open\]\:animate-overlay-in[data-state=open]{animation:var(--animate-overlay-in)}.data-\[state\=open\]\:animate-popover-in[data-state=open]{animation:var(--animate-popover-in)}.\[\&_a\]\:text-primary a{color:var(--primary)}.\[\&_a\]\:no-underline a{text-decoration-line:none}.\[\&_a\:hover\]\:underline a:hover{text-decoration-line:underline}.\[\&_h3\]\:mt-4\.5 h3{margin-top:calc(var(--spacing) * 4.5)}.\[\&_h3\]\:mb-1\.5 h3{margin-bottom:calc(var(--spacing) * 1.5)}.\[\&_h3\]\:font-semibold h3{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h3\]\:text-foreground h3{color:var(--foreground)}.\[\&_h3\:first-child\]\:mt-0 h3:first-child{margin-top:0}.\[\&_p\]\:mb-3 p{margin-bottom:calc(var(--spacing) * 3)}.\[\&_p\:last-child\]\:mb-0 p:last-child{margin-bottom:0}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes popover-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@font-face{font-family:Nunito;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/nunito.woff2) format("woff2-variations")}:root{--sidebar-width: 256px;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}@layer base{*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}}body{font-family:var(--font-sans);font-size:14px;background:var(--background);color:var(--foreground);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,.login-app-name,.login-title,.sidebar-brand-name,.welcome-greeting,.modal-title,.source-name,.admin-stat-label,.admin-stat-value{font-family:var(--font-headline)}#root{min-height:100vh}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.skip-link{position:fixed;top:8px;left:8px;z-index:var(--z-overlay);padding:8px 16px;background:var(--card);color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);font-size:14px;text-decoration:none;transform:translateY(-200%);transition:transform var(--motion-duration-fast) var(--motion-ease-out)}.skip-link:focus{transform:translateY(0)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-hint)}.sidebar{background:var(--sidebar);color:#fff;padding:12px 16px 0;display:flex;flex-direction:column;height:100vh;position:sticky;top:0}.sidebar :focus-visible{outline-color:var(--sidebar-ring)}.sidebar-brand{padding:0 0 12px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:4px;display:flex;align-items:center;gap:12px}.sidebar-brand-lockup{display:flex;align-items:baseline;gap:12px;flex:1;min-width:0}.sidebar-logo{height:22px;width:auto;flex-shrink:0;display:block;filter:brightness(0) invert(1)}.sidebar-brand-name{font-size:14px;font-weight:600;color:var(--sidebar-foreground);line-height:1;letter-spacing:-.1px}.sidebar-collapse-btn{width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--sidebar-foreground-subtle);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out);flex-shrink:0;margin-left:-4px}.sidebar-collapse-btn:hover{background:var(--sidebar-hover);color:var(--sidebar-foreground)}.sidebar-section{padding:0;margin-bottom:4px}.new-chat-btn{display:flex;align-items:center;gap:12px;width:100%;margin:4px 0;padding:8px;border-radius:var(--radius-lg);border:none;background:transparent;color:var(--sidebar-foreground);font-size:14px;font-weight:500;cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out);font-family:var(--font-sans);text-align:left}.new-chat-btn svg{flex-shrink:0}.new-chat-btn:hover{background:var(--sidebar-hover);color:#fff}.sidebar-search{margin-top:4px}.search-input-wrap{display:flex;align-items:center;gap:8px;padding:0 8px;height:34px;border-radius:var(--radius-lg);background:var(--sidebar-hover);transition:background-color var(--motion-duration-instant) var(--motion-ease-out),box-shadow var(--motion-duration-instant) var(--motion-ease-out)}.search-input-wrap:focus-within,.search-input-wrap.active{background:var(--sidebar-hover)}.search-input-wrap:has(:focus-visible){outline:2px solid var(--sidebar-ring);outline-offset:2px}.search-icon{color:var(--sidebar-foreground-subtle);flex-shrink:0}.search-input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--sidebar-foreground);font-size:14px;font-family:var(--font-sans);padding:0;margin:0}.search-input::placeholder{color:var(--sidebar-foreground-subtle)}.search-input::-webkit-search-cancel-button,.search-input::-webkit-search-decoration{-moz-appearance:none;appearance:none;-webkit-appearance:none}.search-clear-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--sidebar-foreground-subtle);cursor:pointer;flex-shrink:0;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out)}.search-clear-btn:hover{background:var(--sidebar-hover-strong);color:#fff}.search-state{padding:16px 8px 4px;font-size:12px;color:var(--sidebar-foreground-subtle);font-style:italic}.conv-search-result .conversation-item{flex-direction:column;align-items:flex-start;gap:4px;padding-top:8px;padding-bottom:8px;height:auto;white-space:normal}.conv-search-result .conv-title{font-size:14px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.conv-snippet{font-size:12px;line-height:1.4;color:var(--sidebar-foreground-subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.search-mark{background:#facc1552;color:#fff;border-radius:var(--radius-sm);padding:0 1px;font-weight:600}.conv-snippet .search-mark{font-weight:600;color:var(--sidebar-foreground)}.sidebar-conversations{flex:1;min-height:0;display:flex;flex-direction:column;margin-top:0;margin-right:-8px}.conversation-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:4px 8px 8px 4px;margin-left:-4px;scroll-padding:44px 4px 4px 4px}.conversation-list::-webkit-scrollbar{width:6px}.conversation-list::-webkit-scrollbar-track{background:transparent}.conversation-list::-webkit-scrollbar-thumb{background:var(--sidebar-hover);border-radius:var(--radius-sm)}.conversation-list::-webkit-scrollbar-thumb:hover{background:var(--sidebar-hover-strong)}.conv-group{margin-bottom:4px}.conv-group-label{position:sticky;top:0;z-index:var(--z-raised);font-size:12px;font-weight:600;color:var(--sidebar-foreground-subtle);padding:16px 8px 4px;margin-bottom:4px;letter-spacing:.3px;text-transform:uppercase;background:var(--sidebar);background-image:linear-gradient(to bottom,var(--sidebar) 0%,var(--sidebar) 80%,transparent 100%)}.conv-group:first-child .conv-group-label{padding-top:8px}.conv-item-wrap{display:flex;align-items:center;border-radius:var(--radius-lg);position:relative}.conv-item-wrap .conversation-item{flex:1;min-width:0;border-radius:var(--radius-lg)}.conv-menu-wrap{flex-shrink:0;position:relative;margin-right:4px}.conv-menu-btn{width:24px;height:24px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--sidebar-foreground-subtle);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--motion-duration-instant) var(--motion-ease-out),background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out);flex-shrink:0}.conv-item-wrap:hover .conv-menu-btn,.conv-item-wrap.active .conv-menu-btn,.conv-menu-btn[data-state=open]{opacity:1}.conv-menu-btn:hover{background:var(--sidebar-hover-strong);color:var(--sidebar-foreground)}.conv-menu-btn:focus-visible{outline:2px solid var(--sidebar-ring);outline-offset:2px;opacity:1}.conv-menu-dropdown{background:var(--sidebar-accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:4px;min-width:140px;z-index:var(--z-overlay);animation:menuFadeIn var(--motion-duration-base) var(--motion-ease-out)}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.conv-menu-item{display:block;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--sidebar-foreground);font-size:14px;font-family:var(--font-sans);text-align:left;cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out)}.conv-menu-item:hover,.conv-menu-item[data-highlighted]{background:var(--sidebar-hover)}.conv-menu-item[data-highlighted]{outline:none}.conv-menu-item:focus-visible{outline:2px solid var(--sidebar-ring);outline-offset:-2px}.conv-item-wrap:hover{background:var(--sidebar-hover)}.conv-item-wrap.active{background:var(--sidebar-primary)}.conv-item-wrap.active .conv-menu-btn{color:var(--sidebar-foreground)}.conv-rename-wrap{display:flex;align-items:center;gap:8px;padding:0 4px}.conv-rename-wrap .conv-rename-input{flex:1;min-width:0}.conv-rename-counter{flex-shrink:0;font-size:12px;color:var(--sidebar-foreground-subtle);font-variant-numeric:tabular-nums}.conversation-item{display:flex;align-items:center;width:100%;padding:8px;border:none;border-radius:var(--radius-lg);background:transparent;color:var(--sidebar-foreground-muted);font-size:14px;font-family:var(--font-sans);cursor:pointer;transition:color var(--motion-duration-instant) var(--motion-ease-out);text-align:left}.conv-item-wrap:hover .conversation-item,.conversation-item:hover{color:var(--sidebar-foreground)}.conv-item-wrap.active .conversation-item,.conversation-item.active{color:#fff}.conv-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.conv-rename-input{width:100%;padding:8px;border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-lg);background:var(--sidebar-hover-strong);color:var(--sidebar-foreground);font-size:14px;font-family:var(--font-sans);box-sizing:border-box}.conv-rename-input:focus-visible{outline:2px solid var(--sidebar-ring);outline-offset:-2px}.sidebar-spacer{flex:0}.sidebar-more{padding:0;margin-bottom:4px}.sidebar-more-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:8px;border:none;border-radius:var(--radius-lg);background:transparent;color:var(--sidebar-foreground-muted);font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out)}.sidebar-more-toggle svg{flex-shrink:0;width:16px;height:16px}.sidebar-more-toggle:hover{color:var(--sidebar-foreground);background:var(--sidebar-hover)}.sidebar-more-items{padding:4px 0}.sidebar-more-item{display:flex;align-items:center;gap:12px;padding:8px 8px 8px 36px;font-size:12px;color:var(--sidebar-foreground-subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-more-item svg{flex-shrink:0}.sidebar-more-badge{margin-left:auto;font-size:12px;color:var(--sidebar-foreground-subtle);flex-shrink:0;padding-left:8px}.sidebar-admin-link{margin:8px 8px 12px;padding:8px;display:flex;align-items:center;gap:8px;border-radius:var(--radius-sm);font-size:14px;color:var(--sidebar-foreground-muted);text-decoration:none;white-space:nowrap;background:var(--sidebar-hover);border:1px solid rgba(255,255,255,.06);transition:background var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out)}.sidebar-admin-link>span:not(.admin-role-pill){min-width:0;overflow:hidden;text-overflow:ellipsis}.sidebar-admin-link:hover{background:var(--sidebar-hover);color:var(--sidebar-foreground)}.sidebar-admin-link .admin-role-pill{margin-left:auto;flex-shrink:0;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:4px 8px;border-radius:var(--radius-full)}.sidebar-admin-link .admin-role-pill.admin-role-admin{background:color-mix(in srgb,var(--chart-3) 20%,transparent);color:var(--sidebar-badge-ink-3)}.sidebar-admin-link .admin-role-pill.admin-role-support{background:color-mix(in srgb,var(--chart-7) 20%,transparent);color:var(--sidebar-badge-ink-7)}.sidebar-bottom{margin-top:auto;padding:8px 0 12px;border-top:1px solid rgba(255,255,255,.06)}.user-info{display:flex;align-items:center;gap:12px;padding:8px}.user-avatar-img{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-avatar-initials{width:32px;height:32px;border-radius:50%;background:var(--sidebar-hover-strong);color:var(--sidebar-foreground-muted);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.user-meta{flex:1;min-width:0;display:flex;align-items:center}.user-name{font-size:14px;font-weight:500;color:var(--sidebar-foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{margin-left:auto;background:none;border:none;color:var(--sidebar-foreground-subtle);cursor:pointer;width:28px;height:28px;padding:0;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),color var(--motion-duration-fast) var(--motion-ease-out);flex-shrink:0}.logout-btn:hover{color:var(--sidebar-foreground);background:var(--sidebar-hover)}@media(max-width:768px){.sidebar{display:none}}.app-layout{display:grid;grid-template-columns:var(--sidebar-width) 1fr;height:100vh;overflow:hidden;transition:grid-template-columns var(--motion-duration-base) var(--motion-ease-out)}.app-layout.sidebar-collapsed{grid-template-columns:0 1fr}.app-layout.sidebar-collapsed .chat-header{padding-left:52px}.app-layout.sidebar-collapsed .sidebar{opacity:0;pointer-events:none;visibility:hidden}.main-content{background:var(--card);display:flex;flex-direction:column;overflow:hidden;position:relative}.sidebar-expand-btn{position:fixed;top:12px;left:16px;z-index:var(--z-header);width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--muted-foreground);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),color var(--motion-duration-fast) var(--motion-ease-out)}.sidebar-expand-btn:hover{background:var(--background);color:var(--foreground)}@media(max-width:768px){.app-layout{grid-template-columns:1fr}}.doc-preview-pane{display:flex;flex-direction:column;width:480px;min-width:360px;max-width:70vw;height:100%;border-left:1px solid var(--border);background:var(--card);overflow:hidden;flex-shrink:0;animation:previewSlideIn var(--motion-duration-slow) var(--motion-ease-out)}.doc-preview-pane.doc-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%!important;max-width:100%;min-width:0;z-index:var(--z-overlay);border-left:none;box-shadow:var(--shadow-lg);animation:previewOverlayIn var(--motion-duration-slow) var(--motion-ease-out)}@keyframes previewSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes previewOverlayIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.doc-preview-header{display:flex;align-items:center;gap:8px;height:52px;padding:0 12px 0 16px;border-bottom:1px solid var(--border);background:var(--card);flex-shrink:0}.doc-preview-title{flex:1;min-width:0;font-size:14px;font-weight:500;color:var(--foreground);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-preview-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.doc-preview-action-btn--error{border-color:var(--destructive);color:var(--destructive);background:var(--destructive-light)}.doc-preview-action-btn--success{border-color:var(--success-strong);color:var(--success-strong);background:var(--success-light);animation:doc-preview-success-flash 1.5s var(--motion-ease-out) forwards}@keyframes doc-preview-success-flash{0%{opacity:1}80%{opacity:1}to{opacity:.6}}.doc-preview-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.doc-preview-body{flex:1;overflow:auto;position:relative;background:var(--background)}.doc-preview-iframe{width:100%;height:100%;border:none;display:block;background:var(--background)}.doc-preview-pane.is-resizing .doc-preview-iframe{pointer-events:none}.doc-preview-iframe-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--background);display:flex;align-items:center;justify-content:center;z-index:var(--z-raised)}.doc-preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;color:var(--muted-foreground);font-size:14px}.doc-preview-skeleton{height:100%;overflow:hidden;padding:16px;display:flex;justify-content:center}.doc-preview-skeleton-page{width:100%;max-width:640px;display:flex;flex-direction:column;gap:12px;padding:24px;background:var(--card);border:1px solid var(--border-light);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xs)}@keyframes spin{to{transform:rotate(360deg)}}.doc-preview-spinner{animation:spin 1s var(--motion-ease-linear) infinite;color:var(--primary)}.doc-preview-pdf-container{overflow:auto;padding:16px;display:flex;justify-content:center;min-height:100%}.doc-preview-canvas{max-width:100%;box-shadow:var(--shadow-md);border-radius:var(--radius-sm);background:var(--card);display:block}.doc-preview-pdf-nav{display:flex;align-items:center;justify-content:center;gap:12px;height:44px;border-top:1px solid var(--border);background:var(--card);flex-shrink:0}.doc-preview-page-info{font-size:12px;color:var(--muted-foreground);min-width:60px;text-align:center}.doc-preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;padding:32px 24px;text-align:center;color:var(--muted-foreground)}.doc-preview-error svg{color:var(--warning)}.doc-preview-error p{font-size:14px;line-height:1.5;color:var(--foreground)}.doc-preview-error-detail{font-size:12px;color:var(--muted-foreground);max-width:320px;word-break:break-word}.doc-preview-fallback-link{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:8px 16px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card);color:var(--primary);font-size:14px;font-weight:500;text-decoration:none;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),border-color var(--motion-duration-instant) var(--motion-ease-out)}.doc-preview-fallback-link:hover{background:var(--primary-light);border-color:var(--primary)}.doc-preview-fallback-link:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.chat-split-wrapper{display:flex;height:100%;overflow:hidden}.chat-main-col{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;--trainer-banner-h: 36px;container:chatmain / inline-size}.chat-header{position:sticky;top:0;z-index:var(--z-header);display:grid;grid-template-columns:1fr minmax(0,auto) 1fr;align-items:center;gap:16px;height:52px;padding:0 20px;background:var(--card);border-bottom:1px solid var(--border)}.chat-header-left{display:flex;align-items:center;gap:4px;min-width:max-content}.chat-header-center{display:flex;align-items:center;gap:8px;justify-content:center;min-width:0}.chat-header-title{font-size:14px;font-weight:600;color:var(--muted-foreground);max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-right{display:flex;align-items:center;justify-content:flex-end}.mode-tabs{display:flex;align-items:center;gap:4px;flex-shrink:0}.mode-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-lg);border:1px solid transparent;background:transparent;color:var(--muted-foreground);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out),border-color var(--motion-duration-instant) var(--motion-ease-out);line-height:1;white-space:nowrap;flex-shrink:0}.mode-tab:hover:not(:disabled):not([aria-pressed=true]){background:var(--background);color:var(--foreground)}.mode-tab:disabled{opacity:.5;cursor:not-allowed}.mode-tab[aria-pressed=true]{background:var(--background);color:var(--foreground);border-color:var(--border)}.mode-tab:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.role-select-group{display:flex;align-items:center;gap:8px;margin-left:12px;padding-left:12px;border-left:1px solid var(--border);flex-shrink:0}.role-select-label{font-size:14px;color:var(--muted-foreground);font-weight:400}.trainer-disclaimer{display:flex;align-items:center;justify-content:center;height:var(--trainer-banner-h);flex-shrink:0;padding:0 20px;font-size:14px;color:var(--warning-strong);background:var(--warning-light);border-bottom:1px solid var(--warning-border);text-align:center}.trainer-banner-slot{height:var(--trainer-banner-h);flex-shrink:0}.confidence-disclaimer{margin:12px 0 4px;padding:12px 16px;font-size:14px;line-height:1.45;color:var(--muted-foreground);background:var(--background);border-left:3px solid var(--text-hint);border-radius:var(--radius-sm)}.quick-replies{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 12px 52px;max-width:100%}.quick-reply-chip{display:inline-flex;align-items:center;padding:6px 14px;font-size:12px;font-weight:600;font-family:inherit;color:var(--accent-foreground);background:var(--accent);border:none;border-radius:var(--radius-full);cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out)}.quick-reply-chip:hover{background:color-mix(in srgb,var(--primary) 15%,var(--accent))}.quick-reply-chip:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@container chatmain (max-width: 900px){.chat-header.is-trainer .mode-tab span,.chat-header.is-trainer .role-select-label{display:none}}@media(max-width:900px){.mode-tab span{display:none}.mode-tab{padding:8px 10px}.role-select-label{display:none}}@media(max-width:600px){.chat-header{height:auto;padding:8px 12px;gap:8px}.chat-header-center{order:3;grid-column:1 / -1;justify-content:flex-start;padding-top:4px}.role-select-label,.mode-tab span{display:none}.trainer-disclaimer{padding:0 12px;font-size:14px}.quick-replies{padding-left:12px}}.fab-scroll-top{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);z-index:var(--z-sticky);width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--foreground);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:background-color var(--motion-duration-fast) var(--motion-ease-out);animation:fabFadeIn var(--motion-duration-base) var(--motion-ease-out)}.fab-scroll-top:hover{background:var(--accent)}@keyframes fabFadeIn{0%{opacity:0;transform:translate(-50%,4px)}to{opacity:1;transform:translate(-50%)}}.welcome-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:clamp(104px,20vh,240px) 24px 80px;gap:8px;animation:welcomeFadeIn var(--motion-duration-slow) var(--motion-ease-out)}@keyframes welcomeFadeIn{0%{opacity:0}to{opacity:1}}.welcome-greeting{font-size:30px;font-weight:600;color:var(--foreground);letter-spacing:-.3px}.welcome-subtitle{font-size:14px;color:var(--muted-foreground);font-weight:400}.suggestions-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:580px;width:100%;margin-top:24px}.suggestion-chip{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--border);border-radius:var(--radius-2xl);background:var(--card);cursor:pointer;text-align:left;font-size:14px;line-height:1.5;color:var(--muted-foreground);font-family:var(--font-sans);transition:background-color var(--motion-duration-fast) var(--motion-ease-out),border-color var(--motion-duration-fast) var(--motion-ease-out),color var(--motion-duration-fast) var(--motion-ease-out)}.suggestion-chip:hover{border-color:var(--border);background:var(--background);color:var(--foreground)}.suggestion-chip:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.suggestion-icon{flex-shrink:0;margin-top:2px}@media(max-width:600px){.suggestions-grid{grid-template-columns:1fr}}.chat-area{flex:1;overflow-y:auto;scrollbar-gutter:stable;display:flex;flex-direction:column}.chat-area :is(a[href],button,input,textarea,select,[tabindex]:not([tabindex="-1"])){scroll-margin-top:64px}.messages-container{max-width:720px;width:100%;margin:0 auto;padding:32px 24px 24px;display:flex;flex-direction:column;gap:32px}.msg{display:flex;gap:16px;animation:fadeIn var(--motion-duration-base) var(--motion-ease-out)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg-user{flex-direction:row-reverse}.msg-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.avatar-bot{width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--primary);display:flex;align-items:center;justify-content:center}.avatar-bot-icon{width:16px;height:16px;display:block}.msg-user .msg-avatar{background:var(--primary);color:var(--primary-foreground);overflow:hidden}.msg-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-initials{font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.msg-content{flex:1;min-width:0;max-width:100%}.msg-user .msg-content{display:flex;justify-content:flex-end}.msg-body{font-size:14px;line-height:1.7;position:relative;color:var(--foreground)}.msg-body p{margin-bottom:12px}.msg-body p:last-child{margin-bottom:0}.msg-body h1,.msg-body h2,.msg-body h3,.msg-body h4{font-weight:600;margin:20px 0 8px;line-height:1.35;text-transform:none;letter-spacing:-.1px;color:var(--foreground)}.msg-body h1{font-size:18px}.msg-body h2{font-size:14px}.msg-body h3,.msg-body h4{font-size:14px;color:var(--foreground)}.msg-body h1:first-child,.msg-body h2:first-child,.msg-body h3:first-child,.msg-body h4:first-child{margin-top:0}.msg-body hr{display:none}.msg-body strong{font-weight:600}.msg-body ul,.msg-body ol{margin:8px 0;padding-left:24px}.msg-body li{margin-bottom:4px}.msg-assistant .msg-body{background:transparent;padding:0}.msg-user .msg-body{background:var(--primary);border-radius:var(--radius-2xl);padding:12px 20px;color:var(--primary-foreground);max-width:85%}.msg-body.error{border:1px solid var(--destructive);background:var(--destructive-light);color:var(--destructive);border-radius:var(--radius-xl);padding:12px 16px}.copy-btn{position:absolute;bottom:-32px;left:0;opacity:.65;transition:opacity var(--motion-duration-fast) var(--motion-ease-out)}.msg-body:hover .copy-btn{opacity:1}.typing-cursor{display:inline-block;width:2px;height:14px;background:var(--primary);margin-left:2px;vertical-align:text-bottom;animation:blink .8s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.msg-meta{font-size:12px;color:var(--muted-foreground);margin-top:12px;letter-spacing:.2px}.msg-feedback{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.fb-label{font-size:12px;color:var(--muted-foreground);margin-right:4px}.fb-comment-form{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-width:200px;max-width:480px}.fb-comment-label{font-size:12px;color:var(--muted-foreground)}.fb-comment-row{display:flex;align-items:center;gap:4px}.fb-comment-input{flex:1;padding:8px 12px;font-size:12px;font-family:inherit;border:1px solid var(--border);background:var(--card);color:var(--foreground);border-radius:var(--radius-lg);outline:none}.fb-comment-input:focus{border-color:var(--primary)}.fb-comment-submit{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--primary);background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-lg);cursor:pointer;transition:opacity var(--motion-duration-fast) var(--motion-ease-out)}.fb-comment-submit:hover{opacity:.85}.fb-comment-submit:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.fb-saved-flash{font-size:12px;color:var(--success-strong);font-weight:500;animation:fb-flash var(--motion-duration-slow) var(--motion-ease-in)}@keyframes fb-flash{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.fb-comment-badge{font-size:12px;color:var(--muted-foreground);font-style:italic;background:transparent;border:none;padding:0;cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px}.fb-comment-badge:hover{color:var(--foreground)}.msg-body pre{background:var(--sidebar);color:var(--sidebar-foreground);border-radius:var(--radius-lg);padding:16px;margin:12px 0;overflow-x:auto;font-size:12px;line-height:1.55;font-family:var(--font-mono)}.msg-body pre code{background:none;padding:0;font-size:inherit;color:inherit;border-radius:0}.msg-body code{background:var(--muted);padding:1px 5px;border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);color:var(--primary)}.msg-body table{border-collapse:collapse;width:100%;margin:12px 0;font-size:14px;overflow-x:auto;display:block}.msg-body thead th{background:var(--background);font-weight:500;text-align:left;padding:8px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.msg-body tbody td{padding:8px 12px;border-bottom:1px solid var(--border-light);font-variant-numeric:tabular-nums}.msg-body tbody tr:hover{background:var(--muted)}.msg-sources{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-light)}.sources-label{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--muted-foreground);font-weight:600;margin-bottom:8px}.source-cards{display:flex;flex-direction:column;gap:4px}.source-card{display:flex;align-items:stretch;border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:border-color var(--motion-duration-fast) var(--motion-ease-out)}.source-card.has-actions:hover{border-color:var(--border)}.source-card.source-card-active{border-color:var(--primary);background:var(--primary-light)}.source-card-main{flex:1;min-width:0;display:flex;align-items:flex-start;gap:8px;padding:8px 8px 8px 12px;background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit;transition:background var(--motion-duration-instant) var(--motion-ease-out)}.source-card-main:disabled{cursor:default}.source-card.has-actions .source-card-main:hover:not(:disabled){background:var(--background)}.source-card.source-card-active .source-card-main:hover{background:rgb(var(--primary-rgb) / .15)}.source-card-ext-link{display:flex;align-items:flex-start;justify-content:center;padding-top:8px;width:24px;flex-shrink:0;background:transparent;color:var(--muted-foreground);text-decoration:none;transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out)}.source-card-ext-link:hover{background:var(--background);color:var(--primary)}.source-card-main:focus-visible,.source-card-ext-link:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.source-preview-icon{flex-shrink:0;color:var(--muted-foreground);margin-top:0;transition:color var(--motion-duration-instant) var(--motion-ease-out)}.source-preview-icon.active{color:var(--primary)}.source-icon{width:26px;height:26px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.3px;line-height:1;margin-top:1px}.source-icon.pdf{background:color-mix(in srgb,var(--file-pdf) 11%,var(--card));color:var(--file-pdf-ink)}.source-icon.xlsx{background:color-mix(in srgb,var(--file-xls) 11%,var(--card));color:var(--file-xls-ink)}.source-icon.docx{background:color-mix(in srgb,var(--file-doc) 11%,var(--card));color:var(--file-doc-ink)}.source-content{flex:1;min-width:0}.source-name{font-weight:600;font-size:14px;color:var(--foreground);line-height:1.3}.source-detail{font-size:12px;color:var(--muted-foreground);margin-top:1px}.source-sections{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.source-section-tag{font-size:12px;background:var(--background);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:1px 5px;color:var(--muted-foreground);white-space:nowrap}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{width:6px;height:6px;border-radius:50%;background:var(--muted-foreground);opacity:.5;animation:bounce 1.4s infinite both}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{transform:translateY(0);opacity:.2}30%{transform:translateY(-4px);opacity:.8}}.chat-input-area{padding:0 24px 20px;flex-shrink:0;position:relative;max-width:720px;width:100%;margin:0 auto}.chat-input-area.dragging{background:var(--primary-light)}.drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgb(var(--primary-rgb) / .06);border:2px dashed var(--primary);border-radius:var(--radius-2xl);display:flex;align-items:center;justify-content:center;gap:8px;color:var(--primary);font-size:14px;font-weight:500;z-index:var(--z-raised);pointer-events:none}.chat-input-wrapper{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--motion-duration-fast) var(--motion-ease-out),box-shadow var(--motion-duration-fast) var(--motion-ease-out)}.chat-input-wrapper:focus-within{border-color:var(--border);box-shadow:var(--shadow-md)}.file-chips{display:flex;flex-wrap:wrap;gap:8px;padding:12px 12px 0}.file-chip{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 4px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--background);font-size:12px;animation:fadeIn var(--motion-duration-fast) var(--motion-ease-out)}.file-chip-type{font-size:9px;font-weight:700;letter-spacing:.3px;line-height:1;padding:2px 5px;border-radius:var(--radius-sm)}.file-chip-type.pdf{background:color-mix(in srgb,var(--file-pdf) 11%,var(--card));color:var(--file-pdf-ink)}.file-chip-type.doc{background:color-mix(in srgb,var(--file-doc) 11%,var(--card));color:var(--file-doc-ink)}.file-chip-type.xls{background:color-mix(in srgb,var(--file-xls) 11%,var(--card));color:var(--file-xls-ink)}.file-chip-name{color:var(--foreground);font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chip-size{color:var(--muted-foreground);font-size:12px}.file-chip-remove{width:24px;height:24px;border:none;background:transparent;color:var(--muted-foreground);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color var(--motion-duration-instant) var(--motion-ease-out),color var(--motion-duration-instant) var(--motion-ease-out);padding:0}.file-chip-remove:hover{background:var(--destructive-light);color:var(--destructive)}.input-row{display:flex;align-items:flex-end;gap:4px;padding:8px 12px 8px 8px}.file-input-hidden{display:none}.chat-input{flex:1;border:none;background:transparent;font-size:14px;font-family:var(--font-sans);color:var(--foreground);outline:none;resize:none;min-height:34px;max-height:160px;line-height:1.5;padding:8px 0;overflow-y:auto}.chat-input::placeholder{color:var(--text-hint)}.input-hint{text-align:center;font-size:12px;color:var(--muted-foreground);margin-top:8px;padding:0 8px}.es-area{flex:1;display:flex;flex-direction:column}.es-suggestions-grid{grid-template-columns:1fr;max-width:620px}.es-answer-loading{padding:40px 24px;max-width:720px;width:100%;margin:0 auto}.es-answer-loading-inner{display:flex;align-items:flex-start;gap:16px}.es-loading-text{display:flex;flex-direction:column;gap:8px;padding-top:4px}.es-loading-label{font-size:14px;color:var(--muted-foreground)}.es-answer-container{max-width:720px;width:100%;margin:0 auto;padding:28px 24px 40px;display:flex;flex-direction:column;gap:20px;animation:fadeIn var(--motion-duration-base) var(--motion-ease-out)}.es-answer-query-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.es-answer-query-text{font-size:16px;font-weight:600;color:var(--foreground);flex:1;min-width:0}.es-reset-btn{display:inline-flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:8px 14px;font-size:14px;font-weight:600;font-family:inherit;color:var(--foreground);cursor:pointer;transition:background-color var(--motion-duration-instant) var(--motion-ease-out);flex-shrink:0}.es-reset-btn:hover{background:var(--accent)}.es-reset-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.es-state-header{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:var(--radius-lg);border-left:3px solid transparent}.es-state-measures{background:var(--primary-light);border-left-color:var(--primary)}.es-state-incidents_only{background:var(--warning-light);border-left-color:var(--warning)}.es-state-none{background:var(--background);border-left-color:var(--border)}.es-state-heading{font-size:16px;font-weight:600;color:var(--foreground);line-height:1.35;margin:0}.es-state-subtitle{font-size:12px;color:var(--muted-foreground);line-height:1.5;margin:0}.es-orientation{margin:8px 0 0;font-size:14px;color:var(--muted-foreground);font-style:italic;line-height:1.45}.es-source-type-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-sm);padding:4px 8px;flex-shrink:0;line-height:1.4}.es-source-type-schichtbuch{background:color-mix(in srgb,var(--chart-3) 11%,var(--card));color:var(--chart-3-ink)}.es-source-type-problemliste{background:color-mix(in srgb,var(--chart-7) 11%,var(--card));color:var(--chart-7-ink)}.es-status-pill{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;border-radius:var(--radius-full);padding:4px 8px;flex-shrink:0;line-height:1.4}.es-pill-done{background:var(--success-light);color:var(--success-strong)}.es-pill-wip{background:var(--warning-light);color:var(--warning-strong)}.es-pill-other{background:var(--muted);color:var(--muted-foreground-strong)}.es-pl-meta-item{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted-foreground);font-weight:500}.es-pl-meta-item svg{color:var(--muted-foreground);flex-shrink:0}.es-pl-meta-machine{color:var(--foreground);font-weight:600;font-variant-numeric:tabular-nums}.es-pl-meta-machine svg{color:inherit}.es-pl-meta-sep{font-size:12px;color:var(--muted-foreground);-webkit-user-select:none;user-select:none}.es-pl-cards-section{display:flex;flex-direction:column;gap:12px}.es-pl-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-xs)}.es-pl-card-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.es-pl-measure-block{background:var(--background);border-left:3px solid var(--primary);border-radius:0 var(--radius-lg) var(--radius-lg) 0;padding:12px 16px;display:flex;flex-direction:column;gap:8px}.es-pl-measure-block.es-pl-measure-missing{border-left-color:var(--border);background:transparent}.es-pl-measure-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted-foreground)}.es-pl-measure-wip-banner{font-size:12px;font-weight:600;color:var(--warning-strong);background:var(--warning-light);border:1px solid var(--warning-border);border-radius:var(--radius-sm);padding:4px 8px;line-height:1.5}.es-pl-measure-text{font-size:14px;line-height:1.5;color:var(--foreground);margin:0;word-break:break-word}.es-pl-measure-empty{color:var(--muted-foreground);font-style:italic}.es-pl-measure-text--clamped{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden}.es-pl-expand-btn{display:inline-flex;align-items:flex-start;gap:var(--space-inline);background:none;border:none;margin-top:-4px;padding:4px 0;font-size:14px;font-family:inherit;font-weight:600;line-height:1.4;color:var(--primary);cursor:pointer;align-self:flex-start;transition:color var(--motion-duration-instant) var(--motion-ease-out)}.es-pl-expand-btn:hover{color:var(--primary-dark)}.es-pl-expand-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-lg)}.es-pl-expand-btn .rotated{transform:rotate(180deg)}.es-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media print{.es-pl-measure-text--clamped{display:block;-webkit-line-clamp:unset;line-clamp:unset;overflow:visible}.es-pl-expand-btn{display:none}}.es-pl-detail{display:flex;flex-direction:column;gap:8px}.es-pl-detail-toggle{display:inline-flex;align-items:flex-start;gap:var(--space-inline);margin-left:-8px;padding:8px;background:transparent;border:none;border-radius:var(--radius-lg);font-size:14px;font-family:inherit;font-weight:600;line-height:1.4;color:var(--foreground);cursor:pointer;align-self:flex-start;transition:background var(--motion-duration-instant) var(--motion-ease-out)}.es-pl-detail-toggle:hover{background:var(--accent)}.es-pl-detail-toggle:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.es-pl-detail-toggle .rotated{transform:rotate(180deg)}.es-pl-detail-body{display:flex;flex-direction:column;gap:8px;padding:4px 0;animation:fadeIn var(--motion-duration-fast) var(--motion-ease-out)}.es-pl-detail-row{display:flex;flex-direction:column;gap:4px}.es-pl-detail-key{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-foreground)}.es-pl-detail-val{font-size:14px;line-height:1.5;color:var(--foreground);margin:0;word-break:break-word}.es-pl-card-footer{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--border-light);flex-wrap:wrap}.es-pl-kategorie{font-size:12px;color:var(--muted-foreground)}.es-sb-disclosure{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-light)}.es-sb-disclosure-trigger{display:inline-flex;align-items:flex-start;gap:var(--space-inline);margin-left:-8px;padding:8px;background:transparent;border:none;border-radius:var(--radius-lg);font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;color:var(--foreground);cursor:pointer;text-align:left;transition:background var(--motion-duration-instant) var(--motion-ease-out)}.es-sb-disclosure-trigger:hover{background:var(--accent)}.es-sb-disclosure-trigger:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.es-sb-disclosure-trigger .rotated{transform:rotate(180deg)}.es-sb-disclosure-trigger svg,.es-pl-detail-toggle svg{margin-top:2px;flex-shrink:0;transition:transform var(--motion-duration-base) var(--motion-ease-in-out)}.es-pl-expand-btn svg{margin-top:2px;flex-shrink:0;transition:transform var(--motion-duration-base) var(--motion-ease-in-out)}.es-sb-disclosure-panel{display:flex;flex-direction:column;padding:4px 0;animation:fadeIn var(--motion-duration-fast) var(--motion-ease-out)}.es-sb-disclosure-panel[hidden]{display:none}.es-sb-entry{padding:12px 0;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--border-light)}.es-sb-entry:last-child{border-bottom:none}.es-sb-entry-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.es-sb-entry-text{font-size:14px;line-height:1.55;color:var(--foreground);margin:0;word-break:break-word}.es-answer-disclaimer{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;background:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;line-height:1.5;color:var(--muted-foreground)}.es-answer-disclaimer svg{flex-shrink:0;margin-top:2px;color:var(--muted-foreground)}@media(max-width:600px){.es-answer-container{padding:20px 16px 32px}.es-suggestions-grid{grid-template-columns:1fr}.es-pl-card{padding:12px}.es-pl-measure-block{padding:8px 12px}}.doc-preview-resizer{width:8px;flex-shrink:0;position:relative;cursor:col-resize;display:flex;align-items:stretch;justify-content:center;background:transparent;outline:none;margin:0 -2px;padding:0 2px;z-index:var(--z-raised)}.doc-preview-resizer:focus-visible{outline:none}.doc-preview-resizer:focus-visible .doc-preview-resizer-bar{background:var(--primary);opacity:1}.doc-preview-resizer-bar{width:2px;border-radius:var(--radius-sm);background:var(--border);opacity:.3;transition:opacity var(--motion-duration-fast) var(--motion-ease-out),background var(--motion-duration-fast) var(--motion-ease-out);pointer-events:none;-webkit-user-select:none;user-select:none;align-self:stretch}.doc-preview-resizer:hover .doc-preview-resizer-bar,.chat-split-wrapper:has(.doc-preview-resizer:active) .doc-preview-resizer-bar{opacity:1;background:var(--text-hint)}.doc-preview-resizer:active .doc-preview-resizer-bar{opacity:1;background:var(--primary)}@media(max-width:899px){.doc-preview-resizer{display:none}}@media(max-width:899px){.chat-split-wrapper.has-preview:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:var(--z-backdrop);animation:backdropFadeIn var(--motion-duration-slow) var(--motion-ease-out)}}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--background);padding:24px}.login-card{background:var(--card);border-radius:var(--radius-2xl);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:32px;width:100%;max-width:400px;animation:login-card-in var(--motion-duration-base) var(--motion-ease-out)}@keyframes login-card-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.login-logo-area{text-align:center;margin-bottom:24px;padding-top:16px}.login-gpe-logo{height:40px;width:auto;margin-bottom:12px}.login-app-name{font-size:24px;font-weight:600;color:var(--foreground);margin:0}.login-tagline{margin:0;font-family:var(--font-sans);font-size:16px;color:var(--muted-foreground)}.form-field-error{font-size:12px;color:var(--destructive)}.login-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:var(--muted-foreground)}.form-group input{height:40px;padding:0 16px;border:1px solid var(--input);border-radius:var(--radius-lg);font-size:14px;font-family:var(--font-sans);color:var(--foreground);outline:none;transition:border-color var(--motion-duration-fast) var(--motion-ease-out)}.form-group input:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.form-group input::placeholder{color:var(--text-hint)}.login-btn{display:flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 12px;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-ease-out);margin-top:4px}.login-btn:hover:not(:disabled){background:var(--primary-dark)}.login-btn:disabled{opacity:.45;cursor:default}.login-error{background:var(--destructive-light);color:var(--destructive);padding:12px 16px;border-radius:var(--radius-lg);font-size:14px;text-align:center}.login-divider{display:flex;align-items:center;gap:12px;margin:20px 0 4px}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.login-divider span{font-size:12px;color:var(--muted-foreground)}.login-ms-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);color:var(--foreground);font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background-color var(--motion-duration-fast) var(--motion-ease-out),border-color var(--motion-duration-fast) var(--motion-ease-out),color var(--motion-duration-fast) var(--motion-ease-out);margin-top:12px}.login-ms-btn:hover:not(:disabled){background:var(--background);border-color:var(--text-hint)}.login-ms-btn:disabled{opacity:.5;cursor:not-allowed;color:var(--text-hint)}.login-ms-hint{text-align:center;margin-top:8px;font-size:12px;color:var(--muted-foreground)}.login-beta-notice{margin:24px auto 0;max-width:340px;font-size:14px;color:var(--muted-foreground);line-height:1.55;text-align:center}.login-beta-link{display:block;margin:8px auto 0;padding:4px 8px;background:transparent;border:none;font:inherit;font-size:14px;color:var(--primary);cursor:pointer;text-decoration:underline;text-underline-offset:3px;transition:color var(--motion-duration-instant) var(--motion-ease-out)}.login-beta-link:hover{color:var(--primary-dark)}.login-beta-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}.login-footer{text-align:center;margin-top:20px;font-size:12px;color:var(--muted-foreground)}.admin-page{height:100%;overflow-y:auto;scrollbar-gutter:stable;padding:32px 32px 64px}.admin-page>*{max-width:1200px;margin-left:auto;margin-right:auto}.admin-header{margin-bottom:24px}.admin-title{display:flex;align-items:center;gap:12px}.admin-title h1{margin:0;font-size:20px;font-weight:600}.admin-subtitle{color:var(--muted-foreground);font-size:14px;margin:8px 0 0}.admin-role-badge{display:inline-block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:4px 8px;border-radius:var(--radius-full);background:var(--muted);color:var(--muted-foreground-strong)}.admin-role-badge.admin-role-admin{background:color-mix(in srgb,var(--chart-3) 11%,var(--card));color:var(--chart-3-ink)}.admin-role-badge.admin-role-support{background:color-mix(in srgb,var(--chart-7) 11%,var(--card));color:var(--chart-7-ink)}.admin-role-badge.admin-role-user{background:color-mix(in srgb,var(--chart-5) 11%,var(--card));color:var(--chart-5-ink)}.admin-role-badge.admin-role-assistant,.admin-role-badge.admin-role-system{background:var(--muted);color:var(--muted-foreground-strong);border-radius:var(--radius-sm)}.admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:20px;position:sticky;top:0;background:var(--card);z-index:var(--z-sticky)}.admin-tab{display:flex;align-items:center;gap:8px;padding:12px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--muted-foreground);cursor:pointer;font-size:14px;font-weight:500}.admin-tab:hover{color:var(--foreground)}.admin-tab[data-state=active]{color:var(--foreground);border-bottom-color:var(--primary)}.admin-tab:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.admin-content>section{display:block}.admin-window-picker{display:flex;align-items:center;gap:8px;margin-bottom:20px;font-size:14px;color:var(--muted-foreground)}.admin-pill{padding:6px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);color:var(--foreground);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease}.admin-pill:hover:not(.is-active){background:var(--accent)}.admin-pill:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.admin-pill.is-active{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:24px}.admin-stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);padding:16px}.admin-stat-label{font-size:14px;font-weight:600;color:var(--muted-foreground);margin-bottom:4px}.admin-stat-value{font-size:24px;font-weight:700;white-space:nowrap}.admin-stat-unit{font-size:14px;font-weight:400;color:var(--muted-foreground);margin-left:4px}.admin-stat-sub{font-size:14px;color:var(--muted-foreground);margin-top:4px}.admin-section-title{font-size:14px;font-weight:600;margin:24px 0 12px}.admin-sparkbar{display:flex;align-items:flex-end;gap:2px;height:80px;padding:8px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:24px}.admin-sparkbar-bar{flex:1;height:100%;display:flex;align-items:flex-end;min-width:2px}.admin-sparkbar-fill{width:100%;background:var(--primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.admin-table{width:100%;border-collapse:collapse;font-size:14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.admin-table th,.admin-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border-light)}.admin-table tbody tr:hover{background:var(--muted)}.admin-table thead th{background:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground)}.admin-table td.num,.admin-table th.num{text-align:right;font-variant-numeric:tabular-nums}.admin-table td.nowrap{white-space:nowrap}.admin-table td.truncate{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-empty-cell{text-align:center;color:var(--muted-foreground);padding:24px}.admin-filterbar{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.admin-filterbar input{padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);font-size:14px;font-family:var(--font-sans);color:var(--foreground)}.admin-count{margin-left:auto;font-size:12px;color:var(--muted-foreground)}.admin-pagination{display:flex;align-items:center;gap:12px;justify-content:center;margin-top:16px;font-size:14px}.admin-empty,.admin-hint{color:var(--muted-foreground);font-size:14px;padding:12px 0}.admin-sr-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-error{color:var(--destructive);background:var(--destructive-light);border:1px solid var(--destructive);padding:12px;border-radius:var(--radius-sm);font-size:14px;margin:8px 0}.admin-role-hint{margin-top:32px;padding:12px 16px;background:var(--muted);border-left:3px solid var(--primary);border-radius:var(--radius-sm);font-size:12px;color:var(--muted-foreground)}
