.core-announcements{width: 100%;box-sizing: border-box}.core-announcement{--announcement-accent: var(--lumo-primary-color);position: relative;padding: 0.75rem 3rem 0.75rem 1rem;border-left: 4px solid var(--announcement-accent);border-radius: var(--aura-border-radius,var(--lumo-border-radius-m));background: color-mix(in srgb,var(--announcement-accent) 10%,var(--aura-surface-color,var(--lumo-base-color)))}.core-announcement-danger{--announcement-accent: var(--lumo-error-color)}.core-announcement-warning{--announcement-accent: var(--lumo-warning-color,#b7791f)}.core-announcement-success{--announcement-accent: var(--lumo-success-color,#16834b)}.core-announcement-primary{--announcement-accent: var(--aura-primary-color,var(--lumo-primary-color))}.core-announcement-title{font-weight: 600}.core-announcement-message{margin-top: 0.35rem}.core-announcement-message p{margin: 0.25rem 0}.core-announcement vaadin-button{position: absolute;top: 0.25rem;right: 0.25rem}.announcement-admin-page{width: min(64rem,100%);margin: 0 auto;padding: var(--vaadin-padding-l);gap: var(--vaadin-gap-l)}.announcement-admin-heading{display: flex;flex-direction: column;gap: var(--vaadin-gap-xs)}.announcement-admin-heading h2{margin: 0}.announcement-admin-description{color: var(--vaadin-text-color-secondary)}.announcement-form{padding: var(--vaadin-padding-l);border: 1px solid var(--vaadin-border-color-secondary);border-radius: var(--aura-border-radius,var(--lumo-border-radius-l));background: var(--aura-surface-color,var(--lumo-base-color))}.announcement-form h3{margin: var(--vaadin-margin-m) 0 0;font-size: var(--aura-font-size-l,var(--lumo-font-size-l))}.announcement-admin-actions{justify-content: flex-end}:where(:root),:where(:host){--vaadin-app-layout-drawer-width: 256px}vaadin-app-layout.jmix-main-view-app-layout:not([primary-section='navbar']){--vaadin-app-layout-navbar-padding-top: var(--aura-app-layout-inset);--vaadin-app-layout-navbar-padding-inline-start: var(--aura-app-layout-inset);--vaadin-app-layout-navbar-padding-inline-end: var(--aura-app-layout-inset);--vaadin-app-layout-navbar-padding-bottom: 0px;transition: padding-bottom var(--vaadin-app-layout-transition-duration),padding-inline-start var(--vaadin-app-layout-transition-duration),padding-inline-end var(--vaadin-app-layout-transition-duration)}vaadin-app-layout.jmix-main-view-app-layout[drawer-opened]:not([primary-section='navbar']){--vaadin-app-layout-navbar-padding-inline-start: 0px}vaadin-app-layout.jmix-main-view-app-layout:not([primary-section='navbar'])::part(navbar){transition: inset-inline-start var(--vaadin-app-layout-transition-duration),padding var(--vaadin-app-layout-transition-duration)}vaadin-app-layout.jmix-main-view-app-layout[has-navbar]:not([primary-section='navbar'])>:nth-child(1 of :not([slot]):not(jmix-timer)):nth-last-child(1 of :not([slot]):not(jmix-timer)){border-top-width: 0;border-start-start-radius: 0;border-start-end-radius: 0}vaadin-app-layout.jmix-main-view-app-layout[has-navbar][has-drawer][drawer-opened]:not([overlay]):not([primary-section='navbar'])>:nth-child(1 of :not([slot]):not(jmix-timer)):nth-last-child(1 of :not([slot]):not(jmix-timer)){border-start-start-radius: 0}vaadin-app-layout.jmix-main-view-app-layout:not([primary-section='navbar']) .jmix-main-view-header{background: linear-gradient(var(--aura-surface-color),var(--aura-surface-color)),var(--aura-app-background);background-clip: padding-box;background-origin: border-box;border: var(--aura-app-layout-border-width) solid var(--vaadin-border-color-secondary);border-top-width: min(var(--aura-app-layout-inset),var(--aura-app-layout-border-width));border-inline-width: min(var(--aura-app-layout-inset),var(--aura-app-layout-border-width));border-bottom-width: 1px;border-start-start-radius: var(--_app-layout-radius);border-start-end-radius: var(--_app-layout-radius);padding: var(--vaadin-padding-s) var(--vaadin-padding-m)}vaadin-app-layout.jmix-main-view-app-layout:not([primary-section='navbar'])::part(navbar-bottom){border-top: 1px solid var(--vaadin-border-color-secondary)}vaadin-app-layout.jmix-main-view-app-layout[has-drawer][drawer-opened]:not([overlay]):not([primary-section='navbar'])>.jmix-main-view-header{border-inline-start-width: var(--aura-app-layout-border-width)}.jmix-main-view-header{display: flex;align-items: center;width: 100%;box-sizing: border-box;gap: var(--vaadin-gap-m)}.jmix-main-view-title{font-size: var(--aura-font-size-xl)}.jmix-main-view-section{display: flex;flex-direction: column;align-items: stretch;max-height: 100%;min-height: 100%}.jmix-main-view-application-title{display: flex;align-items: center;margin: 0;padding: var(--vaadin-padding-m);font-size: var(--aura-font-size-l)}.jmix-main-view-application-logo{width: var(--lumo-size-m);height: var(--lumo-size-m);object-fit: contain;margin-inline-end: var(--lumo-space-s)}.jmix-main-view-application-title-base-link{color: var(--vaadin-text-color);text-decoration: none}.jmix-main-view-navigation{display: flex;flex-direction: column;flex-grow: 1;overflow: auto}.jmix-main-view-footer{display: flex;align-items: center;gap: var(--vaadin-gap-m);padding: var(--vaadin-padding-m);padding-bottom: max(0px,var(--aura-app-layout-inset) - var(--vaadin-padding-m));border-top: 1px solid var(--vaadin-border-color-secondary)}.jmix-main-view-footer .jmix-user-indicator{flex-grow: 1}.jmix-main-view-user-menu{margin-inline-start: auto}.admin-notifications-bell{position: relative;display: flex;align-items: center;flex: none;margin-inline-end: var(--vaadin-gap-xs)}.admin-notifications-button{color: var(--vaadin-text-color-secondary)}.admin-notifications-button:hover{color: var(--vaadin-text-color)}.admin-notifications-badge{position: absolute;inset-block-start: 2px;inset-inline-end: 2px;min-width: 0.55rem;height: 0.55rem;padding: 0 0.18rem;border-radius: 999px;background: var(--vaadin-error-color);color: var(--vaadin-error-contrast-color);font-size: 0.625rem;line-height: 0.9rem;text-align: center;pointer-events: none}vaadin-dialog-overlay.admin-notifications-dialog{align-items: stretch;justify-content: flex-end}vaadin-dialog-overlay.admin-notifications-dialog::part(overlay){width: min(30rem,100vw);max-width: 100vw;height: 100dvh;max-height: 100dvh;margin: 0;border-radius: 0;animation: admin-notifications-slide-in 180ms ease-out}vaadin-dialog-overlay.admin-notifications-dialog::part(content){display: flex;flex-direction: column;overflow: hidden;padding: 0}.admin-notifications-dialog-header{box-sizing: border-box;flex: none;padding: var(--vaadin-padding-m);border-bottom: 1px solid var(--vaadin-border-color-secondary)}.admin-notifications-dialog-title{font-size: var(--vaadin-font-size-l);font-weight: 600}.admin-notifications-close-button{flex: none;color: var(--vaadin-text-color-secondary)}.admin-notifications-list{box-sizing: border-box;flex: 1;overflow: auto;gap: var(--vaadin-gap-s);padding: var(--vaadin-padding-s) var(--vaadin-padding-m) var(--vaadin-padding-m)}.admin-notification-card{display: grid;gap: var(--vaadin-gap-xs);padding: var(--vaadin-padding-m);border: 1px solid var(--vaadin-border-color-secondary);border-inline-start: 3px solid var(--vaadin-border-color);border-radius: var(--vaadin-radius-m);background: var(--vaadin-background-container)}.admin-notification-card-error{border-inline-start-color: var(--vaadin-error-color)}.admin-notification-card-critical{border-inline-start-width: 5px;border-inline-start-color: var(--vaadin-error-color)}.admin-notification-card-warning{border-inline-start-color: var(--vaadin-warning-color)}.admin-notification-card-heading{display: flex;align-items: center;justify-content: space-between;gap: var(--vaadin-gap-s)}.admin-notification-severity{color: var(--vaadin-text-color-secondary);font-size: var(--vaadin-font-size-s);font-weight: 600}.admin-notification-card-critical .admin-notification-severity{color: var(--vaadin-error-color)}.admin-notification-card-error .admin-notification-severity{color: var(--vaadin-error-color)}.admin-notification-card-warning .admin-notification-severity{color: var(--vaadin-warning-color)}.admin-notification-time{color: var(--vaadin-text-color-tertiary);font-size: var(--vaadin-font-size-xs)}.admin-notification-card-title{color: var(--vaadin-text-color);font-weight: 600}.admin-notification-card-message{color: var(--vaadin-text-color-secondary);font-size: var(--vaadin-font-size-s);line-height: 1.45;overflow-wrap: anywhere}.admin-notifications-empty{padding: var(--vaadin-padding-l) var(--vaadin-padding-m);color: var(--vaadin-text-color-secondary);text-align: center}@keyframes admin-notifications-slide-in{from{transform: translateX(1rem);opacity: 0.7}to{transform: translateX(0);opacity: 1}}.user-menu-button-content,.user-menu-header-content{display: grid;grid-template: "avatar text" "avatar subtext";grid-template-columns: auto 1fr;column-gap: var(--vaadin-gap-s);width: max-content;box-sizing: border-box;color: var(--vaadin-text-color);padding: var(--vaadin-padding-xs) var(--vaadin-padding-s)}.user-menu-header-content{width: 100%;padding-inline-end: var(--vaadin-padding-l)}.user-menu-button-content>.user-menu-avatar,.user-menu-header-content>.user-menu-avatar{grid-area: avatar;align-self: center}.user-menu-button-content>.user-menu-text{grid-row: text / subtext}.jmix-main-view-user-menu[theme~='substituted'] .user-menu-button-content>.user-menu-text{grid-row: text}.user-menu-header-content>.user-menu-text{grid-area: text;color: var(--vaadin-text-color);font-weight: 700;font-size: var(--aura-font-size-m)}.user-menu-header-content>.user-menu-text-subtext{grid-row: text / subtext}.user-menu-button-content>.user-menu-text,.user-menu-header-content>.user-menu-text{align-self: center;text-align: start;width: 100%;overflow: hidden;text-overflow: ellipsis}.user-menu-button-content>.user-menu-subtext,.user-menu-header-content>.user-menu-subtext{grid-area: subtext;align-self: center;text-align: start;color: var(--vaadin-text-color-secondary);font-size: var(--aura-font-size-xs);width: 100%;overflow: hidden;text-overflow: ellipsis}.jmix-main-view-user-menu:not([theme~='substituted']) .user-menu-button-content>.user-menu-subtext{display: none}.jmix-initial-layout{--title-size: round(var(--aura-font-size-m) * 2.5,0.0625rem);--title-color: var(--vaadin-text-color-secondary);width: 100%;height: 100%;align-items: center;justify-content: center;container-type: inline-size;container-name: jmix-initial-layout}.jmix-initial-layout-content{display: flex;justify-content: space-between;width: 100%;max-width: 50rem;padding: var(--vaadin-padding-xl);box-sizing: border-box}.jmix-initial-layout-title{position: relative;color: var(--title-color);font-size: var(--title-size);line-height: calc(4 * var(--title-size));box-sizing: border-box}.jmix-initial-layout-title:after{position: absolute;width: 100%;height: 0.3rem;content: '';background: var(--title-color);top: 0;left: 0}.jmix-initial-layout-logo{--logo-size: calc(2.5 * var(--title-size));width: var(--logo-size);height: var(--logo-size)}@container jmix-initial-layout (max-width: 45rem){.jmix-initial-layout-content{flex-direction: column-reverse;align-items: center;gap: var(--vaadin-gap-l)}.jmix-initial-layout-title{padding-top: var(--vaadin-padding-m);line-height: var(--aura-line-height-m);text-align: center}}.jmix-main-view-navigation>.jmix-menu-filter-field{margin: var(--vaadin-padding-s) var(--vaadin-padding-m)}.jmix-main-view-navigation>.jmix-search-field{display: flex;margin: auto var(--vaadin-padding-m) var(--vaadin-padding-s) var(--vaadin-padding-m)}.jmix-main-view-header>.jmix-search-field{margin-inline-start: auto;margin-inline-end: var(--vaadin-padding-m)}.jmix-main-view-top-menu-app-layout{--vaadin-app-layout-navbar-padding-bottom: 0px}vaadin-app-layout.jmix-main-view-top-menu-app-layout::part(navbar){min-height: 0;border-bottom: 0}.jmix-main-view-top-menu-navigation-bar-box{padding: 0;width: 100%}.jmix-main-view-top-menu-view-header-box{width: 100%;border-top: 1px solid var(--vaadin-border-color-secondary)}.jmix-main-view-top-menu-navigation{display: flex;flex-grow: 1;overflow: auto}.jmix-main-view-top-menu-header{display: flex;align-items: center;width: 100%;box-sizing: border-box;gap: var(--vaadin-gap-m)}.jmix-main-view-top-menu-logo-container{display: flex;margin: 0 var(--vaadin-padding-m)}.jmix-main-view-top-menu-logo{--logo-size: round(var(--aura-base-size) * 2.5 * 1px,1px);width: var(--logo-size);height: var(--logo-size)}.jmix-main-view-top-menu-user-box{align-self: flex-end;align-items: center;margin: 0 var(--vaadin-padding-m);max-width: 20em}.jmix-main-view-top-menu-view-title{font-size: var(--aura-font-size-xl);margin: var(--vaadin-padding-s) var(--vaadin-padding-m)}.jmix-login-main-layout jmix-login-form::part(form){--vaadin-login-form-border-radius: var(--vaadin-radius-l);--vaadin-login-form-background: var(--aura-surface-color);box-shadow: var(--aura-shadow-s);border: 1px solid var(--vaadin-border-color)}.account-public-page,.account-settings-page{--account-accent: var(--app-brand-accent,#0d766e);--account-border: color-mix(in srgb,var(--vaadin-text-color,var(--lumo-body-text-color,#172b35)) 12%,transparent);--account-muted: var(--vaadin-text-color-secondary,var(--lumo-secondary-text-color,#61727c));--account-surface: var(--vaadin-background-color,var(--lumo-base-color,#fff));--vaadin-button-primary-background: var(--account-accent);--lumo-primary-color: var(--account-accent);box-sizing: border-box}.account-public-page{min-height: 100%;height: auto;overflow: auto;align-items: center;justify-content: center;padding: clamp(1rem,4vw,3rem);background: radial-gradient(ellipse at 15% 15%,#dcefe9 0,transparent 55%),radial-gradient(ellipse at 90% 85%,#e3eaf7 0,transparent 50%),#f3f6f8}.account-public-shell{display: grid;grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr);flex-shrink: 0;width: min(100%,1020px);border: 1px solid var(--account-border);border-radius: 24px;overflow: hidden;box-shadow: 0 24px 80px #112b3b14;background: var(--account-surface)}.account-brand-panel{display: flex;flex-direction: column;align-items: flex-start;position: relative;padding: clamp(2rem,4vw,3.5rem);color: #fff;background: radial-gradient(circle at 5% 90%,color-mix(in srgb,var(--account-accent) 55%,transparent),transparent 60%),linear-gradient(145deg,#102b3b,#153e47)}.account-monogram{display: grid;place-items: center;height: 48px;width: 48px;border-radius: 14px;background: #ffffff14;border: 1px solid #ffffff30;font-size: 1.5rem;font-weight: 750}.account-brand-name{margin-top: 1rem;font-size: 1rem;letter-spacing: .05em;font-weight: 650}.account-brand-panel h1{font-size: clamp(1.8rem,3vw,2.6rem);line-height: 1.16;letter-spacing: -.035em;color: inherit;margin: 3rem 0 1.25rem;max-width: 12ch}.account-brand-description{line-height: 1.75;color: #d3e4e7;max-width: 32ch}.account-brand-footer{margin-top: auto;padding-top: 3rem;font-size: .85rem;color: #b9d3d6}.account-login-card,.account-access-card{min-width: 0;padding: clamp(1.5rem,4vw,3rem);gap: .5rem;box-sizing: border-box}.account-eyebrow{text-transform: uppercase;letter-spacing: .14em;font-size: .72rem;font-weight: 750;color: var(--account-accent)}.account-page-title{font-size: clamp(1.5rem,2.5vw,2rem);line-height: 1.25;letter-spacing: -.03em;margin: .4rem 0 .7rem}.account-help{display: block;color: var(--account-muted);font-size: .9rem;line-height: 1.65}.account-login-form{width: 100%;--vaadin-login-form-background: transparent;--vaadin-login-form-padding: 0;--vaadin-login-form-width: 100%}.account-login-form::part(form){padding: 0;max-width: none}.account-login-form::part(form-title){display: none}.account-login-card vaadin-login-form-wrapper::part(form){padding: 0;max-width: none}.account-login-card vaadin-login-form-wrapper::part(form-title){display: none}.account-login-card>vaadin-text-field{margin-bottom: .75rem}.account-divider{display: flex;align-items: center;gap: .8rem;color: var(--account-muted);font-size: .8rem;width: 100%;margin: .5rem 0}.account-divider::before,.account-divider::after{content: '';height: 1px;flex: 1;background: var(--account-border)}.account-passkey-button{border: 1px solid var(--account-border);background: transparent;min-height: 44px}.account-tabs{width: 100%;min-width: 0;border-radius: 16px}.account-tabs::part(tabs-container){border-bottom: 1px solid var(--account-border)}.account-tabs::part(content){padding: 0}.account-section{width: 100%;box-sizing: border-box;gap: 1rem;padding: 1.5rem 0}.account-section-title{font-size: 1.15rem;margin: 0;letter-spacing: -.02em}.account-section>.account-help{margin-top: -.4rem}.account-public-page vaadin-button[theme~="primary"],.account-primary{--vaadin-button-background: var(--account-accent);--vaadin-button-text-color: white}.account-primary{min-height: 44px;margin-top: .25rem}.account-access-card .account-primary{width: 100%}.account-back{align-self: center;margin-top: 1rem}.account-feedback{display: block;padding: 1rem;margin-top: 1rem;line-height: 1.6;border-radius: 12px;border: 1px solid color-mix(in srgb,var(--account-accent) 25%,transparent);background: color-mix(in srgb,var(--account-accent) 5%,transparent);width: 100%;box-sizing: border-box;overflow-wrap: anywhere}.account-feedback:empty{display: none}.account-feedback-error{border-color: #c63d3d40;background: #c63d3d0b}.account-settings-page{overflow: auto;padding: clamp(1rem,3vw,2.5rem)}.account-settings-shell{max-width: 900px;margin: 0 auto}.account-settings-description{margin-bottom: 1.75rem}.account-verification{background: var(--account-surface);border: 1px solid var(--account-border);border-radius: 16px;padding: 1.5rem;margin-bottom: 1.25rem}.account-settings-page .account-tabs{background: var(--account-surface);border: 1px solid var(--account-border)}.account-security-locked{filter: blur(6px);opacity: .48;pointer-events: none;user-select: none;transition: filter .2s ease,opacity .2s ease}.account-settings-page .account-tabs .account-section{padding: 1.5rem}.account-status{display: inline-flex;align-self: flex-start;padding: .35rem .7rem;border-radius: 999px;font-size: .8rem;font-weight: 600}.account-status-enabled{background: color-mix(in srgb,var(--account-accent) 8%,transparent);color: var(--account-accent)}.account-status-pending{background: color-mix(in srgb,var(--account-muted) 12%,transparent);color: var(--account-muted)}.account-totp-setup{border: 1px solid var(--account-border);border-radius: 12px;padding: 1.25rem;box-sizing: border-box}.account-qr{width: 240px;max-width: 100%;height: auto;border-radius: 8px;background: #fff}.account-recovery-codes{font-family: ui-monospace,monospace}.account-passkey-list{gap: .75rem}.account-session-list{gap: .75rem}.account-session-row{width: 100%;gap: .5rem;border: 1px solid var(--account-border);border-radius: 12px;padding: 1rem;box-sizing: border-box}.account-session-heading{align-items: center;justify-content: space-between;flex-wrap: wrap;font-weight: 650}.account-session-end{align-self: flex-start}.account-passkey-row{border: 1px solid var(--account-border);border-radius: 12px;padding: 1rem;box-sizing: border-box}.account-passkey-row vaadin-icon{color: var(--account-accent);flex-shrink: 0}.account-key-name{font-weight: 650;overflow-wrap: anywhere}.account-empty{display: block;padding: 1.5rem;color: var(--account-muted);background: color-mix(in srgb,var(--account-muted) 5%,transparent);border: 1px dashed var(--account-border);border-radius: 12px;width: 100%;box-sizing: border-box}@media (max-width: 760px){.account-public-page{justify-content: flex-start;padding: 1rem}.account-public-shell{grid-template-columns: 1fr;max-width: 540px;border-radius: 18px}.account-brand-panel{padding: 1.5rem}.account-brand-panel h1{margin: 1.25rem 0 .75rem;max-width: none;font-size: 1.65rem}.account-brand-description{max-width: none}.account-brand-footer{display: none}.account-monogram{height: 36px;width: 36px;font-size: 1.15rem}.account-brand-name{margin-top: .6rem}.account-settings-page .account-tabs .account-section,.account-verification{padding: 1rem}.account-passkey-row{flex-wrap: wrap}.account-passkey-row>vaadin-vertical-layout{min-width: 130px}}@media (prefers-reduced-motion: no-preference){.account-public-shell{animation: account-appear .3s ease-out}@keyframes account-appear{from{opacity: 0;transform: translateY(8px)}to{opacity: 1;transform: translateY(0)}}}.support-page{padding-bottom: 1rem}.support-chat{--support-border: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);--support-muted: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 62%,transparent);box-sizing: border-box;height: calc(100vh - 9rem);min-height: 30rem;border: 1px solid var(--support-border);border-radius: 16px;overflow: hidden;background: var(--lumo-base-color,#fff);box-shadow: 0 12px 36px #112b3b0d}.support-chat-sidebar{display: flex;flex-direction: column;gap: .75rem;box-sizing: border-box;flex: 0 0 22rem;width: 22rem;max-width: 40%;padding: 1rem;border-right: 1px solid var(--support-border);overflow: hidden}.support-chat-sidebar-header{width: 100%}.support-chat-sidebar-title{margin: 0;font-size: 1.15rem;font-weight: 700}.support-chat-ticket-list{flex: 1;min-height: 0;overflow-y: auto;gap: .25rem;margin: 0 -.5rem;width: calc(100% + 1rem)}.support-chat-list-empty{padding: 1rem .5rem;color: var(--support-muted)}.support-chat-item{display: flex;flex-direction: column;gap: .15rem;box-sizing: border-box;width: 100%;padding: .6rem .75rem;border-radius: 12px;cursor: pointer}.support-chat-item:hover{background: color-mix(in srgb,var(--app-brand-accent) 6%,transparent)}.support-chat-item:focus-visible{outline: 2px solid var(--app-brand-accent);outline-offset: -2px}.support-chat-item-selected,.support-chat-item-selected:hover{background: color-mix(in srgb,var(--app-brand-accent) 12%,transparent)}.support-chat-item-top,.support-chat-item-bottom{display: flex;align-items: baseline;justify-content: space-between;gap: .5rem}.support-chat-item-subject{font-weight: 650;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.support-chat-item-time{flex: none;font-size: .75rem;color: var(--support-muted)}.support-chat-item-requester{font-size: .8rem;color: var(--support-muted)}.support-chat-item-preview{min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: .85rem;color: var(--support-muted)}.support-chat-badge{flex: none;padding: .05rem .5rem;border-radius: 999px;font-size: .7rem;font-weight: 600}.support-chat-badge-open{background: #fff1d6;color: #7a4b00}.support-chat-badge-answered{background: #d9f2ec;color: #0b5d55}.support-chat-badge-closed{background: #e6e9ec;color: #4a5560}.support-chat-main{display: flex;flex-direction: column;flex: 1;min-width: 0;height: 100%}.support-chat-header{display: flex;align-items: center;justify-content: space-between;gap: 1rem;padding: .85rem 1.25rem;border-bottom: 1px solid var(--support-border)}.support-chat-heading{min-width: 0;display: flex;flex-direction: column}.support-chat-title{margin: 0;font-size: 1.1rem;font-weight: 700;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.support-chat-meta{font-size: .8rem;color: var(--support-muted)}.support-chat-messages{flex: 1;min-height: 0;overflow-y: auto;display: flex;flex-direction: column;gap: .5rem;padding: 1.25rem;background: color-mix(in srgb,var(--lumo-base-color,#fff) 96%,var(--app-brand-accent))}.support-chat-message{display: flex;flex-direction: column;gap: .1rem;box-sizing: border-box;max-width: min(34rem,80%);padding: .5rem .8rem;border-radius: 16px;background: var(--lumo-base-color,#fff);border: 1px solid var(--support-border)}.support-chat-message-other{align-self: flex-start;border-bottom-left-radius: 4px}.support-chat-message-own{align-self: flex-end;border-bottom-right-radius: 4px;background: var(--app-brand-accent);border-color: transparent;color: #fff}.support-chat-message-author{font-size: .72rem;font-weight: 650;opacity: .75}.support-chat-message-body{white-space: pre-wrap;overflow-wrap: anywhere}.support-chat-message-time{align-self: flex-end;font-size: .68rem;opacity: .7}.support-chat-composer{padding: .75rem 1.25rem 1rem;border-top: 1px solid var(--support-border);display: flex;flex-direction: column;gap: .5rem}.support-chat-quick-replies{display: flex;flex-wrap: wrap;gap: .35rem}.support-chat-chip{border: 1px solid var(--support-border);border-radius: 999px}.support-chat-input-row{position: relative;display: flex;align-items: flex-end;gap: .5rem}.support-chat-attach-toggle{flex: none;width: 2.75rem;height: 2.75rem;border: 1px solid var(--support-border);border-radius: 50%;background: var(--lumo-base-color,#fff)}.support-chat-attach-menu{position: absolute;z-index: 5;left: 0;bottom: calc(100% + .65rem);display: flex;flex-direction: column;gap: .25rem;min-width: 13rem;padding: .45rem;border: 1px solid var(--support-border);border-radius: 12px;background: var(--lumo-base-color,#fff);box-shadow: 0 8px 28px #112b3b24}.support-chat-attach-menu .support-chat-attach-option{width: 100%;justify-content: flex-start;text-align: left}.support-chat-attach-menu .support-chat-upload{width: 100%}.support-chat-attach-menu .support-chat-upload vaadin-button{width: 100%;justify-content: flex-start}.support-chat-input{flex: 1}.support-chat-closed{padding: .85rem 1.25rem;text-align: center;color: var(--support-muted);border-top: 1px solid var(--support-border)}.support-chat-empty{margin: auto;padding: 2rem;text-align: center;color: var(--support-muted)}@media (max-width: 800px){.support-chat{flex-direction: column;height: auto}.support-chat-sidebar{flex: none;width: auto;max-width: none;max-height: 16rem;border-right: 0;border-bottom: 1px solid var(--support-border)}.support-chat-main{height: 34rem}}.support-popup{position: fixed;right: 1.25rem;bottom: 1.25rem;z-index: 20;display: flex;flex-direction: column;align-items: flex-end;gap: .75rem}.support-popup-launcher-wrap{position: relative}.support-popup-launcher{width: 3.5rem;height: 3.5rem;margin: 0;border-radius: 50%;box-shadow: 0 8px 24px #112b3b40}.support-popup-badge{position: absolute;top: -.25rem;right: -.25rem;min-width: 1.25rem;height: 1.25rem;box-sizing: border-box;padding: 0 .3rem;border-radius: 999px;background: #c62828;color: #fff;font-size: .72rem;font-weight: 700;line-height: 1.25rem;text-align: center;pointer-events: none}.support-popup-window{--support-border: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);--support-muted: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 62%,transparent);display: flex;flex-direction: column;overflow: hidden;box-sizing: border-box;width: min(24rem,calc(100vw - 2.5rem));height: min(34rem,calc(100vh - 6rem));border: 1px solid var(--support-border);border-radius: 16px;background: var(--lumo-base-color,#fff);box-shadow: 0 16px 48px #112b3b40}.support-popup-header{display: flex;align-items: center;gap: .25rem;padding: .5rem .75rem;background: var(--app-brand-accent);color: #fff}.support-popup-title{flex: 1;font-weight: 650}.support-popup-action{color: #fff;margin: 0}.support-popup-list-screen{display: flex;flex-direction: column;flex: 1;min-height: 0;gap: .5rem;padding: .75rem}.support-popup-new{align-self: flex-start}.support-popup-list-screen .support-chat-list{display: flex;flex-direction: column;flex: 1;min-height: 0;gap: .5rem}.support-popup-window .support-chat-main{flex: 1;min-height: 0;height: auto}.support-popup-window .support-chat-header{padding: .5rem .75rem}.support-popup-window .support-chat-messages{padding: .75rem}.support-popup-window .support-chat-composer{padding: .5rem .75rem .75rem}.support-chat-list{display: flex;flex-direction: column;flex: 1;min-height: 0;gap: .75rem}.support-chat-presence{font-size: .8rem;font-weight: 600}.support-chat-presence-online{color: #0b6b3a}.support-chat-presence-online::before{content: "";display: inline-block;width: .5rem;height: .5rem;margin-right: .35rem;border-radius: 50%;background: #1fa65a}.support-chat-presence-offline{color: var(--support-muted)}.support-chat-privacy{font-size: .72rem;color: var(--support-muted)}.support-chat-upload{flex: none;padding: 0;border: 0}.support-chat-upload::part(file-list){display: none}.support-chat-pending{display: flex;align-items: center;gap: .5rem;align-self: flex-start;padding: .25rem .5rem;border: 1px solid var(--support-border);border-radius: 999px;font-size: .85rem}.support-chat-object-card{width: 100%;max-width: 100%;min-height: 2.35rem;justify-content: flex-start;gap: .55rem;margin: .2rem 0 0;padding: .35rem .65rem;border: 1px solid var(--support-border);border-radius: 10px;background: color-mix(in srgb,var(--app-brand-accent) 5%,var(--lumo-base-color,#fff));color: inherit;font-size: .82rem;font-weight: 600;text-align: left;white-space: normal}.support-chat-object-card:hover:not([disabled]){background: color-mix(in srgb,var(--app-brand-accent) 12%,var(--lumo-base-color,#fff))}.support-chat-message-own .support-chat-object-card{border-color: color-mix(in srgb,#fff 30%,transparent);background: color-mix(in srgb,#fff 12%,transparent);color: #fff}.support-chat-object-card[disabled]{opacity: .9}.support-chat-object-card::part(label){overflow-wrap: anywhere;text-align: left}.support-chat-object-chip{min-height: 2rem;max-width: min(100%,22rem);margin: 0;padding: .15rem .55rem;border: 1px solid color-mix(in srgb,var(--app-brand-accent) 24%,var(--support-border));border-radius: 999px;background: color-mix(in srgb,var(--app-brand-accent) 7%,var(--lumo-base-color,#fff));font-size: .78rem}.support-chat-object-chip::part(label){overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.support-chat-object-chip::part(prefix),.support-chat-object-chip::part(suffix){color: var(--app-brand-accent)}.support-chat-composer .support-chat-pending:not(:empty){display: flex;flex-wrap: wrap;align-self: stretch;gap: .35rem;padding: 0;border: 0}.support-chat-attach-object{flex: none;white-space: nowrap}.support-chat-pending-name{max-width: 14rem;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.support-chat-image-link{display: block}.support-chat-image{display: block;max-width: 100%;max-height: 16rem;border-radius: 10px;object-fit: contain}.support-chat-header-actions{display: flex;flex-wrap: wrap;justify-content: flex-end;gap: .25rem}.support-chat-sound-toggle{flex: none;margin: 0}.support-chat-assignees{display: block;font-size: .8rem;color: var(--support-muted)}.support-chat-item-assignees{font-size: .75rem}.support-chat-item-assigned{color: var(--app-brand-accent);font-weight: 600}.support-chat-item-unassigned{color: var(--support-muted);font-style: italic}.support-chat-system{align-self: center;display: flex;gap: .5rem;max-width: 90%;padding: .2rem .75rem;border-radius: 999px;background: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 7%,transparent);color: var(--support-muted);font-size: .78rem;text-align: center}.support-chat-system-time{opacity: .75}.support-chat-rating{display: flex;flex-direction: column;gap: .5rem;align-items: flex-start;padding: .85rem 1.25rem;border-top: 1px solid var(--support-border);background: color-mix(in srgb,var(--app-brand-accent) 5%,transparent)}.support-chat-rating-title{font-weight: 650}.support-chat-stars{display: flex;gap: .1rem}.support-chat-star{margin: 0;font-size: 1.5rem;line-height: 1;color: var(--support-muted)}.support-chat-star-on{color: #e0a100}.support-chat-rating-readonly{overflow-wrap: anywhere}.console-page{--console-border: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);--console-muted: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 62%,transparent)}.console-header{display: flex;flex-wrap: wrap;align-items: flex-end;justify-content: space-between;gap: 1rem;margin-bottom: 1rem}.console-title{margin: 0;font-size: clamp(1.5rem,2.4vw,2rem);font-weight: 700;letter-spacing: -.03em}.console-tabs{background: var(--lumo-base-color,#fff);border: 1px solid var(--console-border);border-radius: 16px;box-shadow: 0 12px 36px #112b3b0d;overflow: hidden}.console-hint{display: block;padding: .25rem 0;font-size: .85rem;color: var(--console-muted)}.console-overview{display: flex;flex-direction: column;gap: 1rem;padding: 1rem}.console-overview-toolbar{display: flex;flex-wrap: wrap;align-items: flex-end;gap: 1rem}.console-tiles{display: grid;grid-template-columns: repeat(auto-fit,minmax(9rem,1fr));gap: .75rem}.console-tile{display: flex;flex-direction: column;gap: .15rem;padding: .65rem .85rem;border: 1px solid var(--console-border);border-radius: 12px}.console-tile-label{font-size: .75rem;color: var(--console-muted)}.console-tile-value{font-size: 1.2rem;font-weight: 700}.console-server-running{color: #0b6b3a}.console-server-stopped{color: #b3261e}.console-charts{display: grid;grid-template-columns: repeat(auto-fit,minmax(22rem,1fr));gap: 1rem}.console-chart{height: 16rem;border: 1px solid var(--console-border);border-radius: 12px;padding: .5rem;box-sizing: border-box}.console-terminal-wrap{box-sizing: border-box;height: calc(100vh - 17rem);min-height: 22rem;padding: .75rem;background: #0f1720}.console-terminal{height: 100%}.console-files{display: flex;flex-direction: column;height: calc(100vh - 17rem);min-height: 22rem}.console-files-toolbar{display: flex;flex-wrap: wrap;align-items: center;gap: .35rem;padding: .5rem .75rem;border-bottom: 1px solid var(--console-border)}.console-breadcrumb{display: flex;flex: 1;flex-wrap: wrap;align-items: center;min-width: 10rem;color: var(--console-muted)}.console-upload{flex: none}.console-file-name{display: flex;align-items: center;gap: .5rem}.console-icon-folder{color: #e0a100}.console-icon-file{color: var(--console-muted)}.console-schedules{display: flex;flex-direction: column;gap: .5rem;padding: 1rem;min-height: 22rem}.console-schedules-toolbar,.console-backups-toolbar{display: flex;flex-wrap: wrap;gap: .5rem}.console-backups,.console-schedules{padding: 1rem}.console-controls{padding: .75rem 1rem 0}.console-controls-bar{display: flex;flex-wrap: wrap;align-items: center;gap: .5rem}.console-controls-state{font-weight: 700;margin-right: .5rem}.console-days::part(group-field){display: flex;flex-flow: row wrap;gap: .25rem 1rem}.console-terminal-compact{height: 22rem}.console-terminal-wrap:has(.console-terminal-compact){height: 24rem;min-height: 0;border-radius: 12px}.console-vnc{display: flex;gap: 1rem;padding: 1rem;height: calc(100vh - 17rem);min-height: 24rem;box-sizing: border-box}.console-vnc-list{display: flex;flex-direction: column;flex: 0 0 22rem;max-width: 40%;min-width: 0;gap: .5rem}.console-vnc-tools{display: flex;align-items: center;gap: .25rem}.console-vnc-main{display: flex;flex-direction: column;flex: 1;min-width: 0;gap: .5rem}.console-vnc-bar{display: flex;flex-wrap: wrap;align-items: center;gap: .5rem}.console-vnc-current{font-weight: 650}.console-vnc-status{margin-left: auto;font-size: .85rem;color: var(--console-muted)}.console-vnc-status-ok{color: #0b6b3a}.console-vnc-status-error{color: #b3261e}.console-vnc-screen-wrap{flex: 1;min-height: 0;border-radius: 12px;overflow: hidden;background: #0f1720}.console-vnc-screen{height: 100%}@media (max-width: 800px){.console-vnc{flex-direction: column;height: auto}.console-vnc-list{flex: none;max-width: none;max-height: 14rem}.console-vnc-screen-wrap{min-height: 24rem}}.console-product{width: 100%;display: flex;flex-direction: column;gap: 1rem}.console-section{background: var(--lumo-base-color,#fff);border: 1px solid var(--console-border);border-radius: 16px;box-shadow: 0 12px 36px #112b3b0d;overflow: hidden}.console-section-console{display: flex;flex-direction: column}.console-section-title{margin: 0;padding: .85rem 1rem;font-size: 1.1rem;font-weight: 700;border-bottom: 1px solid var(--console-border)}.console-section-body{display: block}.console-vnc-compact{padding: 1rem;height: 34rem;box-sizing: border-box}.console-section-body .console-terminal-wrap{border-radius: 0 0 16px 16px}.console-terminal-wrap{position: relative}.console-terminal-reconnect{position: absolute;top: .75rem;right: .75rem;z-index: 2}.store-hero{position: relative;display: flex;flex-wrap: wrap;align-items: flex-end;justify-content: space-between;gap: 1.5rem;padding: 2.25rem 2rem;margin-bottom: 1.5rem;border-radius: 20px;color: #fff;background: radial-gradient(circle at 85% 20%,rgba(255,255,255,0.18),transparent 40%),linear-gradient(135deg,var(--app-brand-accent,#0d766e),color-mix(in srgb,var(--app-brand-accent,#0d766e) 55%,#0b2540));box-shadow: 0 12px 32px color-mix(in srgb,var(--app-brand-accent,#0d766e) 30%,transparent)}.store-hero h1{margin: 0;font-size: 2rem;font-weight: 700;letter-spacing: -0.02em;color: inherit}.store-hero p{margin: 0.35rem 0 0;opacity: 0.85;max-width: 32rem}.store-hero vaadin-text-field{min-width: min(22rem,100%)}.store-hero vaadin-text-field::part(input-field){background: rgba(255,255,255,0.95);border-radius: 999px;box-shadow: 0 4px 14px rgba(0,0,0,0.12)}.store-chips{display: flex;flex-wrap: wrap;gap: 0.5rem;margin-bottom: 1.5rem}.store-chip{margin: 0;padding: 0.45rem 1.1rem;border-radius: 999px;font-weight: 600;background: var(--lumo-base-color,#fff);color: var(--lumo-body-text-color,#1f2933);box-shadow: 0 1px 3px rgba(15,23,42,0.12);transition: transform 0.15s ease,box-shadow 0.15s ease}.store-chip:hover{transform: translateY(-1px);box-shadow: 0 4px 10px rgba(15,23,42,0.15)}.store-chip[active]{background: var(--app-brand-accent,#0d766e);color: #fff}.store-grid{display: grid;gap: 1.5rem;width: 100%;grid-template-columns: repeat(auto-fill,minmax(17rem,1fr))}.store-card{display: flex;flex-direction: column;overflow: hidden;cursor: pointer;border-radius: 18px;background: var(--lumo-base-color,#fff);box-shadow: 0 2px 8px rgba(15,23,42,0.08);transition: transform 0.2s ease,box-shadow 0.2s ease}.store-card:hover{transform: translateY(-4px);box-shadow: 0 14px 30px rgba(15,23,42,0.16)}.store-card-media{position: relative;overflow: hidden}.store-card-media img{transition: transform 0.4s ease}.store-card:hover .store-card-media img{transform: scale(1.05)}.store-card-badges{position: absolute;top: 0.75rem;left: 0.75rem;display: flex;gap: 0.4rem}.store-card-badges span{padding: 0.2rem 0.65rem;border-radius: 999px;font-size: 0.75rem;font-weight: 600;background: rgba(255,255,255,0.92);color: #1f2933;backdrop-filter: blur(6px)}.store-card-body{display: flex;flex-direction: column;flex: 1;gap: 0.5rem;padding: 1.1rem 1.25rem 1.25rem}.store-card-body h3{margin: 0;font-size: 1.15rem;letter-spacing: -0.01em}.store-card-body p{flex: 1;margin: 0;font-size: 0.9rem;line-height: 1.45;color: var(--lumo-secondary-text-color,#52606d)}.store-card-footer{display: flex;align-items: center;justify-content: space-between;gap: 0.75rem;margin-top: 0.5rem}.store-price{display: flex;flex-direction: column;line-height: 1.1}.store-price-from{font-size: 0.7rem;text-transform: uppercase;letter-spacing: 0.06em;color: var(--lumo-secondary-text-color,#52606d)}.store-price-amount{font-size: 1.35rem;color: var(--app-brand-accent,#0d766e)}.store-empty{padding: 3rem 1rem;text-align: center;color: var(--lumo-secondary-text-color,#52606d)}.store-config{display: grid;gap: 2rem;align-items: start;grid-template-columns: minmax(0,1.4fr) minmax(18rem,1fr)}@media (max-width: 62rem){.store-config{grid-template-columns: 1fr}}.store-config-main{display: flex;flex-direction: column;gap: 1.25rem}.store-config-main h1{margin: 0.5rem 0 0;font-size: 2rem;letter-spacing: -0.02em}.store-config-lead{white-space: pre-line;line-height: 1.6;color: var(--lumo-secondary-text-color,#52606d);margin: 0}.store-panel{display: flex;flex-direction: column;gap: 0.9rem;padding: 1.5rem;border-radius: 18px;background: var(--lumo-base-color,#fff);box-shadow: 0 2px 8px rgba(15,23,42,0.08)}.store-panel h3{margin: 0;font-size: 1.05rem}.store-summary{position: sticky;top: 1rem}.store-summary-row{display: flex;justify-content: space-between;gap: 1rem;font-size: 0.95rem}.store-summary-row.total{margin-top: 0.4rem;padding-top: 0.8rem;font-size: 1.25rem;font-weight: 700;border-top: 1px solid var(--lumo-contrast-10pct,#e4e7eb);color: var(--app-brand-accent,#0d766e)}.store-summary-config{font-size: 0.85rem;color: var(--lumo-secondary-text-color,#52606d)}.store-summary vaadin-button{width: 100%}.store-page-title{margin: 0.25rem 0 1rem;font-size: 2rem;letter-spacing: -0.02em}.store-cart-button{background: rgba(255,255,255,0.95);color: var(--app-brand-accent,#0d766e);border-radius: 999px;font-weight: 600}.store-lines{display: flex;flex-direction: column;gap: 1rem}.store-line{display: grid;align-items: center;gap: 1rem;padding: 1rem 1.25rem;border-radius: 16px;grid-template-columns: 4.5rem minmax(0,1fr) auto auto auto;background: var(--lumo-base-color,#fff);box-shadow: 0 2px 8px rgba(15,23,42,0.08)}@media (max-width: 40rem){.store-line{grid-template-columns: 4rem minmax(0,1fr)}}.store-line-thumb{width: 4.5rem}.store-line-info{display: flex;flex-direction: column;gap: 0.15rem;min-width: 0}.store-line-name{font-weight: 600;font-size: 1.05rem}.store-line-price{font-weight: 700;color: var(--app-brand-accent,#0d766e);min-width: 6rem;text-align: right}.store-line-problem{color: var(--lumo-error-text-color,#c0392b);font-weight: 600}.store-empty vaadin-button,.store-empty>div{margin-top: 1rem}.store-stepper{display: flex;flex-wrap: wrap;gap: 0.5rem;margin-bottom: 1.5rem}.store-step{padding: 0.45rem 1.1rem;border-radius: 999px;font-weight: 600;font-size: 0.9rem;white-space: pre;background: var(--lumo-contrast-5pct,#eef1f4);color: var(--lumo-secondary-text-color,#52606d)}.store-step[done]{background: color-mix(in srgb,var(--app-brand-accent,#0d766e) 15%,transparent);color: var(--app-brand-accent,#0d766e)}.store-step[active]{background: var(--app-brand-accent,#0d766e);color: #fff}.store-stepper{counter-reset: store-step}.store-step::before{counter-increment: store-step;content: counter(store-step) " "}.product-wizard{max-width: 60rem;margin: 0 auto;gap: 1rem}.product-wizard-header{gap: 0.35rem;margin-bottom: 0.5rem}.product-wizard-header h1{margin: 0}.product-wizard-eyebrow{color: var(--app-brand-accent,#0d766e);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase}.product-wizard-intro,.product-wizard-help{color: var(--lumo-secondary-text-color,#52606d);line-height: 1.55}.product-wizard-stepper{margin: 0 0 0.25rem}.product-wizard-card{box-sizing: border-box;gap: 1rem;padding: clamp(1rem,3vw,1.75rem);border: 1px solid var(--lumo-contrast-10pct,#dfe3e8);border-radius: 16px;background: var(--lumo-base-color,#fff);box-shadow: 0 4px 16px rgba(15,23,42,0.06)}.product-wizard-card h2{margin: 0;font-size: 1.25rem}.product-wizard-actions{align-items: center;margin-top: 0.25rem}.slave-wizard{max-width: 60rem;margin: 0 auto;gap: 1rem}.slave-wizard-header{gap: 0.35rem;margin-bottom: 0.5rem}.slave-wizard-header h1{margin: 0}.slave-wizard-eyebrow{color: var(--app-brand-accent,#0d766e);font-size: 0.78rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase}.slave-wizard-intro,.slave-wizard-help{color: var(--lumo-secondary-text-color,#52606d);line-height: 1.55}.slave-wizard-stepper{margin: 0 0 0.25rem}.slave-wizard-card{box-sizing: border-box;gap: 1rem;padding: clamp(1rem,3vw,1.75rem);border: 1px solid var(--lumo-contrast-10pct,#dfe3e8);border-radius: 16px;background: var(--lumo-base-color,#fff);box-shadow: 0 4px 16px rgba(15,23,42,0.06)}.slave-wizard-card h2{margin: 0;font-size: 1.25rem}.slave-wizard-key-note{padding: 0.9rem 1rem;border-radius: 10px;background: color-mix(in srgb,var(--app-brand-accent,#0d766e) 8%,var(--lumo-base-color,#fff));color: var(--lumo-secondary-text-color,#52606d);line-height: 1.5}.slave-wizard-actions{align-items: center;margin-top: 0.25rem}.store-rows{display: flex;flex-direction: column;gap: 0.4rem}.store-fields{display: flex;flex-direction: column;gap: 1rem}.store-pre{white-space: pre-line;font-weight: 600}.store-badges{display: flex;gap: 0.4rem}.store-actions{display: flex;flex-wrap: wrap;gap: 0.75rem}.store-nav{display: flex;gap: 0.75rem;justify-content: space-between}.store-aside{display: flex;flex-direction: column;gap: 1.25rem}.dash-page{--dash-gap: clamp(0.85rem,1.5vw,1.35rem);--dash-radius: 16px;--dash-border: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 7%,transparent);--dash-muted: var(--lumo-secondary-text-color,#52606d);--dash-good: #2e9e6b;--dash-warning: #d99100;--dash-danger: #d64545;margin-inline: auto;width: 100%;box-sizing: border-box;display: flex;flex-direction: column;gap: var(--dash-gap)}.dash-hero{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 1rem 2rem;padding: clamp(1.1rem,2.4vw,1.7rem) clamp(1.1rem,2.6vw,2rem);border-radius: 20px;color: #fff;background: radial-gradient(circle at 92% 0%,rgba(255,255,255,0.22),transparent 42%),radial-gradient(circle at 0% 120%,rgba(255,255,255,0.1),transparent 40%),linear-gradient(135deg,var(--app-brand-accent,#0d766e),color-mix(in srgb,var(--app-brand-accent,#0d766e) 48%,#0b2540));box-shadow: 0 14px 32px color-mix(in srgb,var(--app-brand-accent,#0d766e) 26%,transparent)}.dash-hero h1{margin: 0;font-size: clamp(1.45rem,3vw,2.05rem);font-weight: 700;letter-spacing: -0.025em;color: inherit}.dash-hero p{margin: 0.3rem 0 0;max-width: 38rem;opacity: 0.86}.dash-hero vaadin-button{--lumo-contrast-5pct: rgba(255,255,255,0.18);--lumo-contrast-10pct: rgba(255,255,255,0.28);--lumo-primary-text-color: #fff;--vaadin-button-background: rgba(255,255,255,0.18);--vaadin-button-text-color: #fff}.dash-hero vaadin-button[theme~="primary"]{--lumo-primary-color: #fff;--lumo-primary-contrast-color: var(--app-brand-accent,#0d766e);--vaadin-button-background: #fff;--vaadin-button-text-color: var(--app-brand-accent,#0d766e)}.dash-live{display: inline-flex;align-items: center;gap: 0.5rem;margin-top: 0.7rem;padding: 0.2rem 0.65rem 0.2rem 0.55rem;font-size: 0.78rem;border-radius: 999px;background: rgba(255,255,255,0.14)}.dash-live::before{content: "";width: 0.5rem;height: 0.5rem;border-radius: 50%;background: #5af0a3;box-shadow: 0 0 0 0 rgba(90,240,163,0.7);animation: dash-pulse 2s infinite}@keyframes dash-pulse{70%{box-shadow: 0 0 0 0.45rem rgba(90,240,163,0)}100%{box-shadow: 0 0 0 0 rgba(90,240,163,0)}}.dash-section-title{display: flex;align-items: center;gap: 0.6rem;margin: 0.9rem 0 -0.35rem;font-size: 1.05rem;font-weight: 700;letter-spacing: -0.01em}.dash-section-title::before{content: "";width: 4px;height: 1.1rem;border-radius: 2px;background: var(--app-brand-accent,#0d766e)}.dash-grid{display: grid;gap: var(--dash-gap);grid-template-columns: repeat(2,minmax(0,1fr))}@media (max-width: 22rem){.dash-grid{grid-template-columns: minmax(0,1fr)}}@media (min-width: 62rem){.dash-grid{grid-template-columns: repeat(4,minmax(0,1fr))}.dash-grid[data-count="3"]{grid-template-columns: repeat(3,minmax(0,1fr))}.dash-grid[data-count="5"]{grid-template-columns: repeat(5,minmax(0,1fr))}.dash-grid[data-count="6"]{grid-template-columns: repeat(3,minmax(0,1fr))}}.dash-charts,.dash-columns,.dash-split{display: grid;gap: var(--dash-gap);grid-template-columns: minmax(0,1fr)}@media (min-width: 46rem){.dash-charts{grid-template-columns: repeat(2,minmax(0,1fr))}.dash-charts .dash-card-wide{grid-column: 1 / -1}.dash-columns{grid-template-columns: repeat(auto-fit,minmax(20rem,1fr))}.dash-split{grid-template-columns: repeat(2,minmax(0,1fr))}.dash-split .dash-card-wide{grid-column: 1 / -1}}@media (min-width: 78rem){.dash-charts{grid-template-columns: 2fr 1fr 1fr}.dash-charts .dash-card-wide{grid-column: auto}.dash-split{grid-template-columns: minmax(13rem,0.8fr) minmax(17rem,1fr) minmax(0,2fr)}.dash-split .dash-card-wide{grid-column: auto}.dash-split-platform{grid-template-columns: minmax(0,2fr) minmax(17rem,1fr)}.dash-split-platform{align-items: start}.dash-split-platform .dash-stack{grid-template-columns: repeat(2,minmax(0,1fr));grid-auto-rows: auto}.dash-split-platform .dash-chart-host{height: 11rem}}.dash-stack{display: grid;gap: var(--dash-gap);grid-auto-rows: 1fr;grid-template-columns: minmax(0,1fr)}@media (min-width: 46rem) and (max-width: 78rem){.dash-stack{grid-template-columns: repeat(2,minmax(0,1fr));grid-column: 1 / -1}}.dash-card,.dash-kpi{min-width: 0;box-sizing: border-box;border-radius: var(--dash-radius);background: var(--lumo-base-color,#fff);border: 1px solid var(--dash-border);box-shadow: 0 1px 2px rgba(15,23,42,0.04),0 6px 18px rgba(15,23,42,0.05)}.dash-card{display: flex;flex-direction: column;gap: 0.6rem;padding: 1.1rem 1.3rem 1.2rem}.dash-card h3{margin: 0;font-size: 0.78rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.06em;color: var(--dash-muted)}.dash-chart-host{position: relative;height: clamp(12rem,22vw,15.5rem);min-width: 0}.dash-chart{display: block}.dash-empty{color: var(--dash-muted);font-size: 0.9rem}.dash-kpi{position: relative;display: flex;flex-direction: column;gap: 0.55rem;padding: 1rem 1.2rem 1.05rem;overflow: hidden;transition: transform 0.15s ease,box-shadow 0.15s ease,border-color 0.15s ease}.dash-kpi.clickable{cursor: pointer}.dash-kpi.clickable:hover{transform: translateY(-2px);border-color: color-mix(in srgb,var(--app-brand-accent,#0d766e) 35%,transparent);box-shadow: 0 2px 4px rgba(15,23,42,0.05),0 14px 28px rgba(15,23,42,0.11)}.dash-kpi-top{display: flex;align-items: flex-start;gap: 0.65rem}.dash-kpi-icon{display: grid;place-items: center;width: 2.25rem;height: 2.25rem;flex: none;border-radius: 11px;color: var(--app-brand-accent,#0d766e);background: color-mix(in srgb,var(--app-brand-accent,#0d766e) 12%,transparent)}.dash-kpi-icon vaadin-icon{--vaadin-icon-size: 1.1rem;width: 1.1rem;height: 1.1rem}.dash-kpi[tone="good"] .dash-kpi-icon{color: var(--dash-good);background: color-mix(in srgb,var(--dash-good) 14%,transparent)}.dash-kpi[tone="warning"] .dash-kpi-icon{color: var(--dash-warning);background: color-mix(in srgb,var(--dash-warning) 15%,transparent)}.dash-kpi[tone="danger"] .dash-kpi-icon{color: var(--dash-danger);background: color-mix(in srgb,var(--dash-danger) 13%,transparent)}.dash-kpi-label{padding-top: 0.15rem;font-size: 0.74rem;font-weight: 700;line-height: 1.25;text-transform: uppercase;letter-spacing: 0.055em;color: var(--dash-muted)}.dash-kpi-main{display: flex;flex-wrap: wrap;align-items: flex-end;justify-content: space-between;gap: 0.35rem 0.75rem;min-height: 2.75rem}.dash-kpi-value{font-size: clamp(1.45rem,2.2vw,1.9rem);font-weight: 700;line-height: 1.1;letter-spacing: -0.025em;white-space: nowrap}.dash-kpi-spark{flex: 1 1 4.5rem;min-width: 4.5rem;max-width: 8rem;margin-left: auto}.dash-kpi-hint{margin-top: auto;font-size: 0.8rem;color: var(--dash-muted)}.dash-kpi[tone="warning"] .dash-kpi-hint{color: var(--dash-warning);font-weight: 600}.dash-kpi[tone="danger"] .dash-kpi-hint{color: var(--dash-danger);font-weight: 600}.dash-kpi[tone="good"] .dash-kpi-hint{color: var(--dash-good);font-weight: 600}.dash-card .store-rows{gap: 0}.dash-card .store-summary-row{gap: 1rem;padding: 0.6rem 0;font-size: 0.92rem;border-bottom: 1px solid var(--dash-border)}.dash-card .store-summary-row:last-child{border-bottom: 0}.dash-card .store-summary-row>span:first-child{min-width: 0;overflow-wrap: anywhere;font-weight: 500}.dash-card .store-summary-row>span:last-child{flex: none;max-width: 55%;text-align: right;color: var(--dash-muted);font-variant-numeric: tabular-nums}@media (max-width: 40rem){.dash-hero{flex-direction: column;align-items: flex-start}.dash-hero .store-actions{width: 100%}.dash-hero .store-actions vaadin-button{flex: 1 1 auto}.dash-card{padding: 1rem}}@media (prefers-reduced-motion: reduce){.dash-live::before{animation: none}.dash-kpi{transition: none}}.dash-board-bar{display: flex;flex-wrap: wrap;justify-content: flex-end;gap: 0.5rem}.dash-board{display: flex;width: 100%;flex-direction: column;gap: var(--dash-gap)}.dash-row{display: flex;flex-wrap: wrap;gap: var(--dash-gap)}.dash-widget{position: relative;display: flex;min-width: 0;flex: 1 1 max(14rem,calc((100% - (var(--cols,1) - 1) * var(--dash-gap)) / var(--cols,1)))}.dash-widget>:not(.dash-widget-tools){flex: 1 1 auto;min-width: 0}.dash-widget-tools{display: none}.dash-board.editing .dash-widget{cursor: grab;border-radius: var(--dash-radius);outline: 2px dashed color-mix(in srgb,var(--app-brand-accent,#0d766e) 55%,transparent);outline-offset: 3px}.dash-board.editing .dash-widget>:not(.dash-widget-tools){pointer-events: none;user-select: none}.dash-board.editing .dash-widget-tools{position: absolute;top: 0.4rem;right: 0.4rem;z-index: 2;display: flex;align-items: center;gap: 0.1rem;max-width: calc(100% - 0.8rem);padding: 0.1rem 0.3rem;border-radius: 999px;background: var(--lumo-base-color,#fff);box-shadow: 0 1px 6px rgba(15,23,42,0.2)}.dash-widget-handle{display: inline-flex;padding: 0 0.2rem;color: var(--dash-muted)}.dash-widget-name{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: 0.75rem;color: var(--dash-muted)}.dash-drop-zone{display: flex;align-items: center;justify-content: center;min-height: 1.6rem;margin-block: -0.4rem;border-radius: 8px;border: 1px dashed color-mix(in srgb,var(--dash-muted) 50%,transparent);font-size: 0.72rem;color: var(--dash-muted)}.dash-info-text{white-space: pre-line;overflow-wrap: anywhere;color: var(--lumo-body-text-color,#172b35)}.dash-info-link{align-self: flex-start;margin-top: auto}.maintenance-container{min-height: 100vh;width: 100%;display: flex;align-items: center;justify-content: center;padding: 2rem;box-sizing: border-box;background: #f4f6f8;font-family: system-ui,sans-serif}.maintenance-card{max-width: 600px;width: 100%;background: #ffffff;border: 1px solid #dce2e8;border-radius: 16px;padding: 48px;text-align: center;box-shadow: 0 10px 30px rgba(15,23,42,0.08)}.maintenance-brand{font-size: 12px;font-weight: 700;letter-spacing: 0.15em;text-transform: uppercase;color: #64748b;margin-bottom: 16px}.maintenance-title{margin: 0 0 16px 0;color: #0f172a;font-size: 36px}.maintenance-text{margin: 0;color: #475569;line-height: 1.7}.changelog-card{margin-bottom: 1rem}.slave-offline-warning{border-inline-start: 4px solid var(--lumo-warning-color,#e6a700);background-color: var(--lumo-warning-color-10pct,rgba(230,167,0,0.1))}.checkout-total{font-size: 1.25rem;font-weight: 600}.hosting-hint{color: var(--lumo-secondary-text-color,#5f6b7a)}.hosting-cards{flex-wrap: wrap;gap: 1rem;align-items: stretch}.hosting-card{flex: 1 1 22em;min-width: 0;box-sizing: border-box;padding: 1.25rem;gap: .5rem;border: 1px solid var(--lumo-contrast-10pct,rgba(0,0,0,.1));border-radius: 12px;background: var(--lumo-base-color,#fff);box-shadow: 0 1px 2px rgba(0,0,0,.04);transition: opacity .15s}.hosting-card-title{margin: 0;font-size: 1.05rem}.hosting-card-text{color: var(--lumo-secondary-text-color,#5f6b7a);font-size: .9rem;margin-bottom: .5rem}.console-empty{padding: 2rem;text-align: center;color: var(--console-muted);border: 1px dashed var(--console-border);border-radius: 16px}:root{--app-brand-accent: #0d766e;--lumo-primary-color: var(--app-brand-accent);--vaadin-button-primary-background: var(--app-brand-accent)}vaadin-app-layout.jmix-main-view-app-layout::part(content){background: radial-gradient(ellipse at 12% 10%,color-mix(in srgb,var(--app-brand-accent) 9%,transparent),transparent 45%),radial-gradient(ellipse at 90% 85%,#e3eaf780 0,transparent 48%),#f3f6f8}vaadin-app-layout.jmix-main-view-app-layout::part(navbar),vaadin-app-layout.jmix-main-view-app-layout::part(drawer){background: color-mix(in srgb,var(--lumo-base-color,#fff) 96%,var(--app-brand-accent))}.jmix-main-view-section{background: color-mix(in srgb,var(--lumo-base-color,#fff) 96%,var(--app-brand-accent))}.jmix-main-view-header{border-bottom: 1px solid color-mix(in srgb,var(--app-brand-accent) 12%,transparent)}.jmix-main-view-title{font-weight: 650;letter-spacing: -.02em}.app-page{box-sizing: border-box;width: 100%;min-height: 100%;overflow: auto;padding: clamp(1rem,2.5vw,2.25rem);gap: 1rem;--console-border: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);--console-muted: color-mix(in srgb,var(--lumo-body-text-color,#172b35) 62%,transparent);--vaadin-vertical-layout-gap: 1rem}.app-page>h1,.app-page>h2,.app-page>h3{color: var(--lumo-header-text-color,#172b35);font-weight: 700;letter-spacing: -.03em;line-height: 1.2;margin: 0}.app-page>h1{font-size: clamp(1.7rem,2.5vw,2.2rem)}.app-page>h2{font-size: clamp(1.35rem,2vw,1.7rem)}.app-page>h3{font-size: 1.15rem}.app-page vaadin-form-layout{box-sizing: border-box;padding: clamp(1rem,2vw,1.5rem);border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);border-radius: 16px;background: var(--lumo-base-color,#fff);box-shadow: 0 12px 36px #112b3b0d}.app-page vaadin-grid{border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);border-radius: 16px;overflow: hidden;box-shadow: 0 12px 36px #112b3b0d;background: var(--lumo-base-color,#fff)}.app-page vaadin-grid::part(header-cell){background: color-mix(in srgb,var(--app-brand-accent) 5%,var(--lumo-base-color,#fff));font-weight: 650}.app-page vaadin-tabsheet{overflow: hidden;border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);border-radius: 16px;background: var(--lumo-base-color,#fff);box-shadow: 0 12px 36px #112b3b0d}.app-page vaadin-tabsheet::part(content){padding: clamp(1rem,2vw,1.5rem)}.app-page vaadin-tabs{--vaadin-tabs-border-color: color-mix(in srgb,var(--app-brand-accent) 14%,transparent)}.app-page #buttonsPanel,.app-page #detailActions,.app-page #lookupActions,.app-page #hostnamesButtonsPanel,.app-page #buttonsPortPanel{display: flex;flex-wrap: wrap;align-items: center;gap: .65rem;box-sizing: border-box}.app-page #buttonsPanel{width: 100%;padding: .75rem;border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 10%,transparent);border-radius: 14px;background: color-mix(in srgb,var(--lumo-base-color,#fff) 88%,var(--app-brand-accent))}.app-page vaadin-button{border-radius: 10px}.app-page vaadin-text-field,.app-page vaadin-password-field,.app-page vaadin-email-field,.app-page vaadin-number-field,.app-page vaadin-combo-box,.app-page vaadin-date-picker,.app-page vaadin-date-time-picker,.app-page vaadin-text-area{--vaadin-input-field-border-radius: 10px}.app-dialog-page{box-sizing: border-box;display: flex;flex-direction: column;gap: .85rem;padding: 1.25rem;--vaadin-vertical-layout-gap: .85rem}.app-dialog-page>h1,.app-dialog-page>h2,.app-dialog-page>h3{margin: 0;color: var(--lumo-header-text-color,#172b35);font-weight: 700;letter-spacing: -.02em}.app-dialog-page>p{box-sizing: border-box;margin: 0;padding: .85rem 1rem;border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 10%,transparent);border-radius: 12px;background: color-mix(in srgb,var(--lumo-base-color,#fff) 94%,var(--app-brand-accent));line-height: 1.5;overflow-wrap: anywhere}.app-dialog-page>vaadin-horizontal-layout{display: flex;flex-wrap: wrap;justify-content: flex-end;gap: .5rem;padding-top: .85rem;border-top: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 10%,transparent)}.app-dialog-page vaadin-button{border-radius: 10px}.app-dialog-page vaadin-text-field,.app-dialog-page vaadin-combo-box,.app-dialog-page vaadin-text-area{--vaadin-input-field-border-radius: 10px}.app-dialog-page vaadin-form-layout,.app-dialog-page vaadin-tabsheet{border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);border-radius: 14px;background: var(--lumo-base-color,#fff)}.admin-notification-content{display: flex;flex-direction: column;gap: .2rem;max-width: min(28rem,calc(100vw - 4rem));padding: .15rem .25rem}.admin-notification-title{font-weight: 700}.admin-notification-message{font-size: .9rem;line-height: 1.4;overflow-wrap: anywhere}.commerce-metric{min-width: 12rem;flex: 1;padding: 1.25rem;border: 1px solid color-mix(in srgb,var(--lumo-body-text-color,#172b35) 12%,transparent);border-radius: 16px;background: var(--lumo-base-color,#fff);box-shadow: 0 12px 36px #112b3b0d}.commerce-metric-value{color: var(--app-brand-accent);font-size: 2rem;font-weight: 700}