@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');.gantt-tree-grid{--vaadin-grid-cell-padding: 0}.gantt-tree-grid vaadin-grid-cell-content{min-height: 50px;display: flex;align-items: center}.gantt-tree-grid vaadin-grid-tree-toggle{padding: 0 var(--lumo-space-s)}.gantt-tree-grid [part~="cell"]:first-child{padding: var(--lumo-space-xs) var(--lumo-space-m)}.gantt-tree-grid [part~="cell"]:last-child{padding: 0;overflow: visible}.gantt-tree-grid [part~="header-cell"]{background-color: var(--lumo-contrast-5pct);font-weight: 600}.gantt-tree-grid [part~="row"]:hover [part~="body-cell"]{background-color: var(--lumo-contrast-5pct)}.gantt-tree-grid [part~="row"][level="0"] [part~="cell"]:first-child{font-weight: 600;background-color: var(--lumo-contrast-5pct)}.timeline-component{position: relative;min-height: 50px;border-left: 1px solid var(--lumo-contrast-10pct)}.timeline-component .time-label{position: absolute;font-size: 11px;color: var(--lumo-secondary-text-color);font-weight: 500;user-select: none;z-index: 1}.shift-bar{position: absolute;height: 40px;top: 5px;border-radius: 4px;transition: transform 0.2s,box-shadow 0.2s;display: flex;align-items: center;padding: 0 8px;box-sizing: border-box;user-select: none;box-shadow: 0 2px 4px rgba(0,0,0,0.1)}.shift-bar:hover{transform: translateY(-1px);box-shadow: 0 4px 8px rgba(0,0,0,0.15);z-index: 10}.shift-bar span{white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.gantt-controls{background-color: var(--lumo-base-color)}.empty-message{display: flex;flex-direction: column;align-items: center;justify-content: center;min-height: 400px}.gantt-chart-container{background-color: var(--lumo-base-color);overflow: auto}.timeline-component::before{content: '';position: absolute;top: 0;left: 0;right: 0;bottom: 0;pointer-events: none;opacity: 0.5}.gantt-tree-grid [part~="row"][level="1"]{background-color: var(--lumo-base-color)}.gantt-tree-grid [part~="row"][level="2"]{background-color: var(--lumo-base-color)}.gantt-tree-grid [part~="row"]:nth-child(even) [part~="body-cell"]{background-color: var(--lumo-contrast-5pct)}@font-face{font-family: "Material Symbols";font-weight: 400;src: url('fonts/MaterialSymbols.woff2') format("woff2");font-display: block}.material-symbols{display: inline-block;direction: ltr;font-family: "Material Symbols";font-feature-settings: "liga";font-size: var(--lumo-icon-size-m);font-style: normal;font-weight: normal;letter-spacing: normal;line-height: 1;-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;text-transform: none;white-space: nowrap;word-wrap: normal}html{--lumo-font-family: "Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--lumo-primary-color-10pct: rgba(37,99,235,0.1);--lumo-primary-color-20pct: rgba(37,99,235,0.2);--lumo-primary-color-50pct: rgba(37,99,235,0.5);--lumo-primary-color: #2563EB;--lumo-primary-text-color: #2563EB;--lumo-primary-contrast-color: #FFFFFF;--gradient-primary: linear-gradient(135deg,#1E40AF 0%,#2563EB 100%);--gradient-secondary: linear-gradient(135deg,#7C3AED 0%,#A78BFA 100%);--gradient-success: linear-gradient(135deg,#059669 0%,#10B981 100%);--color-primary-50: #EFF6FF;--color-primary-100: #DBEAFE;--color-primary-200: #BFDBFE;--color-primary-300: #93BBFC;--color-primary-400: #60A5FA;--color-primary-500: #3B82F6;--color-primary-600: #2563EB;--color-primary-700: #1D4ED8;--color-primary-800: #1E40AF;--color-primary-900: #1E3A8A;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #EF4444;--color-info: #3B82F6;--font-size-xs: 0.75rem;--font-size-sm: 0.875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--space-xs: 0.5rem;--space-sm: 0.75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--shadow-sm: 0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--shadow-2xl: 0 25px 50px -12px rgba(0,0,0,0.25);--radius-sm: 0.25rem;--radius-md: 0.375rem;--radius-lg: 0.5rem;--radius-xl: 0.75rem;--radius-2xl: 1rem;--radius-full: 9999px;--transition-fast: 150ms cubic-bezier(0.4,0,0.2,1);--transition-base: 250ms cubic-bezier(0.4,0,0.2,1);--transition-slow: 350ms cubic-bezier(0.4,0,0.2,1);--nav-dark-bg-primary: #1F2937;--nav-dark-bg-secondary: #374151;--nav-dark-bg-hover: #4B5563;--nav-dark-bg-active: #144EA1;--nav-dark-text-primary: #F9FAFB;--nav-dark-text-secondary: #D1D5DB;--nav-dark-text-muted: #9CA3AF;--nav-dark-border: #374151;--nav-dark-shadow: rgba(0,0,0,0.3);--lumo-base-color: #FFFFFF;--lumo-shade-5pct: rgba(26,26,26,0.05);--lumo-shade-10pct: rgba(26,26,26,0.1);--lumo-shade-20pct: rgba(26,26,26,0.2);--lumo-shade-30pct: rgba(26,26,26,0.3);--lumo-shade-40pct: rgba(26,26,26,0.4);--lumo-shade-50pct: rgba(26,26,26,0.5);--lumo-contrast-5pct: var(--color-gray-50);--lumo-contrast-10pct: var(--color-gray-100);--lumo-contrast-20pct: var(--color-gray-200);--lumo-contrast-30pct: var(--color-gray-300);--lumo-contrast-40pct: var(--color-gray-400);--lumo-contrast-50pct: var(--color-gray-500);--lumo-contrast-60pct: var(--color-gray-600);--lumo-contrast-70pct: var(--color-gray-700);--lumo-contrast-80pct: var(--color-gray-800);--lumo-contrast-90pct: var(--color-gray-900);--lumo-success-color: var(--color-success);--lumo-error-color: var(--color-error);--lumo-warning-color: var(--color-warning);--lumo-font-size-xs: var(--font-size-xs);--lumo-font-size-s: var(--font-size-sm);--lumo-font-size-m: var(--font-size-md);--lumo-font-size-l: var(--font-size-lg);--lumo-font-size-xl: var(--font-size-xl);--lumo-font-size-xxl: var(--font-size-2xl);--lumo-font-size-xxxl: var(--font-size-3xl);--lumo-space-xs: var(--space-xs);--lumo-space-s: var(--space-sm);--lumo-space-m: var(--space-md);--lumo-space-l: var(--space-lg);--lumo-space-xl: var(--space-xl);--lumo-border-radius-s: var(--radius-sm);--lumo-border-radius-m: var(--radius-md);--lumo-border-radius-l: var(--radius-lg);--lumo-box-shadow-xs: var(--shadow-sm);--lumo-box-shadow-s: var(--shadow-md);--lumo-box-shadow-m: var(--shadow-lg);--lumo-box-shadow-l: var(--shadow-xl);--lumo-box-shadow-xl: var(--shadow-2xl);--vaadin-app-layout-drawer-width: 19em}*{box-sizing: border-box}body{font-family: var(--lumo-font-family);color: var(--lumo-body-text-color);line-height: 1.6}html{scroll-behavior: smooth}vaadin-button{font-weight: var(--font-weight-medium);transition: all var(--transition-fast);position: relative;overflow: hidden}vaadin-button::before{content: '';position: absolute;top: 50%;left: 50%;width: 0;height: 0;border-radius: 50%;background: rgba(255,255,255,0.5);transform: translate(-50%,-50%);transition: width var(--transition-base),height var(--transition-base)}vaadin-button:hover{transform: translateY(-1px);box-shadow: var(--shadow-md)}vaadin-button:active::before{width: 300px;height: 300px}vaadin-button[theme~="primary"]{background: var(--gradient-primary);box-shadow: 0 4px 14px 0 rgba(37,99,235,0.25)}vaadin-button[theme~="primary"]:hover{box-shadow: 0 6px 20px rgba(37,99,235,0.35)}vaadin-button[disabled]{background: var(--color-gray-200) !important;color: var(--color-gray-400) !important;cursor: not-allowed !important;opacity: 0.6 !important;box-shadow: none !important;transform: none !important;border: 1px solid var(--color-gray-300) !important}vaadin-button[disabled]:hover{background: var(--color-gray-200) !important;color: var(--color-gray-400) !important;transform: none !important;box-shadow: none !important}vaadin-button[disabled]::before{display: none !important}vaadin-button[theme~="primary"][disabled]{background: var(--color-gray-200) !important;color: var(--color-gray-400) !important;cursor: not-allowed !important;opacity: 0.6 !important;box-shadow: none !important;transform: none !important;border: 1px solid var(--color-gray-300) !important}vaadin-button[theme~="primary"][disabled]:hover{background: var(--color-gray-200) !important;color: var(--color-gray-400) !important;transform: none !important;box-shadow: none !important}vaadin-button[theme~="secondary"][disabled]{background: transparent !important;color: var(--color-gray-400) !important;border: 1px solid var(--color-gray-300) !important;cursor: not-allowed !important;opacity: 0.6 !important;box-shadow: none !important;transform: none !important}vaadin-button[theme~="tertiary"][disabled]{background: transparent !important;color: var(--color-gray-400) !important;cursor: not-allowed !important;opacity: 0.6 !important;box-shadow: none !important;transform: none !important}vaadin-button[theme~="error"][disabled]{background: var(--color-gray-200) !important;color: var(--color-gray-400) !important;cursor: not-allowed !important;opacity: 0.6 !important;box-shadow: none !important;transform: none !important;border: 1px solid var(--color-gray-300) !important}vaadin-button[theme~="success"][disabled]{background: var(--color-gray-200) !important;color: var(--color-gray-400) !important;cursor: not-allowed !important;opacity: 0.6 !important;box-shadow: none !important;transform: none !important;border: 1px solid var(--color-gray-300) !important}vaadin-text-field,vaadin-integer-field,vaadin-time-picker,vaadin-password-field,vaadin-email-field,vaadin-text-area,vaadin-date-picker,vaadin-select,vaadin-combo-box,vaadin-multi-select-combo-box{--lumo-text-field-size: 2.5rem}vaadin-button,vaadin-menu-bar-button{--lumo-button-size: 2.5rem}vaadin-text-field::part(input-field),vaadin-integer-field::part(input-field),vaadin-time-picker::part(input-field),vaadin-password-field::part(input-field),vaadin-email-field::part(input-field),vaadin-text-area::part(input-field),vaadin-date-picker::part(input-field),vaadin-select::part(input-field),vaadin-combo-box::part(input-field),vaadin-multi-select-combo-box::part(input-field){background: var(--lumo-base-color);border: 1px solid var(--color-gray-200);transition: all var(--transition-fast)}vaadin-text-field:hover::part(input-field),vaadin-integer-field::part(input-field),vaadin-time-picker::part(input-field),vaadin-password-field:hover::part(input-field),vaadin-email-field::part(input-field),vaadin-text-area:hover::part(input-field),vaadin-date-picker:hover::part(input-field),vaadin-select:hover::part(input-field),vaadin-combo-box:hover::part(input-field),vaadin-multi-select-combo-box::part(input-field){border-color: var(--color-gray-300)}.modern-card{background: var(--lumo-base-color);border-radius: var(--radius-xl);box-shadow: var(--shadow-sm);padding: var(--space-lg);transition: all var(--transition-fast);border: 1px solid var(--color-gray-100);width: 100%}.modern-card:hover{transform: translateY(-2px);box-shadow: var(--shadow-lg);border-color: var(--color-gray-200)}vaadin-grid{border: none;border-radius: var(--radius-lg);overflow: hidden;box-shadow: var(--shadow-sm)}vaadin-grid::part(header-cell){background: var(--color-gray-50);font-weight: var(--font-weight-semibold);color: var(--color-gray-700);border-bottom: 2px solid var(--color-gray-200)}vaadin-grid::part(body-cell){border-bottom: 1px solid var(--color-gray-100)}vaadin-grid::part(row):hover{background: var(--color-gray-50)}vaadin-app-layout::part(drawer){background: var(--nav-dark-bg-primary);border-right: 1px solid var(--nav-dark-border)}vaadin-side-nav-item{border-radius: var(--radius-md);margin: var(--space-xs) 0;transition: all var(--transition-fast)}vaadin-side-nav-item::part(link){color: var(--nav-dark-text-secondary);border-radius: var(--radius-md);padding: var(--space-sm) var(--space-md);transition: all var(--transition-fast)}vaadin-side-nav-item:hover::part(link){background: var(--nav-dark-bg-hover);color: var(--nav-dark-text-primary)}vaadin-side-nav-item[current]::part(link){background: var(--nav-dark-bg-active);color: white;font-weight: var(--font-weight-medium);box-shadow: 0 2px 8px rgba(37,99,235,0.3)}vaadin-side-nav-item>vaadin-icon,vaadin-side-nav-item>[slot="prefix"] vaadin-icon{color: var(--nav-dark-text-muted);transition: all var(--transition-fast)}vaadin-side-nav-item:hover>vaadin-icon,vaadin-side-nav-item:hover>[slot="prefix"] vaadin-icon{color: var(--nav-dark-text-primary)}vaadin-side-nav-item[current]>vaadin-icon,vaadin-side-nav-item[current]>[slot="prefix"] vaadin-icon{color: white}vaadin-side-nav-item[expanded]::part(toggle-button){color: var(--nav-dark-text-primary)}vaadin-side-nav-item::part(toggle-button){color: var(--nav-dark-text-muted);transition: all var(--transition-fast)}vaadin-side-nav-item:hover::part(toggle-button){color: var(--nav-dark-text-primary)}vaadin-side-nav-item[slot="children"]::part(link){padding-left: var(--space-xl);color: var(--nav-dark-text-muted)}vaadin-side-nav-item[slot="children"]:hover::part(link){background: var(--nav-dark-bg-secondary);color: var(--nav-dark-text-primary)}vaadin-side-nav-item[slot="children"][current]::part(link){background: var(--nav-dark-bg-active);color: white}vaadin-app-layout::part(drawer) header{background: var(--nav-dark-bg-primary);border-bottom: 1px solid var(--nav-dark-border)}vaadin-app-layout::part(drawer) header img{filter: brightness(0) invert(1);opacity: 0.9}vaadin-app-layout::part(drawer) footer{background: var(--nav-dark-bg-primary);border-top: 1px solid var(--nav-dark-border);color: var(--nav-dark-text-muted)}vaadin-app-layout::part(drawer) footer span{color: var(--nav-dark-text-muted)}vaadin-app-layout[overlay]::part(drawer){background: var(--nav-dark-bg-primary);border-right: 1px solid var(--nav-dark-border)}vaadin-app-layout::part(drawer) vaadin-scroller{background: var(--nav-dark-bg-primary)}vaadin-app-layout::part(drawer) vaadin-scroller::-webkit-scrollbar{width: 6px}vaadin-app-layout::part(drawer) vaadin-scroller::-webkit-scrollbar-track{background: var(--nav-dark-bg-secondary);border-radius: var(--radius-full)}vaadin-app-layout::part(drawer) vaadin-scroller::-webkit-scrollbar-thumb{background: var(--nav-dark-text-muted);border-radius: var(--radius-full)}vaadin-app-layout::part(drawer) vaadin-scroller::-webkit-scrollbar-thumb:hover{background: var(--nav-dark-text-secondary)}.badge{display: inline-flex;align-items: center;padding: 0.25rem 0.75rem;border-radius: var(--radius-full);font-size: var(--font-size-sm);font-weight: var(--font-weight-medium);line-height: 1}.badge-primary{background: var(--lumo-primary-color-10pct);color: var(--lumo-primary-color)}.badge-success{background: rgba(16,185,129,0.1);color: var(--color-success)}.badge-warning{background: rgba(245,158,11,0.1);color: var(--color-warning)}.badge-error{background: rgba(239,68,68,0.1);color: var(--color-error)}.action-buttons{gap: var(--space-md);display: flex;align-items: center}.button-link{display: inline-flex;align-items: center;justify-content: center;padding: var(--space-sm);border-radius: var(--radius-md);background: transparent;color: var(--color-gray-600);transition: all var(--transition-fast);cursor: pointer;text-decoration: none !important;min-width: 40px;min-height: 40px}.button-link:hover{background: var(--color-gray-100);color: var(--lumo-primary-color);transform: translateY(-1px);text-decoration: none !important}.button-link:active{transform: translateY(0)}.button-link .material-symbols{font-size: var(--lumo-icon-size-m)}vaadin-vertical-layout:has(.events-cards-container){align-items: stretch !important}vaadin-vertical-layout .events-cards-container{width: 100% !important}.events-cards-container{display: grid;grid-template-columns: repeat(auto-fill,minmax(320px,1fr));gap: var(--space-lg);margin-top: var(--space-xl);align-items: stretch;width: 100%}@media (min-width: 1400px){.events-cards-container{grid-template-columns: repeat(auto-fill,minmax(350px,1fr));gap: var(--space-xl)}}@media (min-width: 1200px) and (max-width: 1399px){.events-cards-container{grid-template-columns: repeat(auto-fill,minmax(340px,1fr))}}@media (min-width: 900px) and (max-width: 1199px){.events-cards-container{grid-template-columns: repeat(auto-fill,minmax(320px,1fr))}}@media (min-width: 640px) and (max-width: 899px){.events-cards-container{grid-template-columns: repeat(auto-fill,minmax(300px,1fr));gap: var(--space-md)}}@media (max-width: 639px){.events-cards-container{grid-template-columns: 1fr;gap: var(--space-md)}}.event-card{background: var(--lumo-base-color);border-radius: var(--radius-xl);box-shadow: var(--shadow-sm);padding: var(--space-xl) var(--space-xl) var(--space-lg);transition: all var(--transition-base);cursor: pointer;border: 1px solid var(--color-gray-100);position: relative;overflow: hidden;display: flex;flex-direction: column;height: 100%;min-height: 240px}.event-card:hover{transform: translateY(-3px);box-shadow: var(--shadow-lg);border-color: var(--color-primary-200)}.event-card-header{display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: var(--space-lg);gap: var(--space-md)}.event-status-badge{font-size: var(--font-size-xs) !important;font-weight: var(--font-weight-semibold) !important;padding: 0.375rem 0.875rem !important;border-radius: var(--radius-full) !important;text-transform: uppercase;letter-spacing: 0.05em;white-space: nowrap}.status-published{background: linear-gradient(135deg,#059669 0%,#10B981 100%) !important;color: white !important;box-shadow: 0 2px 8px rgba(16,185,129,0.3)}.status-draft{background: var(--color-gray-200) !important;color: var(--color-gray-700) !important}.status-cancelled{background: linear-gradient(135deg,#DC2626 0%,#EF4444 100%) !important;color: white !important;box-shadow: 0 2px 8px rgba(239,68,68,0.3)}.status-completed{background: var(--gradient-primary) !important;color: white !important;box-shadow: 0 2px 8px rgba(37,99,235,0.3)}.event-days-until{background: var(--color-gray-100);color: var(--color-gray-700);padding: 0.375rem 0.875rem;border-radius: var(--radius-md);font-size: var(--font-size-sm);font-weight: var(--font-weight-medium);display: inline-flex;align-items: center;gap: 0.25rem}.event-days-until.upcoming{background: var(--color-primary-100);color: var(--color-primary-700)}.event-days-until.today{background: var(--color-warning);color: white}.event-card-content{display: flex;flex-direction: column;gap: var(--space-md);flex: 1}.event-card-title{font-size: var(--font-size-xl);font-weight: var(--font-weight-semibold);color: var(--color-gray-900);margin: 0;line-height: 1.3;letter-spacing: -0.025em}.event-card-description{color: var(--color-gray-600);font-size: var(--font-size-sm);line-height: 1.5;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.event-card-meta{display: flex;flex-direction: column;gap: var(--space-sm);margin-top: var(--space-sm)}.event-card-dates,.event-card-location{display: flex;align-items: center;gap: var(--space-sm);color: var(--color-gray-600);font-size: var(--font-size-sm)}.event-card-icon{width: 20px;height: 20px;flex-shrink: 0;color: var(--color-gray-400)}.event-card-footer{display: flex;justify-content: flex-end;align-items: center;margin-top: auto;padding-top: var(--space-lg)}.shift-card{background: var(--lumo-base-color);border-radius: var(--radius-xl);box-shadow: var(--shadow-sm);padding: var(--space-lg);transition: all var(--transition-base);cursor: pointer;border: 1px solid var(--color-gray-100);position: relative;overflow: hidden;display: flex;flex-direction: column;height: 100%}.shift-card:hover{transform: translateY(-3px);box-shadow: var(--shadow-lg);border-color: var(--color-primary-200)}.empty-state{grid-column: 1 / -1;display: flex;flex-direction: column;align-items: center;justify-content: center;padding: var(--space-3xl);text-align: center;background: var(--color-gray-50);border-radius: var(--radius-xl);border: 2px dashed var(--color-gray-300);margin-top: var(--space-xl);min-height: 400px}.empty-state-icon{width: 80px;height: 80px;color: var(--color-gray-400);margin-bottom: var(--space-lg);opacity: 0.8}.empty-state-message{font-size: var(--font-size-lg);color: var(--color-gray-700);margin: 0 0 var(--space-md) 0;font-weight: var(--font-weight-medium)}.empty-state-description{font-size: var(--font-size-sm);color: var(--color-gray-600);margin: 0 0 var(--space-xl) 0;max-width: 400px}@media (max-width: 480px){.event-card{padding: var(--space-lg) var(--space-lg) var(--space-md)}.event-card-title{font-size: var(--font-size-lg)}.event-card-header{flex-direction: column;align-items: flex-start;gap: var(--space-sm)}}.dashboard-widget{background: var(--lumo-base-color);border-radius: var(--radius-xl);padding: var(--space-xl);box-shadow: var(--shadow-sm);border: 1px solid var(--color-gray-100);transition: all var(--transition-base);height: 100%;display: flex;flex-direction: column}.dashboard-widget:hover{box-shadow: var(--shadow-lg);transform: translateY(-3px);border-color: var(--color-primary-200)}.widget-header{display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: var(--space-lg)}.widget-title{font-size: var(--font-size-lg);font-weight: var(--font-weight-semibold);color: var(--color-gray-900);margin: 0;overflow: visible;white-space: normal;overflow-wrap: anywhere;word-break: break-word;flex: 1 1 auto;min-width: 0}.widget-subtitle{font-size: var(--font-size-sm);color: var(--color-gray-600);margin: 0.25rem 0 0 0;overflow: visible;white-space: normal;overflow-wrap: anywhere;word-break: break-word}.widget-value{font-size: var(--font-size-3xl);font-weight: var(--font-weight-bold);color: var(--color-gray-900);line-height: 1;margin: var(--space-md) 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.widget-trend{display: inline-flex;align-items: center;gap: 0.25rem;font-size: var(--font-size-sm);font-weight: var(--font-weight-medium);padding: 0.25rem 0.5rem;border-radius: var(--radius-md)}.widget-trend.positive{color: var(--color-success);background: rgba(16,185,129,0.1)}.widget-trend.negative{color: var(--color-error);background: rgba(239,68,68,0.1)}vaadin-form-layout{background: var(--color-gray-50);padding: var(--space-sm) var(--space-lg) var(--space-lg);border-radius: var(--radius-xl);border: 1px solid var(--color-gray-200)}vaadin-notification-card{font-weight: var(--font-weight-medium);transition: all var(--transition-fast);background: transparent;box-shadow: none;border: none}vaadin-notification-card::part(overlay){border-radius: var(--radius-lg);box-shadow: var(--shadow-lg);border: none;overflow: hidden}vaadin-notification-card::part(content){padding: var(--space-md) var(--space-lg);display: flex;align-items: center;gap: var(--space-sm)}vaadin-notification-card[theme="success"]::part(overlay){background: var(--gradient-success);color: white;box-shadow: 0 4px 12px rgba(16,185,129,0.2)}vaadin-notification-card[theme="error"]::part(overlay){background: linear-gradient(135deg,#DC2626 0%,#EF4444 100%);color: white;box-shadow: 0 4px 12px rgba(239,68,68,0.2)}vaadin-notification-card[theme="warning"]::part(overlay){background: linear-gradient(135deg,#D97706 0%,#F59E0B 100%);color: white;box-shadow: 0 4px 12px rgba(245,158,11,0.2)}vaadin-notification-card[theme="primary"]::part(overlay){background: var(--gradient-primary);color: white;box-shadow: 0 4px 12px rgba(37,99,235,0.2)}vaadin-notification-card[theme="contrast"]::part(overlay){background: linear-gradient(135deg,var(--color-gray-800) 0%,var(--color-gray-900) 100%);color: white;box-shadow: 0 4px 12px rgba(0,0,0,0.2)}vaadin-notification-card:not([theme])::part(overlay){background: linear-gradient(135deg,var(--color-gray-200) 0%,var(--color-gray-100) 100%);color: var(--color-gray-900);border: 1px solid var(--color-gray-300);box-shadow: var(--shadow-lg)}@keyframes slideInDown{from{opacity: 0;transform: translateY(-20px) scale(0.95)}to{opacity: 1;transform: translateY(0) scale(1)}}@keyframes slideOutUp{from{opacity: 1;transform: translateY(0) scale(1)}to{opacity: 0;transform: translateY(-20px) scale(0.95)}}vaadin-notification-card{animation: slideInDown var(--transition-base) ease-out}vaadin-notification-card[closing]{animation: slideOutUp var(--transition-base) ease-in}vaadin-notification-card:hover::part(overlay){transform: translateY(-2px)}vaadin-app-layout::part(navbar){background: var(--lumo-base-color);box-shadow: var(--shadow-sm);border-bottom: 1px solid var(--color-gray-100)}vaadin-select.organization-selector::part(input-field){background: var(--color-gray-50);border-color: var(--color-gray-200)}vaadin-text-field::part(input-field),vaadin-integer-field::part(input-field),vaadin-time-picker::part(input-field),vaadin-password-field::part(input-field),vaadin-email-field::part(input-field),vaadin-text-area::part(input-field),vaadin-menu-bar::part(input-field),vaadin-select::part(input-field),vaadin-combo-box::part(input-field),vaadin-multi-select-combo-box::part(input-field){border-radius: var(--lumo-border-radius-m)}.skeleton{background: linear-gradient(90deg,var(--color-gray-200) 25%,var(--color-gray-100) 50%,var(--color-gray-200) 75%);background-size: 200% 100%;animation: loading 1.5s infinite}@keyframes loading{0%{background-position: 200% 0}100%{background-position: -200% 0}}@keyframes fadeIn{from{opacity: 0;transform: translateY(10px)}to{opacity: 1;transform: translateY(0)}}.fade-in{animation: fadeIn var(--transition-base) ease-out}vaadin-tooltip-overlay::part(overlay){background: var(--color-gray-900);color: white;border-radius: var(--radius-md);padding: var(--space-sm) var(--space-md);font-size: var(--font-size-sm)}.modern-dashboard{background: var(--color-gray-50);height: 100%;display: flex;flex-direction: column;overflow: hidden}.dashboard-stats-row{margin-bottom: var(--space-xl);display: flex;flex-wrap: wrap;gap: var(--space-md)}.stat-widget{position: relative;overflow: visible;flex: 1 1 200px;min-width: 200px}@media (max-width: 900px){.dashboard-stats-row{gap: var(--space-sm)}.stat-widget{flex: 1 1 calc(50% - var(--space-sm));min-width: calc(50% - var(--space-sm))}}@media (max-width: 480px){.stat-widget{flex: 1 1 100%;min-width: 100%}}.stat-widget .widget-icon{width: 48px;height: 48px;padding: var(--space-sm);border-radius: var(--radius-lg);display: flex;align-items: center;justify-content: center}.widget-icon-primary{background: var(--lumo-primary-color-10pct);color: var(--lumo-primary-color)}.widget-icon-success{background: rgba(16,185,129,0.1);color: var(--color-success)}.widget-icon-warning{background: rgba(245,158,11,0.1);color: var(--color-warning)}.widget-icon-info{background: var(--lumo-primary-color-10pct);color: var(--color-info)}.compact-event-card{width: 100%;background: var(--lumo-base-color);border-radius: var(--radius-lg);padding: var(--space-md);border: 1px solid var(--color-gray-100);transition: all var(--transition-base);cursor: pointer}.compact-event-card:hover{transform: translateY(-3px);border-color: var(--color-primary-200);box-shadow: var(--shadow-lg)}.public-event-view{max-width: 1200px;margin: 0 auto}.shifts-cards-container{display: grid;grid-template-columns: repeat(auto-fill,minmax(320px,1fr));gap: var(--space-lg);margin-top: var(--space-xl);align-items: stretch;width: 100% !important}vaadin-vertical-layout:has(.shifts-cards-container){align-items: stretch !important}vaadin-vertical-layout .shifts-cards-container{width: 100% !important}@media (min-width: 1400px){.shifts-cards-container{grid-template-columns: repeat(auto-fill,minmax(350px,1fr));gap: var(--space-xl)}}@media (min-width: 900px) and (max-width: 1399px){.shifts-cards-container{grid-template-columns: repeat(auto-fill,minmax(320px,1fr))}}@media (min-width: 640px) and (max-width: 899px){.shifts-cards-container{grid-template-columns: repeat(auto-fill,minmax(300px,1fr));gap: var(--space-md)}}@media (max-width: 639px){.shifts-cards-container{grid-template-columns: 1fr;gap: var(--space-md)}}.shift-card{background: var(--lumo-base-color);border-radius: var(--radius-xl);box-shadow: var(--shadow-sm);padding: var(--space-xl) var(--space-xl) var(--space-lg);transition: all var(--transition-base);border: 1px solid var(--color-gray-100);display: flex;flex-direction: column;height: 100%;position: relative;overflow: hidden}.shift-card:hover{transform: translateY(-3px);box-shadow: var(--shadow-lg);border-color: var(--color-primary-200)}.shift-card-header{display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: var(--space-lg);gap: var(--space-sm);flex-wrap: wrap}.area-badge{background: var(--color-primary-100);color: var(--color-primary-800);padding: var(--space-xs) var(--space-sm);border-radius: var(--radius-full);font-size: var(--font-size-xs);font-weight: var(--font-weight-medium);text-transform: uppercase;letter-spacing: 0.05em}.task-badge{background: var(--color-gray-100);color: var(--color-gray-700);padding: var(--space-xs) var(--space-sm);border-radius: var(--radius-full);font-size: var(--font-size-xs);font-weight: var(--font-weight-medium)}.shift-card-content{display: flex;flex-direction: column;gap: var(--space-md);flex: 1}.shift-card-title{font-size: var(--font-size-xl);font-weight: var(--font-weight-semibold);color: var(--color-gray-900);margin: 0;line-height: 1.3}.shift-card-time,.shift-card-capacity{display: flex;align-items: flex-start;gap: var(--space-sm);color: var(--color-gray-600);font-size: var(--font-size-sm)}.shift-card-icon{width: 20px;height: 20px;flex-shrink: 0;color: var(--color-gray-400);margin-top: 2px}.shift-card-footer{display: flex;justify-content: flex-end;align-items: center;margin-top: auto;padding-top: var(--space-lg);border-top: 1px solid var(--color-gray-100)}.event-details-section{background: var(--lumo-base-color);border-radius: var(--radius-lg);padding: var(--space-xl);border: 1px solid var(--color-gray-100)}.event-meta-icon{width: 20px;height: 20px;color: var(--color-primary-600)}.event-meta-text{color: var(--color-gray-700);font-weight: var(--font-weight-medium)}.event-meta-group{width: auto !important;gap: var(--space-xs);flex: 0 1 auto}.event-description{color: var(--color-gray-600);line-height: 1.6;margin-top: var(--space-md)}.shifts-section{margin-top: var(--space-lg)}.empty-icon{width: 48px;height: 48px;margin-bottom: var(--space-md);color: var(--color-gray-300)}.empty-text{font-size: var(--font-size-lg);color: var(--color-gray-600)}@media (max-width: 480px){.shift-card{padding: var(--space-lg) var(--space-lg) var(--space-md)}.shift-card-title{font-size: var(--font-size-lg)}.shift-card-header{flex-direction: column;align-items: flex-start;gap: var(--space-sm)}.public-event-view{padding: var(--space-md)}.event-details-section{padding: var(--space-lg)}}.guest-success-view{max-width: 900px;margin: 0 auto;width: 100%}.success-header{text-align: center;margin-bottom: var(--space-2xl)}.success-icon{width: 80px;height: 80px;color: var(--color-success);margin-bottom: var(--space-lg)}.registration-details-section{margin-bottom: var(--space-2xl)}.details-card{background: var(--lumo-base-color);border-radius: var(--radius-lg);padding: var(--space-xl);border: 1px solid var(--color-gray-100);box-shadow: var(--shadow-sm)}.detail-row{padding: var(--space-sm) 0;border-bottom: 1px solid var(--color-gray-100)}.detail-row:last-child{border-bottom: none}.detail-label{font-weight: var(--font-weight-medium);color: var(--color-gray-700);min-width: 120px}.detail-value{color: var(--color-gray-900)}.next-steps-section{margin-bottom: var(--space-2xl)}.step-item{display: flex;align-items: flex-start;gap: var(--space-md);padding: var(--space-lg);background: var(--lumo-base-color);border-radius: var(--radius-lg);border: 1px solid var(--color-gray-100);transition: all var(--transition-base)}.step-item:hover{transform: translateY(-1px);box-shadow: var(--shadow-md)}.step-number{width: 32px;height: 32px;background: var(--color-primary-600);color: white;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-weight: var(--font-weight-semibold);font-size: var(--font-size-sm);flex-shrink: 0}.step-content{flex: 1}.step-title{font-size: var(--font-size-lg);font-weight: var(--font-weight-semibold);color: var(--color-gray-900);margin: 0 0 var(--space-xs) 0}.step-description{color: var(--color-gray-600);line-height: 1.5;margin: 0}.action-buttons{margin-top: var(--space-xl);padding-top: var(--space-xl);border-top: 1px solid var(--color-gray-100)}.error-icon{width: 64px;height: 64px;color: var(--color-error);margin-bottom: var(--space-lg)}@media (max-width: 768px){.guest-success-view{padding: var(--space-md)}.details-card{padding: var(--space-lg)}.detail-row{flex-direction: column;align-items: flex-start !important;gap: var(--space-xs)}.detail-label{min-width: unset;font-size: var(--font-size-sm)}.step-item{padding: var(--space-md)}.success-icon{width: 64px;height: 64px}.action-buttons{flex-direction: column;align-items: stretch}.action-buttons vaadin-button{width: 100%}}.guest-verification-view{max-width: 800px;margin: 0 auto}.registration-summary-section{margin-bottom: var(--space-2xl)}.summary-card{background: var(--lumo-base-color);border-radius: var(--radius-lg);padding: var(--space-xl);border: 1px solid var(--color-gray-100);box-shadow: var(--shadow-sm);text-align: center}.shift-summary{margin-top: var(--space-lg);padding-top: var(--space-lg);border-top: 1px solid var(--color-gray-100)}.help-text{background: var(--color-gray-50);border-radius: var(--radius-lg);padding: var(--space-xl);margin: var(--space-xl) 0;text-align: left}.help-text ul{margin: 0;padding-left: var(--space-lg)}.help-text li{margin-bottom: var(--space-sm);color: var(--color-gray-600)}.help-text li:last-child{margin-bottom: 0}.error-container{text-align: center;max-width: 600px}@media (max-width: 768px){.guest-verification-view{padding: var(--space-md)}.summary-card{padding: var(--space-lg)}.help-text{padding: var(--space-lg);margin: var(--space-lg) 0}}.event-date-badge{background: var(--gradient-primary);color: white;border-radius: var(--radius-lg);padding: var(--space-sm);min-width: 60px;text-align: center;display: flex;flex-direction: column;align-items: center;justify-content: center}.date-month{font-size: var(--font-size-xs);text-transform: uppercase;letter-spacing: 0.05em;opacity: 0.9}.date-day{font-size: var(--font-size-xl);font-weight: var(--font-weight-bold);line-height: 1}.event-info{flex: 1;padding: 0 var(--space-md)}.event-info .event-title{font-size: var(--font-size-md);font-weight: var(--font-weight-semibold);color: var(--color-gray-900);margin: 0 0 var(--space-xs) 0}.event-meta{display: flex;align-items: center;flex-wrap: wrap;column-gap: var(--space-xs);font-size: var(--font-size-sm);color: var(--color-gray-600)}.public-event-card{overflow: hidden}.public-event-card>vaadin-horizontal-layout{flex-wrap: wrap;row-gap: var(--space-md)}.public-event-card .event-info{min-width: 0;flex: 1 1 200px}.public-event-card .event-info .event-title{overflow-wrap: anywhere}@media (max-width: 600px){.public-event-card>vaadin-horizontal-layout>vaadin-button{width: 100%}}.compact-status-badge{font-size: var(--font-size-xs);padding: 0.25rem 0.5rem;border-radius: var(--radius-full);font-weight: var(--font-weight-medium);white-space: nowrap}.activity-feed{scrollbar-width: thin;scrollbar-color: var(--color-gray-400) var(--color-gray-100)}.activity-item{display: flex;gap: var(--space-md);padding: var(--space-md);background: var(--lumo-base-color);border-radius: var(--radius-lg);border: 1px solid var(--color-gray-100);transition: all var(--transition-base)}.activity-item:hover{transform: translateY(-3px);box-shadow: var(--shadow-lg);border-color: var(--color-primary-200)}.activity-icon{width: 40px;height: 40px;background: var(--color-gray-100);border-radius: var(--radius-full);display: flex;align-items: center;justify-content: center;flex-shrink: 0;color: var(--color-gray-600)}.activity-content{flex: 1;display: flex;flex-direction: column;gap: 0.25rem}.activity-title{font-weight: var(--font-weight-semibold);color: var(--color-gray-900);font-size: var(--font-size-sm)}.activity-description{color: var(--color-gray-600);font-size: var(--font-size-sm)}.activity-time{color: var(--color-gray-500);font-size: var(--font-size-xs)}.dashboard-empty-state{padding: var(--space-xl);text-align: center;color: var(--color-gray-500);display: flex;flex-direction: column;align-items: center;gap: var(--space-sm)}.dashboard-empty-state .empty-icon{width: 48px;height: 48px;opacity: 0.5}.dashboard-empty-state .empty-text{font-size: var(--font-size-sm)}.upcoming-events-container::-webkit-scrollbar,.activity-feed::-webkit-scrollbar{width: 6px}.upcoming-events-container::-webkit-scrollbar-track,.activity-feed::-webkit-scrollbar-track{background: var(--color-gray-100);border-radius: var(--radius-full)}.upcoming-events-container::-webkit-scrollbar-thumb,.activity-feed::-webkit-scrollbar-thumb{background: var(--color-gray-400);border-radius: var(--radius-full)}.upcoming-events-container::-webkit-scrollbar-thumb:hover,.activity-feed::-webkit-scrollbar-thumb:hover{background: var(--color-gray-500)}.upcoming-events-container{scrollbar-width: thin;scrollbar-color: var(--color-gray-400) var(--color-gray-100)}.dashboard-main-content{gap: var(--space-xl)}@media (max-width: 1024px){.dashboard-main-content{flex-direction: column}.dashboard-main-content>*{width: 100% !important}}@media (max-width: 1024px){.modern-dashboard{height: auto;min-height: 100%;overflow: visible}.modern-dashboard .dashboard-widget{height: auto}.modern-dashboard .dashboard-main-content{flex: 0 0 auto}.modern-dashboard .upcoming-events-container,.modern-dashboard .activity-feed{overflow-y: visible;flex: 0 0 auto}}.landing-page-container{display: flex !important;flex-direction: column !important;align-items: center !important;width: 100% !important;padding: 0 !important;margin: 0 !important;gap: 0 !important;background: #FFFFFF}.landing-hero{width: 100%;background: linear-gradient(180deg,#f0f4ff 0%,#f8fafc 100%);position: relative;overflow: hidden}.landing-hero::before{content: '';position: absolute;top: -50%;right: -20%;width: 600px;height: 600px;background: radial-gradient(circle,rgba(59,130,246,0.08) 0%,transparent 70%);border-radius: 50%;pointer-events: none}.landing-hero::after{content: '';position: absolute;bottom: -30%;left: -10%;width: 400px;height: 400px;background: radial-gradient(circle,rgba(59,130,246,0.06) 0%,transparent 70%);border-radius: 50%;pointer-events: none}.landing-hero-content{position: relative;z-index: 1;max-width: 800px;margin: 0 auto;padding: 80px var(--space-xl) 100px;text-align: center;display: flex;flex-direction: column;align-items: center}.landing-hero-badge{display: inline-flex;align-items: center;gap: 8px;background: #3b82f6;color: #FFFFFF;padding: 6px 16px;border-radius: 20px;font-size: 13px;font-weight: 600;letter-spacing: 0.02em;margin-bottom: var(--space-xl);animation: landing-fade-in 0.6s ease-out}.landing-hero-badge .material-symbols{font-size: 16px !important;color: #FFFFFF !important}.landing-header{width: 100%;background: #FFFFFF;border-bottom: 1px solid #e2e8f0;display: flex;justify-content: center}.landing-header-inner{width: 100%;max-width: 1200px;padding: 12px var(--space-xl);display: flex;align-items: center;justify-content: space-between}.landing-header-logo{width: 150px;height: auto;display: block}.landing-header-nav{display: flex;align-items: center;gap: var(--space-xl)}.landing-header-nav-link{font-size: var(--font-size-sm);font-weight: 500;color: #374151;text-decoration: none;transition: color 150ms ease}.landing-header-nav-link:hover{color: #2563EB}.landing-hero-title{color: #0f172a !important;font-size: 3.5rem !important;font-weight: 800 !important;letter-spacing: -0.03em;line-height: 1.1 !important;margin: 0 0 var(--space-lg) 0 !important;animation: landing-fade-in 0.6s ease-out 0.1s both}.landing-hero-description{color: #64748b !important;font-size: var(--font-size-lg) !important;max-width: 560px;line-height: 1.7;margin: 0 0 var(--space-xl) 0 !important;animation: landing-fade-in 0.6s ease-out 0.2s both}.landing-hero-buttons{animation: landing-fade-in 0.6s ease-out 0.3s both;gap: var(--space-md) !important}.landing-hero-cta{font-size: var(--font-size-md) !important;padding: var(--space-sm) var(--space-xl) !important;border-radius: var(--radius-lg) !important;background: #3b82f6 !important;color: #FFFFFF !important;font-weight: var(--font-weight-semibold) !important;box-shadow: 0 4px 14px rgba(59,130,246,0.4) !important}.landing-hero-cta:hover{background: #2563eb !important;box-shadow: 0 6px 20px rgba(59,130,246,0.5) !important;transform: translateY(-2px) !important}.landing-hero-cta .material-symbols{color: #FFFFFF !important}.landing-hero-login{background: #FFFFFF !important;color: #0f172a !important;border: 1px solid #e2e8f0 !important;border-radius: var(--radius-lg) !important}.landing-hero-login:hover{background: #f8fafc !important;box-shadow: 0 4px 14px rgba(0,0,0,0.08) !important}.landing-hero-login .material-symbols{color: #0f172a !important}.landing-features{width: 100%;padding: 80px var(--space-xl);background: #FFFFFF}.landing-features-content{max-width: 1000px;margin: 0 auto}.landing-features-title{text-align: center;font-size: var(--font-size-3xl) !important;font-weight: 800 !important;color: #0f172a !important;margin: 0 0 var(--space-md) 0 !important}.landing-features-subtitle{text-align: center;font-size: var(--font-size-md) !important;color: #64748b !important;line-height: 1.6;max-width: 600px;margin: 0 auto var(--space-3xl) auto !important}.landing-features-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: var(--space-xl)}.landing-feature-card{background: #f8fafc;border: 1px solid #e2e8f0;border-radius: 16px;padding: var(--space-xl);text-align: center;transition: all 0.3s ease}.landing-feature-card:hover{transform: translateY(-4px);box-shadow: 0 12px 32px rgba(0,0,0,0.08);border-color: #bfdbfe}.landing-feature-icon{width: 56px;height: 56px;border-radius: 14px;background: #3b82f6;display: flex;align-items: center;justify-content: center;margin: 0 auto var(--space-lg)}.landing-feature-icon .material-symbols{font-size: 26px !important;color: #FFFFFF !important}.landing-feature-card-title{font-size: var(--font-size-lg) !important;font-weight: 700 !important;color: #0f172a !important;margin: 0 0 var(--space-sm) 0 !important}.landing-feature-card-desc{font-size: var(--font-size-sm) !important;color: #64748b !important;line-height: 1.7;margin: 0 !important}.landing-trust{width: 100%;padding: 60px var(--space-xl);background: linear-gradient(135deg,#1E40AF 0%,#2563EB 100%)}.landing-trust-grid{max-width: 800px;margin: 0 auto;display: grid;grid-template-columns: repeat(4,1fr);gap: var(--space-xl);text-align: center}.landing-trust-item{display: flex;flex-direction: column;align-items: center;gap: 8px}.landing-trust-value{font-size: 2rem;font-weight: 800;color: #FFFFFF;letter-spacing: -0.02em}.landing-trust-label{font-size: var(--font-size-sm);color: rgba(255,255,255,0.7);font-weight: 500}.landing-trust-flag{font-size: 2rem;line-height: 1}.landing-footer{width: 100%;padding: 40px var(--space-xl);background: #0f172a;border-top: 1px solid rgba(255,255,255,0.08)}.landing-footer-content{max-width: 800px;margin: 0 auto;text-align: center;display: flex;flex-direction: column;align-items: center;gap: var(--space-md)}.landing-footer-copyright{font-size: var(--font-size-sm) !important;color: rgba(255,255,255,0.5) !important;margin: 0 !important}.landing-footer-dev{display: flex;align-items: center;gap: 6px;font-size: var(--font-size-sm);color: rgba(255,255,255,0.5);background: rgba(255,255,255,0.05);padding: 8px 16px;border-radius: 8px}.landing-footer-dev .material-symbols{font-size: 16px !important;color: rgba(255,255,255,0.5) !important}.landing-footer-link{color: #3b82f6 !important;text-decoration: none !important;font-weight: 600}.landing-footer-link:hover{color: #60a5fa !important;text-decoration: underline !important}.landing-footer-swiss-made{width: 200px;max-width: 100%;opacity: 0.8;margin-top: var(--space-md);display: block}.landing-footer-swiss-made:hover{opacity: 1}@keyframes landing-fade-in{from{opacity: 0;transform: translateY(16px)}to{opacity: 1;transform: translateY(0)}}@media (max-width: 768px){.landing-hero-content{padding: 60px var(--space-md) 80px}.landing-hero-title{font-size: 2.5rem !important}.landing-features-grid{grid-template-columns: 1fr;gap: var(--space-md)}.landing-features{padding: 60px var(--space-md)}.landing-features-title{font-size: var(--font-size-2xl) !important}.landing-trust-grid{grid-template-columns: repeat(2,1fr);gap: var(--space-lg)}.landing-trust{padding: 48px var(--space-md)}}@media (max-width: 480px){.landing-hero-content{padding: 48px var(--space-sm) 64px}.landing-hero-title{font-size: 2rem !important}.landing-hero-description{font-size: var(--font-size-md) !important}.landing-hero-buttons{flex-direction: column !important;width: 100%;align-items: stretch !important}.landing-trust-grid{grid-template-columns: repeat(2,1fr)}}.public-view-container{align-items: center !important;max-width: 1200px !important;margin: 0 auto !important;box-sizing: border-box !important}.brand-container{gap: var(--space-sm) !important;align-items: center}.brand-text{color: var(--nav-dark-text-primary) !important;font-size: var(--font-size-xl);font-weight: var(--font-weight-semibold);letter-spacing: -0.025em;margin-left: var(--space-sm)}.brand-container img{filter: brightness(0) saturate(100%) invert(19%) sepia(95%) saturate(1845%) hue-rotate(204deg) brightness(95%) contrast(101%)}.header-desktop-only{display: flex !important}.header-mobile-only{display: none !important}@media (max-width: 640px){.header-desktop-only{display: none !important}.header-mobile-only{display: flex !important}}.mobile-language-switcher{min-width: auto !important;padding: var(--space-xs) !important}.drawer-org-selector{width: 100%;margin-bottom: var(--space-md);padding: var(--space-sm);background: var(--nav-dark-bg-secondary);border-radius: var(--radius-md)}.drawer-org-selector vaadin-combo-box{width: 100%;--lumo-contrast-10pct: rgba(255,255,255,0.1);--lumo-contrast-20pct: rgba(255,255,255,0.2)}.drawer-org-selector vaadin-combo-box::part(input-field){background: var(--nav-dark-bg-primary);color: var(--nav-dark-text-primary);border-color: var(--nav-dark-border)}@media (min-width: 641px){.drawer-org-selector{display: none !important}}.user-menu-popover{min-width: 200px}.user-menu-header{padding: var(--space-md);background: var(--color-gray-50);border-bottom: 1px solid var(--color-gray-100)}.user-menu-email{font-size: var(--font-size-sm);color: var(--color-gray-600);word-break: break-all}.user-menu-items{padding: var(--space-xs) 0}.user-menu-item{display: flex;align-items: center;gap: var(--space-sm);padding: var(--space-sm) var(--space-md);color: var(--color-gray-700);text-decoration: none;cursor: pointer;transition: background var(--transition-fast)}.user-menu-item:hover{background: var(--color-gray-50)}.user-menu-item .material-symbols{color: var(--color-gray-500)}.login-view{background: var(--gradient-primary) !important;justify-content: center;padding: 0 !important;gap: 0 !important}.login-card{background: var(--lumo-base-color);border-radius: var(--radius-2xl);box-shadow: var(--shadow-2xl);padding: var(--space-2xl) var(--space-xl);width: 100%;max-width: 420px;display: flex;flex-direction: column;gap: var(--space-md)}.login-brand{text-align: center;display: flex;flex-direction: column;align-items: center;gap: var(--space-sm);margin-bottom: var(--space-md)}.login-brand-title{font-size: var(--font-size-2xl);font-weight: var(--font-weight-bold);color: var(--color-gray-900);margin: 0}.login-brand-subtitle{font-size: var(--font-size-sm);color: var(--color-gray-500);margin: 0}.login-magic-link-section{display: flex;flex-direction: row;align-items: center;justify-content: center;gap: var(--space-xs);padding: var(--space-sm) 0}.login-magic-link-label{font-size: var(--font-size-sm);color: var(--color-gray-500)}.login-magic-link-anchor{font-size: var(--font-size-sm);color: var(--lumo-primary-color);text-decoration: none;font-weight: var(--font-weight-medium);cursor: pointer}.login-magic-link-anchor:hover{text-decoration: underline}.social-login-button{transition: all var(--transition-fast)}.social-login-google:hover{border-color: #4285F4 !important;color: #4285F4 !important;background: rgba(66,133,244,0.05) !important}.social-login-github:hover{border-color: #24292e !important;color: #24292e !important;background: rgba(36,41,46,0.05) !important}@media (max-width: 480px){.login-card{border-radius: 0;box-shadow: none;padding: var(--space-xl) var(--space-md);max-width: 100%}.login-view{background: var(--lumo-base-color) !important}}@media (max-width: 768px){.base-view vaadin-horizontal-layout{flex-wrap: wrap}.base-view vaadin-horizontal-layout>vaadin-text-field,.base-view vaadin-horizontal-layout>vaadin-email-field,.base-view vaadin-horizontal-layout>vaadin-password-field,.base-view vaadin-horizontal-layout>vaadin-number-field,.base-view vaadin-horizontal-layout>vaadin-integer-field,.base-view vaadin-horizontal-layout>vaadin-combo-box,.base-view vaadin-horizontal-layout>vaadin-select,.base-view vaadin-horizontal-layout>vaadin-date-picker,.base-view vaadin-horizontal-layout>vaadin-time-picker,.base-view vaadin-horizontal-layout>vaadin-date-time-picker,.base-view vaadin-horizontal-layout>vaadin-multi-select-combo-box{min-width: 0;max-width: 100%;flex: 1 1 100%}}