@font-face{font-family: 'Inter';font-style: normal;font-weight: 100 900;font-display: swap;src: url('fonts/Inter-latin-ext.woff2') format('woff2');unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: 'Inter';font-style: normal;font-weight: 100 900;font-display: swap;src: url('fonts/Inter-latin.woff2') format('woff2');unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html{--aura-font-family: 'Inter',system-ui,ui-sans-serif,-apple-system,'Segoe UI',Roboto,sans-serif;--aura-base-font-size: 14;--aura-font-weight-regular: 450;--aura-font-weight-medium: 550;--aura-font-weight-semibold: 650;--aura-base-size: 16;--vaadin-radius-s: 4px;--vaadin-radius-m: 8px;--vaadin-radius-l: 12px}vaadin-card{--aura-surface-opacity: 1;--vaadin-card-background: var(--vision-card-surface);--vaadin-card-border-radius: var(--vaadin-radius-l);--vaadin-card-border-color: var(--vision-card-border);--vaadin-card-padding: var(--vaadin-padding-l);--vaadin-card-shadow: var(--aura-shadow-xs);background: var(--vision-card-surface)}html{--bg: light-dark(#f1f1f1,#1a1a1a);--surface: light-dark(#ffffff,#303030);--surface-2: light-dark(#f7f7f7,#272727);--surface-3: light-dark(#ebebeb,#3a3a3a);--border: light-dark(#e3e3e3,#4a4a4a);--border-strong: light-dark(#b5b5b5,#616161);--text: light-dark(#303030,#e3e3e3);--text-2: light-dark(#616161,#b5b5b5);--text-3: light-dark(#8a8a8a,#9a9a9a);--accent: light-dark(#005bd3,#91c8ff);--accent-hover: light-dark(#004299,#b8dcff);--accent-soft: light-dark(#eaf4ff,#173958);--accent-ink: light-dark(#005bd3,#91c8ff);--vision-action-background: light-dark(#303030,#e3e3e3);--vision-action-text: light-dark(#ffffff,#1a1a1a);--critical: light-dark(#b23130,#ef8b87);--critical-soft: light-dark(#fceeed,#3a1e1d);--warning: light-dark(#8a5c14,#dfb266);--warning-soft: light-dark(#fcf3e3,#372b16);--success: light-dark(#1e6b40,#7ac997);--success-soft: light-dark(#eaf5ee,#15301f);--neutral-soft: light-dark(#f1f1f1,#272727);--on-accent: light-dark(#ffffff,#0d1117);--on-critical: light-dark(#ffffff,#2a0f0e);--on-warning: light-dark(#ffffff,#241a08);--on-success: light-dark(#ffffff,#06170d);--shadow: 0 1px 0 0 light-dark(rgba(26,26,26,0.07),rgba(0,0,0,0.45));--shadow-2: 0 3px 1px -1px light-dark(rgba(26,26,26,0.07),transparent),0 3px 6px -1px light-dark(transparent,rgba(0,0,0,0.5));--cat-1: #2b86c5;--cat-2: #2fa36b;--cat-3: #e0714a;--cat-4: #7a5bd0;--cat-5: #d4a11e;--cat-6: #2aa0a8;--cat-7: #d1467e;--cat-8: #8b9099;--cat-9: #4f7f3c;--cat-10: #a97d55;--cat-11: #3f6bd8;--cat-12: #5aa06a;--cat-13: #c8543f;--vision-navbar-background: #1a1a1a;--vision-navbar-text: #ffffff;--vision-navbar-border: light-dark(#303030,#4a4a4a);--vision-card-surface: var(--surface);--vision-card-border: var(--border);color: var(--text);background: var(--bg)}html:root{--aura-background-color-light: var(--bg);--aura-background-color-dark: var(--bg);--aura-app-background: var(--bg);--aura-accent-color-light: var(--accent);--aura-accent-color-dark: var(--accent);--aura-red: var(--critical);--aura-red-text: var(--critical);--aura-yellow: var(--warning);--aura-yellow-text: var(--warning);--aura-orange: var(--warning);--aura-orange-text: var(--warning);--aura-green: var(--success);--aura-green-text: var(--success);--aura-blue: var(--accent);--aura-blue-text: var(--accent-ink);--aura-purple: var(--cat-4);--aura-purple-text: var(--cat-4);--vaadin-focus-ring-color: var(--accent);--vaadin-user-color: var(--accent);--vaadin-spinner-color: var(--accent);--aura-shadow-xs: var(--shadow);--aura-shadow-s: var(--shadow);--aura-shadow-m: var(--shadow-2);--aura-overlay-shadow: var(--shadow-2);--aura-overlay-outline-shadow: 0 0 0 1px var(--border);--aura-app-layout-inset: 0px;--aura-app-layout-border-width: 0px;--aura-overlay-surface-opacity: 1;--aura-overlay-backdrop-filter: none;--vaadin-overlay-backdrop-background: rgba(17,20,28,0.32)}html:root,html vaadin-app-layout::part(content),html vaadin-avatar,html vaadin-badge,html vaadin-button,html vaadin-upload-button,html vaadin-context-menu-item,html vaadin-confirm-dialog,html vaadin-crud-edit,html vaadin-drawer-toggle,html vaadin-dialog,html vaadin-menu-bar-button,html vaadin-menu-bar-item,html vaadin-message::part(attachment),html vaadin-notification-container,html vaadin-notification-card,html vaadin-notification-card::part(overlay),html vaadin-checkbox::part(checkbox),html vaadin-radio-button::part(radio),html vaadin-side-nav-item::part(content),html vaadin-tab,html vaadin-upload-file{--vaadin-text-color: var(--text);--vaadin-text-color-secondary: var(--text-2);--vaadin-text-color-disabled: var(--text-3);--vaadin-border-color: var(--border-strong);--vaadin-border-color-secondary: var(--border);--vaadin-background-container: var(--surface-2);--vaadin-background-container-strong: var(--surface-3);--aura-neutral-light: var(--text);--aura-neutral-dark: var(--text);--aura-neutral: var(--text);--aura-accent-contrast-color-light: var(--on-accent);--aura-accent-contrast-color-dark: var(--on-accent);--aura-accent-text-color-light: var(--accent-ink);--aura-accent-text-color-dark: var(--accent-ink);--aura-accent-surface: var(--accent-soft);--aura-accent-border-color: var(--border)}:is(#id,[theme~='danger'],[theme~='error']){--aura-accent-contrast-color-light: var(--on-critical);--aura-accent-contrast-color-dark: var(--on-critical)}:is(#id,[theme~='success']){--aura-accent-contrast-color-light: var(--on-success);--aura-accent-contrast-color-dark: var(--on-success)}:is(#id,[theme~='warning']){--aura-accent-contrast-color-light: var(--on-warning);--aura-accent-contrast-color-dark: var(--on-warning)}html:root,html vaadin-accordion-panel[theme~='filled'],html vaadin-app-layout,html vaadin-app-layout::part(navbar),html vaadin-app-layout::part(drawer),html vaadin-button,html vaadin-upload-button,html vaadin-card,html vaadin-checkbox::part(checkbox),html vaadin-details[theme~='filled'],html vaadin-dashboard-widget,html vaadin-grid,html vaadin-grid-pro,html vaadin-menu-bar-button,html vaadin-message::part(attachment),html vaadin-message-input,html vaadin-radio-button::part(radio),html vaadin-range-slider,html vaadin-rich-text-editor,html vaadin-side-nav-item::part(content),html vaadin-slider,html vaadin-tab,html vaadin-tabs,html vaadin-upload,html vaadin-upload-file,html ::part(input-field),html vaadin-avatar-group::part(overlay),html vaadin-combo-box::part(overlay),html vaadin-confirm-dialog::part(overlay),html vaadin-context-menu::part(overlay),html vaadin-crud::part(overlay),html vaadin-date-picker::part(overlay),html vaadin-dialog::part(overlay),html vaadin-login-overlay::part(overlay),html vaadin-menu-bar-submenu::part(overlay),html vaadin-multi-select-combo-box::part(overlay),html vaadin-notification-card::part(overlay),html vaadin-popover::part(overlay),html vaadin-select::part(overlay),html vaadin-time-picker::part(overlay),html vaadin-tooltip::part(overlay){--aura-surface-opacity: 1;--aura-surface-color: var(--surface);--aura-surface-color-solid: var(--surface);--vaadin-background-color: var(--surface)}html vaadin-notification-card[theme~='contrast'],html vaadin-notification-card[theme~='contrast']::part(overlay){--aura-surface-color: var(--text);--aura-surface-color-solid: var(--text);--vaadin-background-color: var(--text);--vaadin-text-color: var(--surface);--vaadin-text-color-secondary: var(--surface);color: var(--surface)}html vaadin-notification-card[theme~='error'],html vaadin-notification-card[theme~='error']::part(overlay){--aura-accent-surface: var(--critical-soft);--aura-accent-color: var(--critical);--aura-accent-text-color-light: var(--critical);--aura-accent-text-color-dark: var(--critical)}html vaadin-notification-card[theme~='warning'],html vaadin-notification-card[theme~='warning']::part(overlay){--aura-accent-surface: var(--warning-soft);--aura-accent-color: var(--warning);--aura-accent-text-color-light: var(--warning);--aura-accent-text-color-dark: var(--warning)}html vaadin-notification-card[theme~='success'],html vaadin-notification-card[theme~='success']::part(overlay){--aura-accent-surface: var(--success-soft);--aura-accent-color: var(--success);--aura-accent-text-color-light: var(--success);--aura-accent-text-color-dark: var(--success)}html:root{--vaadin-input-field-background: var(--surface);--vaadin-input-field-border-color: var(--border-strong);--vaadin-input-field-border-width: 1px;--vaadin-input-field-border-radius: var(--vaadin-radius-m);--vaadin-input-field-placeholder-color: var(--text-3);--vaadin-input-field-label-color: var(--text-2);--vaadin-input-field-label-font-weight: var(--aura-font-weight-medium);--vaadin-input-field-error-color: var(--critical);--vaadin-input-field-required-indicator: '\2022';--vaadin-side-nav-child-indent: 0;--vaadin-side-nav-item-border-width: 0;--vaadin-side-nav-items-gap: 2px;--vaadin-side-nav-item-border-radius: var(--vaadin-radius-m);--vaadin-side-nav-item-font-weight: var(--aura-font-weight-medium);--vaadin-app-layout-navbar-background: var(--vision-navbar-background);--vaadin-app-layout-drawer-background: var(--bg);--vaadin-card-background: var(--surface);--vaadin-card-border-width: 1px;--vaadin-card-border-color: var(--border);--vaadin-checkbox-border-width: 1px;--vaadin-checkbox-border-color: var(--border-strong);--vaadin-checkbox-background: var(--surface)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='primary']:not([theme~='tertiary']){--vaadin-button-background: var(--vision-action-background);--vaadin-button-text-color: var(--vision-action-text);--vaadin-button-border-color: var(--vision-action-background);--vaadin-button-shadow: var(--shadow-2);--vaadin-button-font-weight: var(--aura-font-weight-semibold)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='primary'][theme~='tertiary']{--vaadin-button-background: transparent;--vaadin-button-text-color: var(--accent-ink);--vaadin-button-tertiary-text-color: var(--accent);--vaadin-button-border-width: 0;--vaadin-button-border: none;--vaadin-button-shadow: none}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button):not([theme~='primary'],[theme~='tertiary']){--vaadin-button-background: var(--surface);--vaadin-button-border-color: var(--border-strong);--vaadin-button-border-width: 1px;--vaadin-button-border: 1px solid var(--border-strong);--vaadin-button-text-color: var(--text);--vaadin-button-shadow: none}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='contrast']:not([theme~='primary'],[theme~='tertiary']){--vaadin-button-text-color: var(--text)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='primary'][theme~='error']:not([theme~='tertiary']){--vaadin-button-background: var(--critical);--vaadin-button-border-color: var(--critical);--vaadin-button-border: 1px solid var(--critical);--vaadin-button-text-color: var(--on-critical)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='primary'][theme~='success']:not([theme~='tertiary']){--vaadin-button-background: var(--success);--vaadin-button-border-color: var(--success);--vaadin-button-border: 1px solid var(--success);--vaadin-button-text-color: var(--on-success)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='tertiary'][theme~='error']{--vaadin-button-text-color: var(--critical);--vaadin-button-tertiary-text-color: var(--critical)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='tertiary'][theme~='success']{--vaadin-button-text-color: var(--success);--vaadin-button-tertiary-text-color: var(--success)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='error']:not([theme~='primary'],[theme~='tertiary']){--vaadin-button-background: var(--surface-2);--vaadin-button-border-color: transparent;--vaadin-button-border: none;--vaadin-button-text-color: var(--critical)}html :is(vaadin-button,vaadin-upload-button,vaadin-menu-bar-button)[theme~='success']:not([theme~='primary'],[theme~='tertiary']){--vaadin-button-background: var(--surface-2);--vaadin-button-border-color: transparent;--vaadin-button-border: none;--vaadin-button-text-color: var(--success)}.vision-mono,.vision-numeric{font-family: var(--vision-font-family-monospace);font-variant-numeric: tabular-nums}vaadin-app-layout{--vaadin-app-layout-navbar-offset-top: 56px;--vaadin-app-layout-drawer-width: 288px;background: var(--bg)}vaadin-app-layout::part(navbar){height: 56px;min-height: 56px;padding: 0 20px 0 16px;background: var(--vision-navbar-background);color: var(--vision-navbar-text);border-bottom: 1px solid var(--vision-navbar-border);box-shadow: none;backdrop-filter: none;-webkit-backdrop-filter: none}:is([slot='navbar'],.vision-login-bar){color: var(--vision-navbar-text)}:is([slot='navbar'],.vision-login-bar) :is(h1,h2,span,a):not(.vision-env-badge){color: var(--vision-navbar-text)}html :is([slot='navbar'],.vision-login-bar) :is(vaadin-button,vaadin-menu-bar-button){--vaadin-button-text-color: var(--vision-navbar-text);--vaadin-button-background: transparent;--vaadin-button-border: none;--vaadin-button-border-width: 0;--vaadin-button-shadow: none;color: var(--vision-navbar-text)}html :is([slot='navbar'],.vision-login-bar) :is(vaadin-button,vaadin-menu-bar-button):hover{--vaadin-button-background: rgba(255,255,255,0.16)}:is([slot='navbar'],.vision-login-bar) :is(vaadin-button,vaadin-menu-bar-button,vaadin-drawer-toggle){--vaadin-focus-ring-color: var(--vision-navbar-text)}.vision-env-badge{align-self: center;padding: 3px 7px;border-radius: 4px;font-size: 10px;font-weight: 600;letter-spacing: 0.08em;line-height: 1.4;white-space: nowrap;color: var(--critical);background-color: var(--critical-soft)}.vision-env-badge[data-environment='prod']{color: var(--success);background-color: var(--success-soft)}vaadin-app-layout[data-environment]::part(navbar){box-shadow: inset 0 3px 0 0 var(--critical)}vaadin-app-layout[data-environment='prod']::part(navbar){box-shadow: inset 0 3px 0 0 var(--success)}.vision-topbar-user{font-size: var(--aura-font-size-s);white-space: nowrap}.vision-topbar-account{gap: var(--vaadin-gap-m)}.vision-language-switch{display: flex;align-items: center}html .vision-language-switch .vision-language-option{--vaadin-button-padding: 0 6px;min-width: 0;opacity: 0.6;font-weight: var(--aura-font-weight-medium);letter-spacing: 0.04em}html .vision-language-switch .vision-language-option + .vision-language-option{border-left: 1px solid rgba(255,255,255,0.32);border-radius: 0}html .vision-language-switch .vision-language-option--active{opacity: 1;font-weight: var(--aura-font-weight-semibold);cursor: default}html .vision-language-switch .vision-language-option:not(.vision-language-option--active):hover{opacity: 1}:is(.vision-theme-toggle,.vision-topbar-settings){--vaadin-button-padding: 0;min-width: 30px}.vision-theme-toggle vaadin-icon{display: none}html:not([data-vision-theme-mode]) .vision-theme-toggle .vision-theme-icon-system,html[data-vision-theme-mode="system"] .vision-theme-toggle .vision-theme-icon-system,html[data-vision-theme-mode="light"] .vision-theme-toggle .vision-theme-icon-light,html[data-vision-theme-mode="dark"] .vision-theme-toggle .vision-theme-icon-dark{display: inline-flex}html vaadin-drawer-toggle{--vaadin-button-background: transparent;--vaadin-button-border: none;--vaadin-button-border-width: 0;--vaadin-button-border-color: transparent;--vaadin-button-shadow: none;--vaadin-button-text-color: var(--vision-navbar-text);color: var(--vision-navbar-text)}html vaadin-drawer-toggle:hover{--vaadin-button-background: rgba(255,255,255,0.16)}.vision-topbar{padding: 0;gap: var(--vaadin-gap-m)}.vision-topbar-brand{gap: var(--vaadin-gap-m);min-width: 0}.vision-topbar-logo{height: 28px;width: auto;display: block}.vision-topbar-divider{width: 1px;height: 22px;background: rgba(255,255,255,0.32)}.vision-app-name{font-size: var(--aura-font-size-m);font-weight: var(--aura-font-weight-semibold);letter-spacing: -0.01em;color: var(--vision-navbar-text);white-space: nowrap}vaadin-app-layout::part(content){background: var(--bg);border: 0;border-radius: 0}vaadin-app-layout[has-navbar][has-drawer][drawer-opened]:not([overlay])::part(content){border-start-start-radius: 0}.vision-page-frame{display: flex;flex-direction: column;height: 100%;min-width: 0}.vision-view-header{flex: none;display: flex;align-items: center;gap: 12px;padding: 24px 16px 8px 24px}.vision-page-actions{flex: none;display: flex;align-items: center;gap: var(--vaadin-gap-s);margin-block: -6px}.vision-page-actions:empty{display: none}.vision-view-title{flex: 1;min-width: 0;margin: 0;padding: 0;font-size: 1.5rem;font-weight: var(--aura-font-weight-semibold);line-height: 1.3;color: var(--text);overflow-wrap: anywhere}.vision-page-frame:has(vaadin-grid.vision-list)>.vision-view-header,.vision-page-frame:has(.vision-widget-board)>.vision-view-header{padding-top: 26px;padding-left: 16px}.vision-page-frame:has(vaadin-grid.vision-list) .vision-view-title,.vision-page-frame:has(.vision-widget-board) .vision-view-title{font-size: 1.25rem}.vision-page-content{flex: 1;min-height: 0;min-width: 0;display: flex;flex-direction: column}@media (max-width: 600px){.vision-view-header{padding: 16px 12px 8px}.vision-topbar-divider,.vision-app-name,.vision-topbar-user{display: none}vaadin-app-layout::part(navbar){padding: 0 8px}}vaadin-app-layout::part(drawer){width: var(--vaadin-app-layout-drawer-width);display: flex;flex-direction: column;background: var(--bg);--vaadin-app-layout-drawer-background: var(--bg);border: 0;box-shadow: inset -1px 0 0 0 var(--border)}vaadin-scroller[slot="drawer"]{flex: 1;scrollbar-width: thin;scrollbar-color: var(--vision-contrast-20pct) transparent}vaadin-side-nav{padding: 12px 10px 14px 6px;box-sizing: border-box;width: 100%}vaadin-side-nav-item{box-sizing: border-box;max-width: 100%}vaadin-side-nav-item[slot='children']{margin-left: 9px;border-left: 1px solid var(--border)}vaadin-side-nav-item[slot='children'][current]{border-left-color: var(--border-strong)}vaadin-side-nav-item::part(content){display: flex;align-items: center;padding: 9px 10px 9px 6px;border-radius: var(--vaadin-radius-m);font-size: var(--aura-font-size-m);font-weight: var(--aura-font-weight-medium);color: var(--text-2);transition: background 140ms ease-out,color 140ms ease-out}vaadin-side-nav-item::part(link){padding: 0}vaadin-side-nav-item::part(content):hover{background: color-mix(in srgb,var(--text) 7%,transparent);color: var(--text)}vaadin-side-nav-item[current]::part(content),vaadin-side-nav-item[has-children] vaadin-side-nav-item[current]::part(content){background: var(--surface-3);color: var(--text);font-weight: var(--aura-font-weight-semibold)}vaadin-side-nav-item[has-children]::part(content){padding: 16px 10px 6px 6px;font-weight: var(--aura-font-weight-semibold);color: var(--text-2)}vaadin-side-nav-item[has-children]::part(content):hover{background: transparent;color: var(--text)}vaadin-side-nav-item[has-children] vaadin-side-nav-item::part(content){padding: 9px 10px 9px 6px}.app-card{transition: box-shadow 0.35s ease;border-radius: var(--vaadin-radius-m);box-shadow: var(--aura-shadow-s);background-color: rgba(255,255,255,0.06);width: 100%}.app-layout{height:100%;margin: 0 auto}@media (min-width:992px){.app-layout{width:970px}}@media (min-width:1200px){.app-layout{width:1170px}}.app-layout.full{width:100%}.vision-card{background: var(--vision-card-surface);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-xs);box-sizing: border-box}vaadin-vertical-layout>.vision-card + .vision-card,.vision-view>.vision-card + .vision-card{margin-top: var(--vaadin-padding-l)}.vision-section{gap: var(--vaadin-gap-s);margin-top: var(--vaadin-padding-m)}.vision-stack{gap: var(--vaadin-gap-s)}:is(.vision-stack,.vision-form)>:is(p,h3,h4,h5) + *{margin-top: var(--vaadin-gap-xs)}:is(.vision-stack,.vision-form)>* + :is(p,h3,h4,h5){margin-top: var(--vaadin-padding-m)}.vision-form{gap: var(--vaadin-gap-m)}.vision-lead{margin: 0 0 var(--vaadin-padding-s);color: var(--vaadin-text-color);font-weight: var(--aura-font-weight-medium)}.vision-view:not(.full-height-view,.master-detail-view){flex: 1 1 auto;min-height: 0;height: auto !important}.vision-view:not(:has(.vision-card,vaadin-card,.grid-layout,.kpi-card,.workflow-attention__panel,.workflow-meta-card,.workflow-step-card,.vision-widget-board)){background: var(--vision-card-surface);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-xs);box-sizing: border-box;margin: var(--vaadin-padding-l);flex-shrink: 0;width: auto !important}.master-detail-view{display: flex;flex-direction: column;flex: 1;min-height: 0;padding: var(--vaadin-padding-l);box-sizing: border-box}.master-detail-view vaadin-split-layout{width: 100%;height: 100%;background: transparent;border: 0}.master-detail-view .grid-layout,.master-detail-view .detail-layout{background: var(--vision-card-surface);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-xs);overflow: hidden;box-sizing: border-box}.master-detail-view .grid-layout{width: 100%;height: 100%;display: flex;flex-direction: column}.master-detail-view .detail-layout{display: flex;flex-direction: column;width: 400px;margin-left: var(--vaadin-padding-m)}.master-detail-view vaadin-split-layout.detail-collapsed::part(splitter),.master-detail-view vaadin-split-layout.detail-collapsed>.detail-layout{display: none}.master-detail-view vaadin-grid{height: 100%;border: 0;background: transparent}.master-detail-view .detail{flex-grow: 1;min-height: 0;overflow-y: auto;padding: var(--vaadin-padding-l)}.master-detail-view .grid-layout>vaadin-horizontal-layout,.master-detail-view .grid-layout>vaadin-vertical-layout,.master-detail-view .detail-layout>vaadin-horizontal-layout{border-bottom: 1px solid var(--vision-card-border);background: transparent;box-shadow: none;margin-bottom: 0}.master-detail-view .grid-layout>:is(vaadin-horizontal-layout,vaadin-vertical-layout) :is(vaadin-horizontal-layout,vaadin-vertical-layout),.master-detail-view .detail-layout>vaadin-horizontal-layout :is(vaadin-horizontal-layout,vaadin-vertical-layout){gap: var(--vaadin-gap-s)}.master-detail-view .grid-layout>vaadin-horizontal-layout :is(vaadin-checkbox,vaadin-button),.master-detail-view .detail-layout>vaadin-horizontal-layout :is(vaadin-checkbox,vaadin-button){flex: none}.master-detail-view:has(vaadin-grid.vision-list) .detail-layout{margin-left: 0}.master-detail-view:has(vaadin-grid.vision-list) vaadin-split-layout::part(splitter){min-width: 16px;width: 16px;background: transparent}.master-detail-view:has(vaadin-grid.vision-list) vaadin-split-layout::part(handle){background: var(--border-strong)}@media (max-width: 900px){.master-detail-view:has(vaadin-grid.vision-list) vaadin-split-layout:not(.detail-collapsed)>.grid-layout,.master-detail-view:has(vaadin-grid.vision-list) vaadin-split-layout:not(.detail-collapsed)::part(splitter){display: none}.master-detail-view:has(vaadin-grid.vision-list) vaadin-split-layout:not(.detail-collapsed)>.detail-layout{flex: 1 1 100% !important;width: 100% !important}}.full-height-view{display: flex;flex-direction: column;flex: 1;min-height: 0}.full-height-view .grid-top-layout{gap: var(--vaadin-gap-m);margin-bottom: var(--vaadin-padding-m)}.form-view{display: block;margin: 0 auto;max-width: 1024px;padding: 0 var(--vaadin-padding-l)}.workflow-step-card{box-sizing: border-box;border: 1px solid var(--vision-card-border);border-left: 4px solid var(--aura-accent-color);border-radius: var(--vaadin-radius-l);background-color: var(--vision-card-surface);box-shadow: var(--aura-shadow-xs);transition: box-shadow 0.2s ease}.workflow-step-card:hover{box-shadow: var(--aura-shadow-s)}.workflow-step-card--editor{display: flex;flex-direction: column;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-m) var(--vaadin-padding-l)}.workflow-step-card__header{align-items: flex-end}.workflow-step-badge{display: inline-flex;align-items: center;justify-content: center;min-width: 1.75rem;height: 1.75rem;border-radius: 50%;background-color: color-mix(in srgb,var(--aura-accent-color) 22%,transparent);color: var(--vaadin-text-color);font-weight: 600;flex-shrink: 0}.workflow-meta-card{box-sizing: border-box;display: flex;flex-direction: column;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-m) var(--vaadin-padding-l);border: 1px solid var(--vision-card-border);border-left: 4px solid var(--vision-contrast-30pct);border-radius: var(--vaadin-radius-l);background-color: var(--vision-card-surface);box-shadow: var(--aura-shadow-xs)}.workflow-steps-section{display: flex;flex-direction: column;gap: var(--vaadin-gap-m)}.workflow-steps-header{display: flex;align-items: center;justify-content: space-between;gap: var(--vaadin-gap-m)}.workflow-section-title{font-size: var(--aura-font-size-s)}.workflow-text-secondary{color: var(--vaadin-text-color-secondary)}.workflow-text-tertiary{color: var(--vision-text-color-tertiary)}.workflow-text-primary{color: var(--aura-accent-text-color)}.workflow-text-error{color: var(--aura-red-text)}.workflow-text-success{color: var(--aura-green-text)}.workflow-text-warning{color: var(--aura-yellow-text)}.workflow-text-s{font-size: var(--aura-font-size-s)}.workflow-text-xs{font-size: var(--aura-font-size-xs)}.workflow-text-italic{font-style: italic}.workflow-text-bold{font-weight: 600}.workflow-caption{font-weight: 600;letter-spacing: 0.05em;text-transform: uppercase;color: var(--vaadin-text-color-secondary)}.workflow-wrap{white-space: pre-wrap;word-break: break-word;min-width: 0;max-width: 100%}.workflow-run-errorfilter{display: flex;align-items: center;gap: var(--vaadin-gap-xs);padding: var(--vaadin-padding-xs) 0;max-width: 100%}.workflow-run-errorfilter>span{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.workflow-run-error-preview{color: var(--aura-red-text);font-size: var(--aura-font-size-s);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;display: block;max-width: 100%}.workflow-status-badge{display: inline-flex;align-items: center;gap: var(--vaadin-gap-xs);white-space: nowrap}.workflow-step-card--editor vaadin-details{width: 100%;background: transparent;box-shadow: none}.workflow-step-card--editor vaadin-details::part(content){padding-inline: 0}.workflow-step-card--editor .workflow-step-card__retry-numbers{flex-wrap: wrap}.workflow-step-card--editor .workflow-step-card__retry-numbers>vaadin-integer-field{flex: 1 1 8rem;min-width: 0}.workflow-step-card__handle{cursor: grab;color: var(--vision-text-color-tertiary);width: var(--vision-icon-size-s);height: var(--vision-icon-size-s);flex-shrink: 0;margin-top: var(--vaadin-padding-xs)}.workflow-step-card__handle:hover{color: var(--vaadin-text-color)}.workflow-step-card__summary{flex-wrap: wrap}.workflow-step-card__title{font-weight: 600;color: var(--vaadin-text-color)}.workflow-step-card__chips{display: flex;flex-wrap: wrap;gap: var(--vaadin-gap-xs);align-items: center}.workflow-chip,.workflow-step-chip{display: inline-flex;align-items: center;gap: var(--vaadin-gap-xs);padding: 0 var(--vaadin-padding-s);min-height: 1.5rem;border-radius: var(--vaadin-radius-m);background-color: var(--vision-contrast-5pct);color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-xs)}.workflow-step-chip{white-space: nowrap}.workflow-chip--error{font-family: var(--vision-font-family-monospace);color: var(--aura-red-text);background-color: color-mix(in srgb,var(--aura-red) 10%,transparent);white-space: nowrap}.workflow-inset-card{box-sizing: border-box;gap: var(--vaadin-gap-xs);padding: var(--vaadin-padding-s) var(--vaadin-padding-m);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-m);background-color: var(--vision-contrast-5pct)}.workflow-step-card--invalid{border-left-color: var(--aura-red)}.workflow-step-card.v-drag-over-target{border-top: 2px solid var(--aura-accent-color);box-shadow: var(--aura-shadow-s)}.workflow-menu__danger{color: var(--aura-red-text)}.workflow-readonly-banner{box-sizing: border-box;display: flex;align-items: center;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-s) var(--vaadin-padding-m);border-radius: var(--vaadin-radius-m);background-color: var(--vision-contrast-5pct);color: var(--vaadin-text-color-secondary)}.workflow-readonly-banner vaadin-icon{color: var(--vision-text-color-tertiary);flex-shrink: 0}.workflow-readonly-banner__text{flex: 1}.workflow-steps-empty{display: flex;flex-direction: column;align-items: center;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-l);border: 1px dashed var(--vision-contrast-20pct);border-radius: var(--vaadin-radius-l);color: var(--vaadin-text-color-secondary);text-align: center}.workflow-steps-empty vaadin-icon{color: var(--vision-text-color-tertiary);width: var(--vision-icon-size-l);height: var(--vision-icon-size-l)}.workflow-steps-add-bottom{height: auto;min-height: var(--vision-size-m);padding: var(--vaadin-padding-s);border: 1px dashed var(--vision-contrast-20pct);border-radius: var(--vaadin-radius-l);color: var(--vaadin-text-color-secondary)}.workflow-steps-add-bottom:hover{border-color: var(--aura-accent-color);color: var(--aura-accent-text-color);background-color: color-mix(in srgb,var(--aura-accent-color) 22%,transparent)}.workflow-detail-header{flex-wrap: wrap}.workflow-detail-headerbar{box-sizing: border-box;display: flex;flex-wrap: wrap;align-items: center;gap: var(--vaadin-gap-s);margin: 0 var(--vaadin-padding-l) var(--vaadin-padding-s);padding: var(--vaadin-padding-xs) var(--vaadin-padding-m);border-radius: var(--vaadin-radius-m);background-color: var(--vision-contrast-5pct)}.workflow-detail-headerbar vaadin-combo-box{margin: 0;padding: 0}.workflow-detail-headerbar:not([hidden]) + .detail{padding-top: var(--vaadin-padding-xs)}.workflow-detail-headerbar .workflow-status-badge{background-color: var(--vaadin-background-color)}.workflow-detail-headerbar .workflow-detail-header__title{flex: 1 1 auto;min-width: 0;word-break: break-word}.workflow-detail-headerbar .workflow-dirty-indicator{margin-inline-start: auto}.workflow-detail-header__title{font-size: var(--aura-font-size-l);font-weight: 600;color: var(--vaadin-text-color);margin-right: var(--vaadin-padding-xs)}.workflow-detail-header .workflow-status-badge{padding: var(--vaadin-padding-xs) var(--vaadin-padding-s);border-radius: var(--vaadin-radius-l);background-color: var(--vision-contrast-5pct);font-weight: 600}.workflow-detail-header__meta{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s)}.workflow-dirty-indicator{color: var(--aura-accent-text-color);font-size: var(--aura-font-size-s);font-weight: 600}.workflow-dirty-indicator::before{content: "● "}.workflow-detail-meta{display: flex;flex-wrap: wrap;gap: var(--vaadin-gap-s);margin-top: var(--vaadin-padding-m);margin-bottom: var(--vaadin-padding-m)}.workflow-detail-meta__chip{display: flex;align-items: center;gap: var(--vaadin-gap-s);flex: 1 1 9rem;min-width: 9rem;padding: var(--vaadin-padding-s) var(--vaadin-padding-m);border-radius: var(--vaadin-radius-l);background-color: var(--vision-card-surface);border: 1px solid var(--vision-card-border);box-shadow: var(--aura-shadow-xs)}.workflow-detail-meta__icon{flex: none;box-sizing: border-box;width: var(--vision-icon-size-l);height: var(--vision-icon-size-l);padding: var(--vaadin-padding-xs);border-radius: 50%;background-color: color-mix(in srgb,var(--aura-accent-color) 22%,transparent);color: var(--aura-accent-text-color)}.workflow-detail-meta__text{display: flex;flex-direction: column;min-width: 0;line-height: 1.25}.workflow-detail-meta__caption{font-size: var(--vision-font-size-xxs)}.workflow-detail-meta__value{font-size: var(--aura-font-size-m);font-weight: 600;color: var(--vaadin-text-color)}.workflow-detail-meta__chip--error .workflow-detail-meta__icon{color: var(--aura-red-text);background-color: color-mix(in srgb,var(--aura-red) 10%,transparent)}.workflow-detail-meta__chip--error .workflow-detail-meta__value{color: var(--aura-red-text)}.workflow-step-card vaadin-details{width: 100%;background: transparent;box-shadow: none}.workflow-step-card vaadin-details::part(content){padding-inline: 0}.workflow-run-step__summary{display: flex;flex-direction: column;gap: var(--vaadin-gap-xs);width: 100%;box-sizing: border-box}.workflow-run-stepper .workflow-step-card,.workflow-run-stepper .workflow-step-card vaadin-details,.workflow-run-stepper .workflow-step-card vaadin-vertical-layout,.workflow-run-stepper .workflow-step-card vaadin-horizontal-layout,.workflow-run-stepper .workflow-run-step__summary{min-width: 0}.workflow-run-stepper .workflow-step-card vaadin-details::part(content){min-width: 0}.workflow-run-stepper .workflow-step-card vaadin-details-summary,.workflow-run-stepper .workflow-step-card vaadin-details-summary::part(content){min-width: 0;width: 100%;box-sizing: border-box}.workflow-job-summary{display: inline-flex;align-items: center;gap: var(--vaadin-gap-s);margin-left: var(--vaadin-padding-s)}.workflow-job-summary__item{display: inline-flex;align-items: center;gap: var(--vaadin-gap-xs);font-size: var(--aura-font-size-s);color: var(--vaadin-text-color-secondary)}.workflow-start-content{display: flex;flex-direction: column;gap: var(--vaadin-gap-m)}.workflow-start-header{display: flex;flex-direction: column;gap: var(--vaadin-gap-xs);padding-bottom: var(--vaadin-gap-m);border-bottom: 1px solid var(--vision-card-border)}.workflow-start-header__title{font-weight: 600;font-size: var(--aura-font-size-l);word-break: break-word}.workflow-start-header__intro{color: var(--vaadin-text-color-secondary);line-height: 1.5}.workflow-resolve-context{display: flex;flex-direction: column;gap: var(--vaadin-gap-xs);padding: var(--vaadin-padding-s) var(--vaadin-padding-m);border-radius: var(--vaadin-radius-m);background-color: color-mix(in srgb,var(--aura-red) 10%,transparent)}.workflow-resolve-context--info{background-color: var(--vision-contrast-5pct)}.workflow-resolve-context__title{font-weight: 600;font-size: var(--aura-font-size-s)}.workflow-resolve-context__line{font-size: var(--aura-font-size-s);color: var(--vaadin-text-color-secondary);white-space: pre-wrap;word-break: break-word}.workflow-timeline-row{flex-wrap: wrap}.workflow-timeline-row__time{font-family: var(--vision-font-family-monospace);font-size: var(--aura-font-size-xs);color: var(--vaadin-text-color-secondary);white-space: nowrap}.workflow-timeline-row__label{font-size: var(--aura-font-size-s)}.workflow-option{display: flex;flex-direction: column}.workflow-option__title{font-weight: 600}.workflow-option__help{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s)}.workflow-job-row{padding-left: var(--vaadin-padding-l);flex-wrap: wrap}.workflow-graph-chain{display: flex;flex-direction: column;gap: 0}.workflow-graph-step{align-items: center}.workflow-graph-step__node{display: inline-flex;align-items: center;justify-content: center;flex: 0 0 auto;width: 2.5rem;height: 2.5rem;border-radius: 50%;border: 2px solid var(--vision-contrast-30pct);background-color: var(--vaadin-background-color)}.workflow-graph-step__index{font-weight: 600;font-size: var(--aura-font-size-m);color: var(--vaadin-text-color)}.workflow-graph-step__meta{display: flex;flex-direction: column;gap: var(--vaadin-gap-xs);min-width: 0}.workflow-graph-step__connector{width: 2px;height: var(--vaadin-padding-l);margin-left: calc(var(--vaadin-padding-m) + 1.25rem - 1px);background: linear-gradient(to bottom,var(--vision-contrast-30pct),var(--vision-contrast-20pct))}.workflow-graph-step__node--done{border-color: var(--aura-green);background-color: color-mix(in srgb,var(--aura-green) 10%,transparent)}.workflow-graph-step__node--running{border-color: var(--aura-accent-color);background-color: color-mix(in srgb,var(--aura-accent-color) 22%,transparent)}.workflow-graph-step__node--failed{border-color: var(--aura-red);background-color: color-mix(in srgb,var(--aura-red) 10%,transparent)}.workflow-graph-step__node--attention{border-color: var(--aura-yellow);background-color: color-mix(in srgb,var(--aura-yellow) 30%,transparent)}.workflow-graph-step__node--cancelled,.workflow-graph-step__node--pending{border-color: var(--vision-contrast-30pct);background-color: var(--vision-contrast-5pct)}.kpi-grid{display: grid;grid-template-columns: repeat(auto-fit,minmax(11rem,1fr));gap: var(--vaadin-gap-m)}.kpi-grid--compact{gap: var(--vaadin-gap-s)}.kpi-grid--compact .kpi-card__value{font-size: var(--aura-font-size-xl)}.kpi-card{box-sizing: border-box;position: relative;display: flex;flex-direction: column;gap: var(--vaadin-gap-xs);padding: var(--vaadin-padding-m) var(--vaadin-padding-l);padding-right: calc(var(--vaadin-padding-l) + 2.75rem);border: 1px solid var(--vision-card-border);border-left: 4px solid var(--vision-contrast-30pct);border-radius: var(--vaadin-radius-l);background-color: var(--vision-card-surface);box-shadow: var(--aura-shadow-xs);min-width: 0}.kpi-card--clickable{cursor: pointer;transition: box-shadow 0.2s ease}.kpi-card--clickable:hover{box-shadow: var(--aura-shadow-s)}.kpi-card--clickable:focus-visible,.workflow-attention__row:focus-visible{outline: 2px solid var(--aura-accent-color);outline-offset: 2px;border-radius: var(--vaadin-radius-m)}.kpi-card__value{font-size: var(--vision-font-size-xxxl);font-weight: 700;line-height: 1.1;color: var(--vaadin-text-color)}.kpi-card--text .kpi-card__value{font-size: var(--aura-font-size-xl);overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.kpi-card__label{font-size: var(--aura-font-size-xs)}.kpi-card__icon{position: absolute;top: var(--vaadin-padding-m);right: var(--vaadin-padding-m);box-sizing: border-box;width: 2.25rem;height: 2.25rem;padding: var(--vaadin-padding-xs);border-radius: var(--vaadin-radius-m);color: var(--vision-contrast-60pct);background-color: var(--vision-contrast-10pct)}.kpi-card__footer{display: flex;flex-wrap: wrap;gap: var(--vaadin-gap-s);margin-top: var(--vaadin-padding-xs);font-size: var(--aura-font-size-xs)}.kpi-card--error{border-left-color: var(--aura-red)}.kpi-card--error .kpi-card__value{color: var(--aura-red-text)}.kpi-card--error .kpi-card__icon{color: var(--aura-red-text);background-color: color-mix(in srgb,var(--aura-red) 10%,transparent)}.kpi-card--warn{border-left-color: var(--aura-yellow)}.kpi-card--warn .kpi-card__icon{color: var(--aura-yellow-text);background-color: color-mix(in srgb,var(--aura-yellow) 30%,transparent)}.kpi-card--info{border-left-color: var(--aura-accent-color)}.kpi-card--info .kpi-card__icon{color: var(--aura-accent-color);background-color: color-mix(in srgb,var(--aura-accent-color) 22%,transparent)}.kpi-card--ok{border-left-color: var(--aura-green)}.kpi-card--ok .kpi-card__icon{color: var(--aura-green-text);background-color: color-mix(in srgb,var(--aura-green) 10%,transparent)}.kpi-card--neutral{border-left-color: var(--vision-contrast-30pct)}.kpi-card--neutral .kpi-card__icon{color: var(--vision-contrast-60pct);background-color: var(--vision-contrast-10pct)}.workflow-dashboard{display: flex;flex-direction: column;gap: var(--vaadin-gap-l);padding: var(--vaadin-padding-m);box-sizing: border-box;height: 100%;overflow: auto}.workflow-dashboard__toolbar{display: flex;align-items: center;justify-content: flex-end;gap: var(--vaadin-gap-s)}.workflow-dashboard__updated{font-size: var(--aura-font-size-s);color: var(--vaadin-text-color-secondary)}.workflow-dashboard__enginewarn{box-sizing: border-box;display: flex;align-items: center;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-s) var(--vaadin-padding-m);border-radius: var(--vaadin-radius-m);background-color: color-mix(in srgb,var(--aura-yellow) 30%,transparent);color: var(--aura-yellow-text)}.workflow-attention{display: grid;grid-template-columns: repeat(auto-fit,minmax(20rem,1fr));gap: var(--vaadin-gap-m)}.workflow-attention__panel{display: flex;flex-direction: column;gap: var(--vaadin-gap-xs);padding: var(--vaadin-padding-m);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-l);background-color: var(--vision-card-surface);box-shadow: var(--aura-shadow-xs)}.workflow-attention__title{font-weight: 600;margin-bottom: var(--vaadin-padding-xs)}.workflow-attention__rows{display: flex;flex-direction: column}.workflow-attention__row{display: flex;justify-content: space-between;align-items: baseline;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-xs) 0;border-top: 1px solid var(--vision-contrast-5pct);cursor: pointer}.workflow-attention__row:hover{color: var(--aura-accent-text-color)}.workflow-attention__row-meta{font-size: var(--aura-font-size-xs);color: var(--vaadin-text-color-secondary);white-space: nowrap}.workflow-attention__empty{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s);padding: var(--vaadin-padding-s) 0}.workflow-dashboard__header{display: flex;align-items: center;justify-content: flex-end;gap: var(--vaadin-gap-m);flex-wrap: wrap}.workflow-dashboard__sections{display: flex;flex-direction: column;gap: var(--vaadin-gap-l)}.workflow-dashboard__section{display: flex;flex-direction: column;gap: var(--vaadin-gap-s)}.kpi-card--zero{border-left-color: var(--vision-contrast-20pct)}.kpi-card--zero .kpi-card__value{color: var(--vaadin-text-color-secondary)}.kpi-card--zero .kpi-card__icon{color: var(--vision-contrast-50pct);background-color: var(--vision-contrast-10pct)}.workflow-attention__row-main{display: flex;align-items: center;gap: var(--vaadin-gap-s);min-width: 0}.workflow-attention__row-main>span{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.workflow-attention__empty--ok{display: flex;align-items: center;gap: var(--vaadin-gap-s)}.vision-widget-board{display: grid;grid-template-columns: repeat(4,minmax(0,1fr));grid-auto-rows: auto;gap: var(--vision-board-gutter);align-items: stretch;padding: var(--vision-board-gutter);box-sizing: border-box;--vision-board-gutter: 16px}.vision-widget-card[data-width="2"]{grid-column: span 2}.vision-widget-card[data-width="3"]{grid-column: span 3}.vision-widget-card[data-width="4"]{grid-column: 1 / -1}@media (max-width: 1500px){.vision-widget-board{grid-template-columns: repeat(2,minmax(0,1fr))}.vision-widget-board>.vision-widget-card[data-width="3"],.vision-widget-board>.vision-widget-card[data-width="4"]{grid-column: 1 / -1}}@media (max-width: 900px){.vision-widget-board{grid-template-columns: minmax(0,1fr)}.vision-widget-board>.vision-widget-card[data-width]{grid-column: 1 / -1}}.vision-widget-card{position: relative;display: flex;flex-direction: column;min-width: 0;padding: var(--vaadin-padding,16px) var(--vaadin-padding-l,20px) var(--vaadin-padding-l,20px);background: var(--vision-card-surface);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-xs);container-type: inline-size}.vision-widget-card-header{display: flex;align-items: center;gap: var(--vaadin-gap-s,8px);min-height: 28px}.vision-widget-board[customising] .vision-widget-card-header{cursor: grab}.vision-widget-board[customising] .vision-widget-card-header:active{cursor: grabbing}.vision-widget-card-titles{flex: 1;min-width: 0;display: flex;align-items: baseline;flex-wrap: wrap;column-gap: var(--vaadin-gap-s,8px)}.vision-widget-card-title{margin: 0;font-size: 14px;font-weight: 600;line-height: 1.4;color: var(--vaadin-text-color)}.vision-widget-card-subtitle{font-size: 12px;color: var(--vaadin-text-color-secondary)}.vision-widget-card-link{color: inherit;text-decoration: none;border-radius: var(--vaadin-radius-s)}.vision-widget-card-chevron{margin-left: 4px;color: var(--vaadin-text-color-secondary);transition: margin-left 0.12s ease}.vision-widget-card-link:hover{color: var(--vaadin-color-primary,var(--aura-accent-color))}.vision-widget-card-link:hover .vision-widget-card-chevron{margin-left: 7px;color: inherit}.vision-widget-card-link:focus-visible{outline: 2px solid var(--vaadin-color-primary,var(--aura-accent-color));outline-offset: 2px}.vision-widget-card-body{flex: 1;padding-top: var(--vaadin-padding-s,12px)}.vision-widget-card-header vaadin-button{cursor: pointer}.vision-widget-handle{cursor: grab;color: var(--vaadin-text-color-secondary);width: 1.1em;height: 1.1em;flex: none}.vision-widget-handle:active{cursor: grabbing}.vision-dashboard-asof{font-size: 12px;color: var(--vaadin-text-color-secondary);white-space: nowrap}.vision-widget-resize{position: absolute;top: 0;right: 0;width: 10px;height: 100%;cursor: col-resize;touch-action: none}.vision-widget-resize::after{content: "";position: absolute;top: 50%;right: 3px;width: 2px;height: 26px;transform: translateY(-50%);border-radius: 1px;background: var(--vision-card-border)}.vision-widget-resize:hover::after{background: var(--vision-text-color-tertiary)}.vision-widget-ghost{opacity: 0.35}.vision-metrics{display: flex;align-items: stretch;flex-wrap: wrap;gap: var(--vaadin-gap,16px) var(--vaadin-gap-l,24px)}.vision-metric{flex: 1 1 100px;min-width: 0}.vision-metric-value{display: block;font-variant-numeric: tabular-nums;font-size: 26px;font-weight: 600;letter-spacing: -0.01em;line-height: 1.1;color: var(--vaadin-text-color)}.vision-metric.is-alert .vision-metric-value,.vision-error-group.is-alert .vision-error-group-count{color: var(--aura-red-text,var(--vaadin-color-error))}.vision-metric.is-warn .vision-metric-value,.vision-error-group.is-warn .vision-error-group-count{color: var(--aura-yellow-text,var(--vaadin-color-warning))}.vision-metric.is-calm .vision-metric-value{color: var(--vaadin-text-color-secondary)}.vision-metric-caption{display: block;margin-top: 4px;font-size: 13px;color: var(--vaadin-text-color-secondary)}.vision-metric-link{display: block;color: inherit;text-decoration: none;cursor: pointer}.vision-metric-link:hover .vision-metric-caption,.vision-metric-link:focus-visible .vision-metric-caption{color: var(--vaadin-color-primary,var(--aura-accent-color));text-decoration: underline;text-underline-offset: 3px}.vision-metric-link:focus-visible{outline: 2px solid var(--vaadin-color-primary,var(--vision-brand-blue,#0b7ec4));outline-offset: 4px;border-radius: var(--vaadin-radius-s)}.vision-metric-note{display: block;margin-top: 4px;font-size: 12px;color: var(--vaadin-text-color-secondary)}.vision-widget-card-section{padding: var(--vaadin-padding-s,8px) 0 0;margin-bottom: -8px;background: none;border: none;border-radius: 0;box-shadow: none}.vision-widget-card-section .vision-widget-card-header{min-height: 0}.vision-widget-card-section .vision-widget-card-title{font-size: 13px;font-weight: 600;color: var(--vaadin-text-color-secondary)}.vision-widget-card-section .vision-widget-card-body{padding-top: 0}.vision-widget-notice,.vision-widget-failed{display: block;font-size: 13px;color: var(--vaadin-text-color-secondary)}.vision-allclear{display: flex;align-items: baseline;flex-wrap: wrap;gap: 4px 8px;padding: 4px 0}.vision-allclear-check{font-weight: 700;color: var(--aura-green-text,var(--vaadin-color-success))}.vision-allclear-text{flex: 1;font-size: 14px;font-weight: 500;color: var(--aura-green-text,var(--vaadin-color-success))}.vision-allclear-link{color: inherit;text-decoration: none}.vision-allclear-link:hover,.vision-allclear-link:focus-visible{color: var(--vaadin-color-primary,var(--aura-accent-color));text-decoration: underline;text-underline-offset: 3px}.vision-allclear-detail{font-size: 12px;color: var(--vaadin-text-color-secondary);font-variant-numeric: tabular-nums}.vision-widget-failed{color: var(--vaadin-color-error,#c5280c)}.vision-widget-board-empty{grid-column: 1 / -1;padding: var(--vaadin-padding-l,24px) 0;color: var(--vaadin-text-color-secondary)}.vision-error-groups-summary{display: block;margin-bottom: 8px;font-size: 12px;color: var(--vaadin-text-color-secondary)}.vision-error-group{display: grid;grid-template-columns: 3rem minmax(0,1fr) auto;column-gap: 12px;align-items: baseline;padding: 6px 0;border-top: 1px solid var(--vaadin-border-color-secondary,rgba(0,0,0,0.08));color: inherit;text-decoration: none}.vision-error-group:hover .vision-error-group-cause{text-decoration: underline}.vision-error-group-count{grid-row: span 2;font-size: 18px;font-weight: 600;text-align: right;font-variant-numeric: tabular-nums}.vision-error-group-cause{overflow: hidden;white-space: nowrap;text-overflow: ellipsis;font-size: 13px}.vision-error-group-badges{display: flex;gap: 4px;justify-content: flex-end}.vision-error-group-meta{grid-column: 2 / -1;font-size: 12px;color: var(--vaadin-text-color-secondary)}.vision-error-groups-more{display: block;padding-top: 6px;font-size: 12px}html{--ucp-color-group: var(--aura-accent-color)}.ucp-badge-group{background: var(--ucp-color-group);color: var(--aura-accent-contrast-color)}.vision-cell-primary{font-weight: var(--aura-font-weight-semibold);color: var(--text)}.vision-cell-secondary{font-size: var(--aura-font-size-s);color: var(--text-3)}span>.vision-cell-secondary{font-size: inherit}.vision-cell-chips{display: inline-flex;align-items: center;gap: 4px;white-space: nowrap}.vision-cell-chip{display: inline-block;padding: 1px 7px;border-radius: var(--vaadin-radius-s);background: var(--surface-3);color: var(--text-2);font-size: var(--aura-font-size-xs);line-height: 1.6;white-space: nowrap}.vision-cell-more,.vision-cell-empty{font-size: var(--aura-font-size-xs);color: var(--text-3)}.vision-row-actions{--vaadin-button-padding: 0 6px}.vision-row-actions vaadin-menu-bar-button::part(suffix){display: none}.vision-result-bar{flex: none;display: flex;align-items: center;gap: var(--vaadin-gap-s);min-height: 32px;padding: 0 var(--vaadin-padding-m)}.vision-result-count{white-space: nowrap;color: var(--text-2);font-size: var(--aura-font-size-s);font-variant-numeric: tabular-nums}.vision-result-count--warning{color: var(--critical);font-weight: var(--aura-font-weight-semibold,600)}.vision-result-bar>.vision-result-reset{font-size: var(--aura-font-size-s);min-height: 0;height: 28px}.vision-detail-nav{flex: none;display: flex;align-items: center;gap: var(--vaadin-gap-xs,4px);min-height: 44px;padding: 0 var(--vaadin-padding-s);border-bottom: 1px solid var(--vision-card-border)}.vision-detail-nav__position{flex: none;margin: 0 var(--vaadin-gap-s) 0 2px;color: var(--text-2);font-size: var(--aura-font-size-s);font-variant-numeric: tabular-nums;white-space: nowrap}.vision-detail-nav__title{flex: 1;min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight: var(--aura-font-weight-semibold,600);color: var(--text)}.vision-segmented{flex: none;display: inline-flex;gap: 2px;padding: 2px;border-radius: var(--vaadin-radius-m,8px);background: var(--surface-3)}.vision-segmented>.vision-segmented__item{margin: 0;min-height: 0;height: 30px;padding: 0 12px;border: 0;border-radius: calc(var(--vaadin-radius-m,8px) - 2px);background: transparent;box-shadow: none;color: var(--text-2);font-weight: var(--aura-font-weight-medium,500)}.vision-segmented>.vision-segmented__item--selected{background: var(--surface);color: var(--text);box-shadow: var(--shadow)}.vision-detail-footer{flex: none;display: flex;align-items: center;gap: var(--vaadin-gap-s,8px);min-height: 52px;padding: 0 var(--vaadin-padding-m,12px) 0 var(--vaadin-padding-l,16px);border-top: 1px solid var(--vision-card-border);background: var(--surface-2)}.vision-detail-footer__status{flex: 1;min-width: 0;color: var(--text-3);font-size: var(--aura-font-size-s)}.vision-detail-footer__status--changed{color: var(--warning);font-weight: var(--aura-font-weight-semibold,600)}.vision-form-tabs{width: 100%;flex: none;margin-bottom: var(--vaadin-padding-m,12px)}.vision-form-tab-panels{width: 100%}.vision-form-section + .vision-form-section{margin-top: var(--vaadin-padding-l,16px);padding-top: var(--vaadin-padding-l,16px);border-top: 1px solid var(--border)}.vision-form-section__title{margin: 0 0 var(--vaadin-gap-xs,4px);font-size: var(--aura-font-size-s);font-weight: var(--aura-font-weight-semibold,600);color: var(--text-2);text-transform: none;letter-spacing: 0}.vision-form-row{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: var(--vaadin-gap-m,12px);width: 100%}@container (max-width: 420px){.vision-form-row{grid-template-columns: minmax(0,1fr)}}.vision-form-hint{display: block;color: var(--text-2);font-size: var(--aura-font-size-s);line-height: 1.4}.vision-form-buttons{display: flex;gap: var(--vaadin-gap-s,8px)}.vision-form-op{display: flex;align-items: center;gap: var(--vaadin-gap-m,12px);width: 100%;padding: var(--vaadin-padding-s,8px) 0}.vision-form-op + .vision-form-op{border-top: 1px solid var(--border)}.vision-form-op__description{flex: 1;min-width: 0;display: flex;flex-direction: column;gap: 2px}.vision-form-op__title{font-weight: var(--aura-font-weight-semibold,600);color: var(--text)}.vision-form-op__text{color: var(--text-2);font-size: var(--aura-font-size-s);line-height: 1.4}.vision-form-op>vaadin-button{flex: none}.vision-form-banner{display: flex;align-items: center;gap: var(--vaadin-gap-s,8px);margin-bottom: var(--vaadin-padding-m,12px);padding: var(--vaadin-padding-s,8px) var(--vaadin-padding-s,8px) var(--vaadin-padding-s,8px) var(--vaadin-padding-m,12px);border-radius: var(--vaadin-radius-m,8px);background: var(--critical-soft);color: var(--critical);font-weight: var(--aura-font-weight-semibold,600)}.vision-form-banner>span{flex: 1}.vision-form-banner>vaadin-icon{flex: none;width: 16px;height: 16px}.vision-form-note{display: flex;align-items: center;gap: var(--vaadin-gap-s,8px);margin-bottom: var(--vaadin-padding-m,12px);padding: var(--vaadin-padding-s,8px) var(--vaadin-padding-m,12px);border-radius: var(--vaadin-radius-m,8px);background: var(--accent-soft);color: var(--text);font-size: var(--aura-font-size-s)}.vision-form-note>vaadin-icon{flex: none;width: 16px;height: 16px;color: var(--accent)}.vision-info-list{display: flex;flex-direction: column;width: 100%;margin-top: var(--vaadin-gap-s,8px)}.vision-info-list__row{display: grid;grid-template-columns: 11em minmax(0,1fr);gap: var(--vaadin-gap-m,12px);align-items: baseline;padding: var(--vaadin-padding-s,8px) 0;border-top: 1px solid var(--border)}.vision-info-list__label{color: var(--text-2);font-size: var(--aura-font-size-s)}.vision-info-list__row>*{justify-self: start;min-width: 0}.vision-info-list__token{display: flex;align-items: center;gap: var(--vaadin-gap-xs,4px)}.vision-info-list__mono{font-family: var(--aura-font-family-mono,ui-monospace,monospace);font-size: var(--aura-font-size-s);word-break: break-all}.vision-info-list__token>vaadin-button{flex: none;margin-block: -6px}.vision-status-badge{display: inline-block;padding: 2px 8px;border-radius: 999px;font-size: var(--aura-font-size-s);font-weight: var(--aura-font-weight-semibold,600);background: var(--neutral-soft);color: var(--text-2)}.vision-status-badge--ok{background: var(--success-soft);color: var(--success)}.vision-status-badge--error{background: var(--critical-soft);color: var(--critical)}vaadin-menu-bar-item.vision-menu-item--danger{color: var(--critical)}.vision-login-page{min-height: 100vh;background: var(--bg)}.vision-login-bar{flex: none;display: flex;align-items: center;gap: var(--vaadin-gap-m);width: 100%;height: 56px;padding: 0 20px 0 16px;box-sizing: border-box;background: var(--vision-navbar-background);color: var(--vision-navbar-text);border-bottom: 1px solid var(--vision-navbar-border);box-shadow: inset 0 3px 0 0 var(--critical)}.vision-login-bar[data-environment='prod']{box-shadow: inset 0 3px 0 0 var(--success)}.vision-login-bar-end{margin-left: auto;display: flex;align-items: center;gap: var(--vaadin-gap-m)}.vision-login-main{display: flex;align-items: center;justify-content: center;width: 100%;min-height: 0;padding: 24px 16px;box-sizing: border-box}.vision-login-card{width: 100%;max-width: 360px;box-sizing: border-box;padding: 24px;box-shadow: var(--shadow-2)}.vision-login-title{margin: 0;font-size: var(--aura-font-size-xl);line-height: 1.25;font-weight: var(--aura-font-weight-semibold);color: var(--text)}@media (max-width: 600px){.vision-login-bar{padding: 0 12px}}vaadin-login-form::part(form){padding: 0}vaadin-login-form{display: block;width: 100%;margin-top: 12px}vaadin-login-form vaadin-button[theme~='primary']{margin-top: 16px}vaadin-login-form::part(footer){display: none}vaadin-connection-indicator .v-loading-indicator{position: fixed;inset: 0;width: 100%;height: 100%;z-index: 10000;pointer-events: all;cursor: progress;background: rgba(17,20,28,0.32);backdrop-filter: blur(6px) saturate(1.1);-webkit-backdrop-filter: blur(6px) saturate(1.1);opacity: 1;visibility: visible;transition: opacity 120ms ease 150ms,visibility 0s}vaadin-connection-indicator .v-loading-indicator[style*="display: none"],vaadin-connection-indicator .v-loading-indicator[style*="display:none"]{display: block !important;pointer-events: none !important;opacity: 0 !important;visibility: hidden;transition: opacity 250ms ease 150ms,visibility 0s linear 400ms}vaadin-connection-indicator[offline] .v-loading-indicator,vaadin-connection-indicator[reconnecting] .v-loading-indicator{display: none !important}vaadin-connection-indicator .vision-loading-brand{position: absolute;left: 50%;top: 50%;display: flex;align-items: center;gap: 12px;padding: 16px 20px 14px;white-space: nowrap;background: var(--surface);border: 1px solid var(--border);border-top: 3px solid var(--vision-env-color,var(--critical));border-radius: var(--vaadin-radius-l);box-shadow: var(--shadow-2),0 12px 32px rgba(9,14,24,0.18);opacity: 1;transform: translate(-50%,-50%) scale(1);transition: opacity 300ms cubic-bezier(0.2,0.9,0.3,1.15) 300ms,transform 300ms cubic-bezier(0.2,0.9,0.3,1.15) 300ms}vaadin-connection-indicator .v-loading-indicator[style*="display: none"] .vision-loading-brand,vaadin-connection-indicator .v-loading-indicator[style*="display:none"] .vision-loading-brand{opacity: 0;transform: translate(-50%,calc(-50% + 14px)) scale(0.96);transition: opacity 200ms ease 150ms,transform 200ms ease 150ms}vaadin-connection-indicator .vision-loading-brand .spinner{flex: none;width: 20px;height: 20px;border-radius: 50%;background: conic-gradient( from 0.25turn,transparent 0deg 40deg,var(--accent) 360deg );-webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));mask: radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));animation: vision-loading-spin 0.9s linear infinite}vaadin-connection-indicator .vision-loading-brand .msg{font-family: var(--aura-font-family,sans-serif);font-size: var(--aura-font-size-m);font-weight: var(--aura-font-weight-regular);color: var(--text)}vaadin-connection-indicator .vision-loading-brand .env{margin-left: 4px;font-family: var(--aura-font-family,sans-serif);font-size: var(--vision-font-size-xxs);font-weight: var(--aura-font-weight-semibold);letter-spacing: 0.08em;line-height: 1.6;color: var(--vision-env-color,var(--critical));background: var(--vision-env-soft-color,var(--critical-soft));border-radius: var(--vaadin-radius-s);padding: 3px 7px}@keyframes vision-loading-spin{to{transform: rotate(360deg)}}@media (prefers-reduced-motion: reduce){vaadin-connection-indicator .v-loading-indicator,vaadin-connection-indicator .vision-loading-brand{transition-duration: 1ms !important}vaadin-connection-indicator .vision-loading-brand{transform: translate(-50%,-50%) !important}vaadin-connection-indicator .vision-loading-brand .spinner{animation: none !important}}vaadin-connection-indicator .v-status-message{position: fixed;z-index: 251;left: 0;right: auto;top: 0;opacity: 0;width: 100%;max-height: var(--status-height-collapsed,8px);overflow: hidden;background-color: var(--vision-navbar-background);color: var(--vision-navbar-text);font-size: var(--aura-font-size-s);font-weight: var(--aura-font-weight-semibold);line-height: 1;transition: all 0.5s;padding: 0 0.5em}vaadin-connection-indicator[offline] .v-status-message,vaadin-connection-indicator[reconnecting] .v-status-message{opacity: 1;background-image: repeating-linear-gradient( 45deg,rgba(255,255,255,0),rgba(255,255,255,0) 10px,rgba(255,255,255,0.1) 10px,rgba(255,255,255,0.1) 20px )}vaadin-connection-indicator[offline] .v-status-message:hover,vaadin-connection-indicator[reconnecting] .v-status-message:hover,vaadin-connection-indicator[expanded] .v-status-message{max-height: var(--status-height,1.75rem)}vaadin-connection-indicator[expanded] .v-status-message{opacity: 1}vaadin-connection-indicator .v-status-message span{display: flex;align-items: center;justify-content: center;height: var(--status-height,1.75rem)}vaadin-connection-indicator[reconnecting] .v-status-message span::before{content: "";width: 1em;height: 1em;border-top: 2px solid var(--accent);border-left: 2px solid var(--accent);border-right: 2px solid transparent;border-bottom: 2px solid transparent;border-radius: 50%;box-sizing: border-box;animation: vision-loading-spin 0.4s linear infinite;margin: 0 0.5em}.vision-hover-lift{transition: box-shadow 0.14s ease-out,border-color 0.14s ease-out}.vision-hover-lift:hover{box-shadow: var(--shadow-2) !important;border-color: var(--border-strong) !important}:root{--image-field-accent-fill: var(--aura-accent-color);--image-field-flag-ink: #1a1a1a;--image-field-shadow-soft: var(--aura-shadow-xs);--image-field-shadow-medium: var(--aura-shadow-s);--image-field-surface: var(--vision-card-surface);--image-field-surface-subtle: var(--aura-background-color);--image-field-surface-muted: var(--vision-contrast-5pct);--image-field-text: var(--vaadin-text-color);--image-field-text-secondary: var(--vaadin-text-color-secondary);--image-field-text-muted: var(--vision-text-color-tertiary);--image-field-border: var(--vision-card-border);--image-field-border-dashed: var(--vaadin-border-color)}.modern-image-field{width: 100%;animation: fadeInUp 0.5s ease-out}@keyframes fadeInUp{from{opacity: 0;transform: translateY(20px)}to{opacity: 1;transform: translateY(0)}}@keyframes pulse{0%,100%{transform: scale(1)}50%{transform: scale(1.03)}}@keyframes shimmer{0%{background-position: -200% center}100%{background-position: 200% center}}@keyframes float{0%,100%{transform: translateY(0)}50%{transform: translateY(-5px)}}@keyframes slideIn{from{transform: translateX(-100%);opacity: 0}to{transform: translateX(0);opacity: 1}}@keyframes glow{0%,100%{box-shadow: var(--image-field-shadow-soft)}50%{box-shadow: 0 0 20px rgba(102,126,234,0.3)}}.modern-image-field .header-card{background: var(--image-field-surface);border: 1px solid var(--image-field-border);border-radius: 16px;box-shadow: var(--image-field-shadow-soft);padding: 24px;margin-bottom: 24px;transition: all 0.3s cubic-bezier(0.4,0,0.2,1);position: relative;overflow: hidden}.modern-image-field .header-card::before{content: '';position: absolute;top: 0;left: 0;right: 0;height: 3px;background: var(--image-field-accent-fill);transform: scaleX(0);transition: transform 0.3s ease}.modern-image-field .header-card:hover::before{transform: scaleX(1)}.modern-image-field .header-card:hover{box-shadow: var(--image-field-shadow-medium);transform: translateY(-2px)}.modern-image-field .card-title{margin: 0;color: var(--image-field-text);font-size: 26px;font-weight: 600;letter-spacing: -0.5px;animation: slideIn 0.5s ease-out}.modern-image-field .selectors-layout{margin-top: 20px;gap: 16px;flex-direction: column;animation: fadeInUp 0.6s ease-out 0.1s both}.modern-image-field .selector-group{display: flex;align-items: center;gap: 12px;padding: 12px 16px;background: var(--image-field-surface);border: 1px solid var(--image-field-border);border-radius: 12px;box-shadow: var(--image-field-shadow-soft);transition: all 0.3s ease;position: relative;width: 100%;box-sizing: border-box}.modern-image-field .selector-group::after{content: '';position: absolute;bottom: 0;left: 0;right: 0;height: 2px;background: var(--image-field-accent-fill);transform: scaleX(0);transition: transform 0.3s ease}.modern-image-field .selector-group:hover::after{transform: scaleX(1)}.modern-image-field .selector-group:hover{box-shadow: var(--image-field-shadow-medium);transform: translateY(-1px);border-color: var(--aura-accent-color)}.modern-image-field .selector-label{font-weight: 600;color: var(--aura-accent-text-color);min-width: 70px;font-size: 13px;text-transform: uppercase;letter-spacing: 0.5px}.modern-image-field .modern-combo{flex: 1;min-width: 0;border-radius: 8px;border: 1px solid var(--image-field-border);transition: all 0.3s ease}.modern-image-field .modern-combo:hover{border-color: var(--aura-accent-color)}.modern-image-field .modern-combo[focused]{border-color: var(--aura-accent-color);box-shadow: 0 0 0 3px color-mix(in srgb,var(--aura-accent-color) 10%,transparent)}.modern-image-field .info-badges{margin-top: 20px;gap: 12px;animation: fadeInUp 0.7s ease-out 0.2s both}.modern-image-field .info-badge{display: inline-flex;align-items: center;gap: 8px;padding: 8px 14px;border-radius: 20px;font-size: 13px;font-weight: 600;transition: all 0.3s ease;cursor: default;position: relative;overflow: hidden}.modern-image-field .info-badge:hover{transform: translateY(-2px) scale(1.05)}.modern-image-field .badge-primary{background: var(--aura-accent-color);color: white;box-shadow: var(--aura-shadow-xs)}.modern-image-field .badge-success{background: var(--aura-green);color: white;box-shadow: var(--aura-shadow-xs)}.modern-image-field .badge-warning{background: var(--aura-orange);color: white;box-shadow: var(--aura-shadow-xs)}.modern-image-field .image-tabsheet{background: var(--image-field-surface);border-radius: 16px;box-shadow: var(--image-field-shadow-soft);overflow: hidden;animation: fadeInUp 0.8s ease-out 0.3s both;border: 1px solid var(--image-field-border)}.modern-image-field .image-tabsheet vaadin-tabs{background: var(--image-field-surface-subtle);border-bottom: 1px solid var(--image-field-border)}.modern-image-field .suitable-tab{font-weight: 600;color: var(--image-field-text-secondary);position: relative;transition: color 0.3s ease}.modern-image-field .suitable-tab:hover{color: var(--image-field-accent-fill)}.modern-image-field .suitable-tab[selected]{color: var(--image-field-accent-fill)}.modern-image-field .suitable-tab[selected]::after{content: '';position: absolute;bottom: 0;left: 0;right: 0;height: 3px;background: var(--image-field-accent-fill);animation: slideIn 0.3s ease}.modern-image-field .add-tab{font-style: italic;color: var(--image-field-text-muted);opacity: 0.8;transition: all 0.3s ease}.modern-image-field .add-tab:hover{opacity: 1;color: var(--aura-accent-text-color);transform: scale(1.05)}.modern-image-field .grid-toolbar{display: flex;align-items: center;justify-content: flex-end;padding: 12px 16px 0;background: var(--image-field-surface-subtle)}.modern-image-field .image-count{font-size: 12px;color: var(--image-field-text-muted)}.modern-image-field .image-grid{display: grid;grid-template-columns: repeat(auto-fill,minmax(210px,1fr));gap: 12px;padding: 16px;background: var(--image-field-surface-subtle);align-items: start}.modern-image-field .image-card{position: relative;display: flex;flex-direction: column;background: var(--image-field-surface);border: 1px solid var(--image-field-border);border-radius: 10px;overflow: hidden;transition: border-color 0.2s ease,box-shadow 0.2s ease}.modern-image-field .image-card.draggable{cursor: grab}.modern-image-field .image-card.draggable:active{cursor: grabbing}.modern-image-field .image-card.is-primary{border-color: var(--aura-yellow)}.modern-image-field .image-card.is-google{border-color: var(--aura-green)}.modern-image-field .image-card.dragging{opacity: 0.45}.modern-image-field .image-card.drag-over{border-color: var(--aura-accent-color);box-shadow: 0 0 0 3px color-mix(in srgb,var(--aura-accent-color) 22%,transparent)}.modern-image-field .card-media{position: relative;aspect-ratio: 4 / 3;background: var(--image-field-surface-muted);overflow: hidden}.modern-image-field .card-image{display: block;width: 100%;height: 100%;object-fit: cover}.modern-image-field .image-number{position: absolute;top: 8px;left: 8px;width: 20px;height: 20px;border-radius: 6px;background: rgba(15,23,42,0.78);color: #fff;font-size: 11px;font-weight: 600;display: flex;align-items: center;justify-content: center;z-index: 2}.modern-image-field .google-chip{position: absolute;top: 8px;right: 8px;padding: 3px 7px;border-radius: 5px;background: rgba(16,185,129,0.94);color: #fff;font-size: 10px;font-weight: 600;letter-spacing: 0.04em;text-transform: uppercase;z-index: 2}.modern-image-field .card-flag{position: absolute;left: 0;right: 0;bottom: 0;padding: 3px 0;text-align: center;color: #fff;font-size: 10px;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase;z-index: 2}.modern-image-field .flag-primary{background: var(--aura-yellow);color: var(--image-field-flag-ink)}.modern-image-field .flag-google{background: var(--aura-green)}.modern-image-field .card-info{padding: 10px 10px 8px}.modern-image-field .card-filename{display: flex;align-items: baseline;gap: 2px;min-width: 0;font-size: 13px;font-weight: 600;color: var(--image-field-text)}.modern-image-field .filename-base{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.modern-image-field .filename-ext{flex: 0 0 auto;color: var(--image-field-text-secondary);font-weight: 500}.modern-image-field .card-meta{margin-top: 3px;min-height: 14px;font-size: 11px;color: var(--image-field-text-muted)}.modern-image-field .image-actions{display: flex;gap: 6px;margin-top: 10px}.modern-image-field .image-actions vaadin-button{flex: 1;min-width: 0;height: 30px;margin: 0;padding: 0;border: 1px solid var(--image-field-border);border-radius: 7px;background: var(--image-field-surface-subtle);color: var(--image-field-text-secondary);cursor: pointer;transition: border-color 0.2s ease,color 0.2s ease}.modern-image-field .image-actions vaadin-button vaadin-icon,.modern-image-field .image-actions vaadin-button iron-icon{width: 15px;height: 15px}.modern-image-field .image-actions vaadin-button:hover:not([disabled]){border-color: var(--aura-accent-color);color: var(--aura-accent-text-color);background: var(--image-field-surface-subtle)}.modern-image-field .image-actions vaadin-button.delete-action:hover:not([disabled]){border-color: var(--aura-red);color: var(--aura-red-text)}.modern-image-field .image-actions vaadin-button[disabled]{opacity: 0.45;cursor: not-allowed}.modern-image-field .add-image-card{display: flex;align-items: center;justify-content: center;min-height: 250px;border: 1.5px dashed var(--image-field-border-dashed);border-radius: 10px;background: var(--image-field-surface-subtle);color: var(--image-field-text-muted);cursor: pointer;transition: border-color 0.2s ease,color 0.2s ease}.modern-image-field .add-image-card:hover{border-color: var(--aura-accent-color);color: var(--aura-accent-text-color)}.modern-image-field .add-image-card vaadin-vertical-layout{gap: 6px;padding: 0;text-align: center;color: inherit;font-size: 13px}.modern-image-field .add-image-card vaadin-icon{width: 26px;height: 26px;color: inherit}vaadin-dialog.image-lightbox::part(overlay){border-radius: 14px;box-shadow: 0 24px 60px rgba(15,23,42,0.3)}vaadin-dialog.image-lightbox::part(header){align-items: flex-start;padding: 14px 18px;border-bottom: 1px solid var(--image-field-border)}vaadin-dialog.image-lightbox::part(content){padding: 0}.lightbox-header{display: flex;flex-direction: column;min-width: 0}.lightbox-name{font-size: 14px;font-weight: 600;color: var(--image-field-text);word-break: break-all}.lightbox-meta{margin-top: 2px;font-size: 11px;color: var(--image-field-text-muted)}.lightbox-media{aspect-ratio: 4 / 3;background: var(--image-field-surface-muted)}.lightbox-image{width: 100%;height: 100%;object-fit: contain}.modern-image-field .add-suitable-content{min-height: 400px;padding: 48px;display: flex;align-items: center;justify-content: center;background: linear-gradient(135deg,var(--image-field-surface-subtle) 0%,var(--image-field-surface) 100%)}.modern-image-field .add-icon{color: var(--image-field-accent-fill);margin-bottom: 20px;transition: all 0.3s ease}.modern-image-field .add-icon:hover{transform: scale(1.1) rotate(90deg)}.modern-image-field vaadin-upload{border: 2px dashed var(--image-field-border-dashed);border-radius: 12px;background: var(--image-field-surface-subtle);transition: all 0.3s ease}.modern-image-field vaadin-upload:hover{border-color: var(--aura-accent-color);background: var(--image-field-surface);box-shadow: var(--image-field-shadow-soft)}.modern-image-field vaadin-upload[dragover]{background: color-mix(in srgb,var(--aura-accent-color) 6%,transparent);border-color: var(--image-field-accent-fill);transform: scale(1.01);box-shadow: var(--image-field-shadow-medium)}.modern-image-field vaadin-button[theme~="primary"]{background: var(--image-field-accent-fill);color: var(--aura-accent-contrast-color);border: none;box-shadow: var(--aura-shadow-xs);transition: all 0.3s ease}.modern-image-field vaadin-button[theme~="primary"]:hover{transform: translateY(-2px);box-shadow: var(--aura-shadow-s)}.modern-image-field vaadin-button[theme~="tertiary"]{color: var(--image-field-accent-fill);transition: all 0.2s ease}.modern-image-field vaadin-button[theme~="tertiary"]:hover{background: color-mix(in srgb,var(--aura-accent-color) 10%,transparent);transform: scale(1.05)}.modern-image-field .loading{position: relative;overflow: hidden}.modern-image-field .loading::after{content: '';position: absolute;top: 0;left: -100%;width: 100%;height: 100%;background: linear-gradient( 90deg,transparent,color-mix(in srgb,var(--aura-accent-color) 10%,transparent),transparent );animation: shimmer 1.5s infinite}.modern-image-field vaadin-notification{border-radius: 8px}@media (max-width: 768px){.modern-image-field .image-grid{grid-template-columns: repeat(auto-fill,minmax(180px,1fr));gap: 12px;padding: 16px}.modern-image-field .card-title{font-size: 22px}}@media print{.modern-image-field .image-actions,.modern-image-field .add-image-card,.modern-image-field .selector-group vaadin-button{display: none}.modern-image-field .image-card{box-shadow: none;border: 1px solid var(--vision-card-border)}.modern-image-field *{animation: none !important;transition: none !important}}.modern-image-field *{transition-timing-function: cubic-bezier(0.4,0,0.2,1)}.modern-image-field vaadin-horizontal-layout{background-color: transparent !important}.mpf-toolbar{flex-wrap: wrap;padding-block: var(--vaadin-padding-xs)}.full-height-view vaadin-vertical-layout:has(.mpf-content){flex: 1 1 auto;min-height: 0}.full-height-view vaadin-tabsheet:has(.mpf-content){min-height: 0}.full-height-view vaadin-tabsheet:has(.mpf-content)::part(content){display: flex;flex-direction: column}.mpf-truncation-hint{display: block;padding-block: var(--vaadin-padding-xs);padding-inline: var(--vaadin-padding-s);color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-xs)}.mpf-root{display: flex;flex-direction: column;flex: 1 1 auto;min-height: 0}.mpf-content{flex: 1 1 auto;min-height: 0}.mpf-scroller{flex: 1 1 auto;min-height: 12rem;border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-m);background-color: var(--vision-card-surface)}.mpf-log{padding: var(--vaadin-padding-xs) 0}.mpf-row{display: flex;align-items: baseline;gap: var(--vaadin-gap-s);padding: 2px var(--vaadin-padding-s);border-left: 3px solid transparent;font-size: var(--aura-font-size-s);line-height: 1.4}.mpf-row:hover{background-color: var(--vision-contrast-5pct)}.mpf-time{flex: 0 0 auto;color: var(--vaadin-text-color-secondary);font-family: var(--vision-font-family-monospace);font-size: var(--aura-font-size-xs);font-variant-numeric: tabular-nums}.mpf-text{flex: 1 1 auto;white-space: pre-wrap;word-break: break-word}.mpf-row.mpf-warning,.mpf-group.mpf-warning{border-left-color: var(--aura-yellow)}.mpf-row.mpf-error,.mpf-group.mpf-error{border-left-color: var(--aura-red);background-color: color-mix(in srgb,var(--aura-red) 10%,transparent)}.mpf-filter.mpf-warning::part(label){color: var(--aura-yellow-text)}.mpf-filter.mpf-error::part(label){color: var(--aura-red-text)}.mpf-group{border-left: 3px solid transparent;margin: 0}.mpf-group::part(summary){padding: 2px var(--vaadin-padding-s);font-size: var(--aura-font-size-s);font-weight: 400}.mpf-group::part(content){padding: 0 0 var(--vaadin-padding-xs) var(--vaadin-padding-m)}.mpf-group-summary{line-height: 1.4;padding-inline-end: var(--vaadin-padding-m)}.mpf-group-body .mpf-row{border-left-color: var(--vision-contrast-10pct)}vaadin-dialog::part(overlay),vaadin-confirm-dialog::part(overlay){background: var(--vision-card-surface);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-l);box-shadow: 0 8px 16px -4px rgba(26,26,26,0.22)}vaadin-dialog::part(header),vaadin-confirm-dialog::part(header){padding: var(--vaadin-padding-m) var(--vaadin-padding-l);border-bottom: 1px solid var(--vision-card-border)}vaadin-dialog::part(title){font-size: var(--aura-font-size-l);font-weight: var(--aura-font-weight-semibold)}vaadin-dialog::part(content),vaadin-confirm-dialog::part(content){padding: var(--vaadin-padding-l)}vaadin-dialog::part(footer),vaadin-confirm-dialog::part(footer){padding: var(--vaadin-padding-m) var(--vaadin-padding-l);border-top: 1px solid var(--vision-card-border);background: var(--aura-background-color);gap: var(--vaadin-gap-s)}vaadin-confirm-dialog::part(footer){width: auto;margin-inline-start: 0;justify-content: flex-end}vaadin-confirm-dialog::part(cancel-button),vaadin-confirm-dialog::part(reject-button),vaadin-confirm-dialog::part(confirm-button){flex: 0 0 auto}vaadin-dialog::part(backdrop),vaadin-confirm-dialog::part(backdrop){background: rgba(26,26,26,0.45)}vaadin-dialog.job-log-json-dialog::part(overlay){max-height: 90vh}vaadin-dialog.job-log-json-dialog::part(content){display: flex;flex-direction: column;flex: 1 1 auto;min-height: 0;overflow: hidden;padding: var(--vaadin-padding-m) var(--vaadin-padding-l) var(--vaadin-padding-l)}.job-log-json-content{display: flex;flex-direction: column;gap: var(--vaadin-gap-s);flex: 1 1 auto;min-height: 0}.job-log-json-toolbar{display: flex;align-items: center;justify-content: space-between;flex-wrap: wrap;gap: var(--vaadin-gap-s);flex: 0 0 auto}.job-log-json-start{display: flex;align-items: center;gap: var(--vaadin-gap-m);min-width: 0}.job-log-json-start>span{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.job-log-json-select{width: 22rem;max-width: 100%}.job-log-json-actions{display: flex;align-items: center;gap: var(--vaadin-gap-xs)}.job-log-json-code{flex: 1 1 auto;min-height: 0;overflow: auto;margin: 0;padding: var(--vaadin-padding-m);background: var(--vision-contrast-5pct);border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-m);font-family: var(--vision-font-family-monospace);font-size: var(--aura-font-size-s);line-height: 1.55;white-space: pre-wrap;overflow-wrap: anywhere;scrollbar-width: thin}vaadin-grid::part(existing-row){background-color: color-mix(in srgb,var(--aura-red) 15%,var(--vision-card-surface)) !important;color: var(--aura-red-text);font-style: italic}vaadin-grid::part(existing-row):hover{background-color: color-mix(in srgb,var(--aura-red) 25%,var(--vision-card-surface)) !important}vaadin-grid::part(importable-row){background-color: color-mix(in srgb,var(--aura-green) 15%,var(--vision-card-surface)) !important;color: var(--aura-green-text);font-weight: 500}vaadin-grid::part(importable-row):hover{background-color: color-mix(in srgb,var(--aura-green) 25%,var(--vision-card-surface)) !important}vaadin-grid::part(dimmed){opacity: 0.55}html vaadin-grid.vision-list{--vaadin-grid-header-font-weight: var(--aura-font-weight-semibold,600);--vaadin-grid-header-text-color: var(--text)}html vaadin-grid.vision-list::part(header-cell){--vaadin-grid-cell-background-color: var(--surface-2);border-bottom: 1px solid var(--border)}html{--vision-contrast-5pct: color-mix(in srgb,var(--aura-neutral) 5%,transparent);--vision-contrast-10pct: color-mix(in srgb,var(--aura-neutral) 10%,transparent);--vision-contrast-20pct: color-mix(in srgb,var(--aura-neutral) 20%,transparent);--vision-contrast-30pct: color-mix(in srgb,var(--aura-neutral) 30%,transparent);--vision-contrast-40pct: color-mix(in srgb,var(--aura-neutral) 40%,transparent);--vision-contrast-50pct: color-mix(in srgb,var(--aura-neutral) 50%,transparent);--vision-contrast-60pct: color-mix(in srgb,var(--aura-neutral) 60%,transparent);--vision-contrast-70pct: color-mix(in srgb,var(--aura-neutral) 70%,transparent);--vision-contrast-90pct: color-mix(in srgb,var(--aura-neutral) 90%,transparent);--vision-text-color-tertiary: color-mix(in srgb,var(--vaadin-text-color) 50%,transparent);--vision-font-family-monospace: ui-monospace,'SF Mono',Menlo,Consolas,'Liberation Mono',monospace;--vision-font-size-xxs: 0.625rem;--vision-font-size-xxxl: 2.5rem;--vision-size-m: 2.25rem;--vision-icon-size-s: 1.25em;--vision-icon-size-l: 2.25em}html vaadin-dialog.vision-progress-dialog::part(overlay){border: 1px solid var(--border);border-top: 3px solid var(--vision-env-color,var(--critical));box-shadow: var(--shadow-2),0 12px 32px rgba(9,14,24,0.18)}.vision-progress-dialog-content{width: 300px;max-width: 100%}.vision-progress-dialog-message{font-weight: var(--aura-font-weight-medium);color: var(--text)}img.collection-icon{padding: var(--vaadin-padding-xs);border-radius: var(--vaadin-radius-s);background: light-dark(transparent,#fff);box-sizing: content-box}vaadin-tabsheet::part(loader){display:none}vaadin-tabsheet{box-sizing: border-box}.layout-bordered{border: 1px solid var(--vision-card-border);border-radius: var(--vaadin-radius-m);padding: var(--vaadin-padding-m);margin: var(--vaadin-padding-m) 0 var(--vaadin-padding-m) 0;background: none !important;flex-wrap: wrap}vaadin-horizontal-layout.layout-bordered>[data-width-full]{flex: 1}.action-layout-no-border,.filter-layout-no-border{box-shadow: none !important;margin-bottom: 0 !important}.filter-layout-rows{row-gap: var(--vaadin-gap-s)}.action-layout-rows{row-gap: var(--vaadin-gap-s)}.action-layout-separated{margin-top: var(--vaadin-gap-s)}.vision-section-action{margin-left: auto}.vision-result-summary{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s)}vaadin-grid,vaadin-tree-grid{--vaadin-grid-row-background-color: var(--vision-card-surface)}vaadin-grid::part(row-error),vaadin-tree-grid::part(row-error){background-color: color-mix(in srgb,var(--aura-red) 10%,var(--vision-card-surface));font-weight: 600}vaadin-grid::part(row-attention),vaadin-tree-grid::part(row-attention){background-color: color-mix(in srgb,var(--aura-yellow) 30%,var(--vision-card-surface))}vaadin-grid::part(row-open){box-shadow: inset 3px 0 0 0 var(--aura-accent-color);background-color: color-mix(in srgb,var(--aura-accent-color) 22%,var(--vision-card-surface))}vaadin-grid::part(row-highlight){box-shadow: inset 3px 0 0 0 var(--aura-accent-color)}.action-layout-no-border vaadin-menu-bar{width: 100%}.action-layout-no-border vaadin-menu-bar::part(container){width: 100%}.action-layout-no-border vaadin-menu-bar vaadin-menu-bar-button{flex-grow: 1}vaadin-button.btn-inline,vaadin-menu-bar.btn-inline{--vaadin-button-padding: 0;--vaadin-button-height: auto;margin: 0}vaadin-button.btn-contrast{--vaadin-button-background: var(--aura-neutral);--vaadin-button-text-color: var(--aura-background-color)}.text-ellipsis{overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.vision-chip{display: inline-flex;align-items: center;gap: var(--vaadin-gap-s);padding: 0.18rem 0.6rem;border-radius: 999px;font-size: var(--aura-font-size-s);white-space: nowrap}vaadin-button.vision-chip--toggle{--vaadin-button-height: auto;--vaadin-button-padding: 0.3rem 0.75rem;--vaadin-button-border-radius: 999px;--vaadin-button-border-width: 1px;--vaadin-button-border-color: var(--vision-contrast-30pct);--vaadin-button-background: transparent;--vaadin-button-font-size: var(--aura-font-size-s);--vaadin-button-font-weight: 500;--vaadin-button-gap: 0.4rem;--vaadin-button-text-color: var(--vaadin-text-color);margin: 0}vaadin-button.vision-chip--toggle::part(label){display: inline-flex;align-items: center}vaadin-button.vision-chip--toggle:hover:not([disabled]){--vaadin-button-border-color: var(--vision-contrast-60pct);--vaadin-button-background: var(--vision-contrast-5pct)}vaadin-button.vision-chip--toggle.vision-chip--pressed{--vaadin-button-background: var(--vision-chip-fill,color-mix(in srgb,var(--aura-accent-color) 22%,transparent));--vaadin-button-border-color: var(--vision-contrast-60pct);--vaadin-button-font-weight: 600}vaadin-button.vision-chip--toggle[disabled]{opacity: 0.45}.vision-chip__dot{display: inline-block;width: 0.6rem;height: 0.6rem;border-radius: 50%;flex: none;margin-inline-end: 0.45rem}.vision-chip__check{width: 0.8rem;height: 0.8rem;flex: none;margin-inline-end: 0.35rem}.vision-chip__count{font-variant-numeric: tabular-nums;color: var(--vaadin-text-color-secondary);margin-inline-start: 0.4rem}.vision-chip--pressed .vision-chip__count{color: inherit}vaadin-grid.grid-compact,vaadin-tree-grid.grid-compact{--vaadin-grid-cell-padding: var(--vaadin-padding-xs) var(--vaadin-padding-s)}vaadin-progress-bar.progress-success{--vaadin-progress-bar-value-background: var(--aura-green)}vaadin-progress-bar.progress-error{--vaadin-progress-bar-value-background: var(--aura-red)}vaadin-progress-bar.progress-contrast{--vaadin-progress-bar-value-background: var(--aura-neutral)}vaadin-horizontal-layout.vision-action-row{gap: var(--vaadin-gap-m);flex-wrap: nowrap}.vision-action-row__primary{display: flex;align-items: center;gap: var(--vaadin-gap-s);flex-wrap: wrap}