html{--aura-accent-color-dark: var(--aura-blue);--aura-accent-color-light: var(--aura-blue);--aura-app-layout-inset: 0px;--aura-background-color-dark: oklch(from var(--aura-blue) 0.24 calc(c * 0.15) h);--aura-background-color-light: oklch(from var(--aura-blue) 0.985 calc(c * 0.08) h);--aura-base-radius: 5;--aura-base-size: 18;--aura-contrast-level: 1.5;--aura-overlay-surface-opacity: 1;--aura-surface-level: -0.25}:is(vaadin-button,vaadin-menu-bar-button,vaadin-upload-button):not([theme~="primary"],[theme~="tertiary"]){--aura-accent-color-dark: var(--aura-neutral);--aura-accent-color-light: var(--aura-neutral);--vaadin-button-background: var(--vaadin-background-container);--vaadin-button-border-color: transparent;--vaadin-button-shadow: none}html,body{background: var(--aura-app-background)}vaadin-app-layout::part(navbar){background: color-mix(in srgb,var(--aura-surface-color-solid) 88%,transparent);backdrop-filter: blur(18px);border-bottom: 1px solid var(--vaadin-border-color-secondary)}.app-header{gap: var(--vaadin-gap-m);padding: 0.75rem 1rem}.app-title-bar{margin: 0;font-size: 1.25rem}.welcome-label{color: var(--vaadin-text-color-secondary)}.login-view{padding: var(--vaadin-padding-l)}.login-shell,.app-card{background: var(--aura-surface-color-solid);border: 1px solid var(--vaadin-border-color-secondary);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-m)}.login-shell{gap: var(--vaadin-gap-m);max-width: 28rem;padding: clamp(1.5rem,4vw,2.5rem);width: min(100%,28rem)}.login-title,.app-title{margin: 0}.login-title{font-size: clamp(1.9rem,4vw,2.5rem);text-align: center}.login-hint,.app-subtitle{color: var(--vaadin-text-color-secondary)}.login-hint{margin: 0;text-align: center}.login-form{align-self: stretch}.app-shell{gap: var(--vaadin-gap-l);padding: clamp(1rem,3vw,2rem)}.app-card{gap: var(--vaadin-gap-s);max-width: 52rem;padding: clamp(1.25rem,3vw,2rem)}.app-eyebrow{color: var(--aura-accent-text-color);font-size: var(--aura-font-size-xs);font-weight: var(--aura-font-weight-medium);letter-spacing: 0.04em;margin: 0;text-transform: uppercase}.app-title{font-size: clamp(2rem,4vw,2.75rem)}::selection{background: color-mix(in srgb,var(--aura-accent-color) 24%,transparent)}.home-view{box-sizing: border-box;gap: var(--vaadin-gap-l);padding: clamp(1rem,3vw,2rem)}.home-heading{margin: 0}.home-tile-row{align-items: stretch;display: flex;flex-wrap: wrap;gap: var(--vaadin-gap-m);width: 100%}.home-tile{background: var(--aura-surface-color-solid);border: 1px solid var(--vaadin-border-color-secondary);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-s);box-sizing: border-box;cursor: pointer;flex: 1 1 18rem;gap: var(--vaadin-gap-xs);max-width: 26rem;padding: clamp(1.25rem,3vw,1.75rem);text-decoration: none;transition: box-shadow 120ms ease,border-color 120ms ease}.home-tile:hover{border-color: var(--aura-accent-color);box-shadow: var(--aura-shadow-m)}.home-tile:focus-visible{border-color: var(--aura-accent-color);outline: 2px solid var(--aura-accent-color);outline-offset: 2px}.home-tile:active{box-shadow: var(--aura-shadow-s);opacity: 0.88}.home-tile-title{color: var(--vaadin-text-color);font-size: var(--aura-font-size-l);font-weight: var(--aura-font-weight-medium)}.home-tile-description{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s);margin: 0}.user-management-view{box-sizing: border-box;gap: var(--vaadin-gap-m);padding: clamp(1rem,3vw,2rem)}.snapshot-management-view{box-sizing: border-box;gap: var(--vaadin-gap-l);max-width: 78rem;padding: clamp(1rem,3vw,2rem)}.snapshot-intro{color: var(--vaadin-text-color-secondary);margin: 0;max-width: 50rem}.snapshot-action-grid{display: grid;gap: var(--vaadin-gap-m);grid-template-columns: repeat(auto-fit,minmax(min(100%,22rem),1fr));width: 100%}.snapshot-action-card{align-items: flex-start;background: var(--aura-surface-color-solid);border: 1px solid var(--vaadin-border-color-secondary);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-s);box-sizing: border-box;gap: var(--vaadin-gap-s);min-height: 19rem;padding: clamp(1.25rem,3vw,1.75rem)}.snapshot-action-icon{background: color-mix(in srgb,var(--aura-accent-color) 12%,transparent);border-radius: var(--vaadin-radius-m);box-sizing: content-box;color: var(--aura-accent-text-color);padding: var(--vaadin-padding-s)}.snapshot-rollback-card .snapshot-action-icon{background: color-mix(in srgb,var(--aura-orange) 14%,transparent);color: var(--aura-orange-text)}.snapshot-action-title{margin: var(--vaadin-padding-xs) 0 0}.snapshot-action-description,.snapshot-action-detail{margin: 0}.snapshot-action-description{color: var(--vaadin-text-color)}.snapshot-action-detail{color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-s)}.snapshot-comment-field{margin-top: auto}.snapshot-action-button{margin-top: auto}.snapshot-comment-field + .snapshot-action-button{margin-top: var(--vaadin-gap-xs)}.snapshot-grid{background: var(--aura-surface-color-solid);border: 1px solid var(--vaadin-border-color-secondary);border-radius: var(--vaadin-radius-l);box-shadow: var(--aura-shadow-s);overflow: hidden}.view-heading{margin: 0}.user-management-grid{min-height: 20rem}vaadin-grid::part(truncate-cell){overflow: hidden;text-overflow: ellipsis;white-space: nowrap}vaadin-grid vaadin-button[theme~="icon"]{border: 1px solid var(--vaadin-border-color);border-radius: var(--vaadin-radius-m)}vaadin-grid vaadin-button[theme~="icon"][theme~="error"]{border-color: var(--aura-red);color: var(--aura-red)}vaadin-grid vaadin-button[theme~="icon"]:disabled{border-color: var(--vaadin-border-color);opacity: var(--vaadin-disabled-opacity,0.5)}.import-job-actions{align-items: center;display: inline-flex;gap: var(--vaadin-gap-xs)}.import-job-report-button{align-items: center;border: 1px solid var(--vaadin-border-color);border-radius: var(--vaadin-radius-m);box-sizing: border-box;color: var(--vaadin-text-color);display: inline-flex;height: var(--vaadin-button-height);justify-content: center;min-width: var(--vaadin-button-height)}.import-job-report-button:hover{background: var(--aura-surface-color)}.import-job-report-button[disabled]{border-color: var(--vaadin-border-color);opacity: var(--vaadin-disabled-opacity,0.5)}