@import "https://cdn.jsdelivr.net/npm/cropperjs@1.6.2/dist/cropper.min.css";@font-face{font-family:Montserrat;font-style:normal;font-weight:300;src:local(Montserrat Light),url(./Montserrat-Light-awkjIf6I.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:300;src:local(Montserrat Light Italic),url(./Montserrat-LightItalic-DiUprkq8.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:400;src:local(Montserrat Regular),url(./Montserrat-Regular-sZls3Q25.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:400;src:local(Montserrat Italic),url(./Montserrat-Italic-Clgcdvg3.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:500;src:local(Montserrat Medium),url(./Montserrat-Medium-5C8I5e8z.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:500;src:local(Montserrat Medium Italic),url(./Montserrat-MediumItalic-fqdW0i1J.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;src:local(Montserrat SemiBold),url(./Montserrat-SemiBold-MgP8KZ4B.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:600;src:local(Montserrat SemiBold Italic),url(./Montserrat-SemiBoldItalic-DMJYChJT.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;src:local(Montserrat Bold),url(./Montserrat-Bold-Dmddk12W.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:700;src:local(Montserrat Bold Italic),url(./Montserrat-BoldItalic-Cw6DdVLc.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:100;src:local(Montserrat Thin),url(./Montserrat-Thin-DUGzJcKo.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:100;src:local(Montserrat Thin Italic),url(./Montserrat-ThinItalic-B-wSL5gq.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:200;src:local(Montserrat ExtraLight),url(./Montserrat-ExtraLight-DG9kao4d.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:200;src:local(Montserrat ExtraLight Italic),url(./Montserrat-ExtraLightItalic-Cu-tbDDQ.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;src:local(Montserrat ExtraBold),url(./Montserrat-ExtraBold-DoAa1KyB.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:800;src:local(Montserrat ExtraBold Italic),url(./Montserrat-ExtraBoldItalic-D1T62cTO.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:normal;font-weight:900;src:local(Montserrat Black),url(./Montserrat-Black-CfMQa8Pe.otf)format("opentype");font-display:swap}@font-face{font-family:Montserrat;font-style:italic;font-weight:900;src:local(Montserrat Black Italic),url(./Montserrat-BlackItalic-y6BmnK3q.otf)format("opentype");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:300;src:local(Roboto Light),url(./Roboto-Light-Dwz7nuwl.ttf)format("truetype");font-display:swap}@font-face{font-family:Roboto;font-style:italic;font-weight:300;src:local(Roboto Light Italic),url(./Roboto-LightItalic-C1jb9B99.ttf)format("truetype");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:local(Roboto Regular),url(./Roboto-Regular-CmjnF39D.ttf)format("truetype");font-display:swap}@font-face{font-family:Roboto;font-style:italic;font-weight:400;src:local(Roboto Italic),url(./Roboto-Italic-C2tNGqpc.ttf)format("truetype");font-display:swap}@font-face{font-family:Roboto;font-style:normal;font-weight:500;src:local(Roboto Medium),url(./Roboto-Medium-BzTpVR6v.ttf)format("truetype");font-display:swap}@font-face{font-family:Roboto;font-style:italic;font-weight:500;src:local(Roboto Medium Italic),url(./Roboto-MediumItalic-Dq5z0oxR.ttf)format("truetype");font-display:swap}.shift-filters{background-color:var(--lumo-base-color);border-radius:var(--lumo-border-radius-m);box-shadow:var(--lumo-box-shadow-xs);padding:var(--lumo-space-m)}.filter-container{margin-bottom:var(--lumo-space-m);padding-bottom:var(--lumo-space-m);border-bottom:1px solid var(--lumo-contrast-10pct)}.filter-container:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.filter-label{color:var(--lumo-body-text-color);font-weight:600;font-size:var(--lumo-font-size-s);margin-bottom:var(--lumo-space-xs);display:block}.filter-description{font-size:var(--lumo-font-size-xs);color:var(--lumo-secondary-text-color);margin-bottom:var(--lumo-space-s);display:block}.filter-radio-group,.filter-checkbox-group{margin-top:var(--lumo-space-s)}.filter-radio-group>label,.filter-checkbox-group>label{padding:var(--lumo-space-xs) 0;align-items:center;display:flex}.filter-option{align-items:center;gap:var(--lumo-space-s);width:100%;display:flex}.filter-option-color{border:1px solid var(--lumo-contrast-20pct);border-radius:50%;flex-shrink:0;width:16px;height:16px}@media (width<=768px){.shift-filter-component{max-width:100%}.shift-filters{padding:var(--lumo-space-s)}}.sortable-section-list{min-height:200px}.section-card{transition:all .2s}.section-card:hover{background-color:var(--lumo-contrast-10pct);border-color:var(--lumo-primary-color-50pct)}.section-card.dragging{opacity:.5;box-shadow:var(--lumo-box-shadow-m);cursor:grabbing;transform:scale(1.02)}.section-card .drag-handle:hover{color:var(--lumo-primary-color)}.profile-gallery{gap:var(--lumo-space-m);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.gallery-image-card{border-radius:var(--lumo-border-radius-m);position:relative;overflow:hidden}.gallery-image{object-fit:cover;cursor:pointer;width:100%;height:200px;transition:transform .3s}.gallery-image:hover{transform:scale(1.05)}.gallery-caption{padding:var(--lumo-space-xs) var(--lumo-space-s);font-size:var(--lumo-font-size-s);color:var(--lumo-secondary-text-color);text-align:center;display:block}.gallery-editor{gap:var(--lumo-space-s);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.gallery-editor-image{aspect-ratio:1;border-radius:var(--lumo-border-radius-m);border:1px solid var(--lumo-contrast-20pct);position:relative;overflow:hidden}.gallery-editor-image img{object-fit:cover;width:100%;height:100%}.gallery-editor-image .delete-button{top:var(--lumo-space-xs);right:var(--lumo-space-xs);opacity:0;transition:opacity .2s;position:absolute}.gallery-editor-image:hover .delete-button{opacity:1}.profile-header-section{text-align:center;padding:var(--lumo-space-xl);background:linear-gradient(135deg, var(--lumo-primary-color-10pct), var(--lumo-contrast-5pct));border-radius:var(--lumo-border-radius-l);position:relative}.profile-header-section.with-banner{color:#fff;background-position:50%;background-size:cover;min-height:300px}.profile-header-section.with-banner:before{content:"";border-radius:var(--lumo-border-radius-l);background:linear-gradient(#0000004d,#0009);position:absolute;inset:0}.profile-header-content{z-index:1;position:relative}.profile-logo{object-fit:cover;width:120px;height:120px;box-shadow:var(--lumo-box-shadow-m);margin-bottom:var(--lumo-space-m);border:4px solid #fff;border-radius:50%}.profile-name{font-size:var(--lumo-font-size-xxl);margin:0;font-weight:700}.profile-tagline{font-size:var(--lumo-font-size-l);opacity:.9;margin-top:var(--lumo-space-s)}.profile-about-section{padding:var(--lumo-space-l)}.profile-about-section h2{color:var(--lumo-primary-text-color);margin-top:0}.profile-about-content{line-height:1.6}.profile-contact-section{padding:var(--lumo-space-l);background-color:var(--lumo-contrast-5pct);border-radius:var(--lumo-border-radius-m)}.profile-contact-item{align-items:center;gap:var(--lumo-space-s);margin-bottom:var(--lumo-space-s);display:flex}.profile-contact-item vaadin-icon{color:var(--lumo-primary-color)}.profile-editor-layout{gap:var(--lumo-space-l);grid-template-columns:1fr 1fr;height:100%;display:grid}.profile-editor-panel{padding:var(--lumo-space-m);background-color:var(--lumo-base-color);border-radius:var(--lumo-border-radius-m);border:1px solid var(--lumo-contrast-10pct);overflow-y:auto}.profile-preview-panel{padding:var(--lumo-space-m);background-color:var(--lumo-contrast-5pct);border-radius:var(--lumo-border-radius-m);overflow-y:auto}.gallery-lightbox{background-color:#000000f2}.gallery-lightbox-image{object-fit:contain;max-width:90vw;max-height:80vh}.gallery-lightbox-nav{color:#fff;padding:var(--lumo-space-m);cursor:pointer;background-color:#fff3;border:none;transition:background-color .2s;position:absolute;top:50%;transform:translateY(-50%)}.gallery-lightbox-nav:hover{background-color:#fff6}.gallery-lightbox-nav.prev{left:var(--lumo-space-m)}.gallery-lightbox-nav.next{right:var(--lumo-space-m)}.public-profile-view{background-color:#fafafa;max-width:100%;margin:0 auto}.public-profile-section{width:100%}.public-profile-section:nth-child(odd){background-color:#fff}.public-profile-section:nth-child(2n){background-color:#f8f9fa}.public-profile-section:first-child{padding-top:0}.public-profile-section:first-child .profile-header-section{border-radius:0}@media (width<=768px){.profile-editor-layout{grid-template-columns:1fr}.profile-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:1rem!important}.gallery-image{height:150px!important}.gallery-image-card{border-radius:8px!important}.profile-logo{width:100px!important;height:100px!important}.profile-name{font-size:1.75rem!important}.profile-tagline{font-size:1rem!important}.profile-header-section{min-height:280px!important;padding:2rem 1rem!important}.profile-about-section,.profile-custom-section,.profile-contact-section,.profile-gallery-section{padding:2rem 1rem!important}.profile-contact-card{padding:1rem!important}.profile-contact-card .icon-container{width:40px!important;height:40px!important}}@media (width<=480px){.profile-gallery{grid-template-columns:1fr!important}.profile-logo{width:80px!important;height:80px!important}.profile-name{font-size:1.5rem!important}.profile-header-section{min-height:250px!important}}vaadin-login-overlay,vaadin-login-overlay-wrapper,vaadin-login-overlay::part(overlay),vaadin-login-overlay::part(card),vaadin-login-overlay::part(brand),vaadin-login-overlay::part(form),vaadin-login-overlay [part=overlay],vaadin-login-overlay [part=card],vaadin-login-overlay [part=brand],vaadin-login-overlay [part=form]{background:0 0!important}vaadin-login-overlay [part=card],vaadin-login-overlay::part(card){grid-template:"form"/1fr!important;display:grid!important}vaadin-login-overlay-wrapper{--lumo-base-color:#fff!important;--lumo-primary-color:#2e86de!important;background:#f8f9fa!important}vaadin-login-overlay [part=brand],vaadin-login-overlay::part(brand),.vaadin-login-overlay-brand{visibility:hidden!important;grid-area:unset!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;min-height:0!important;max-height:0!important;display:none!important}vaadin-login-overlay [part=form],vaadin-login-overlay::part(form),vaadin-login-overlay [part=content],vaadin-login-overlay::part(content){grid-area:form!important;width:100%!important;max-width:450px!important;margin:auto!important}vaadin-login-overlay[theme~=ximunhu] [part=brand],vaadin-login-overlay[theme~=ximunhu]::part(brand){display:none!important}vaadin-login-overlay-wrapper:before,vaadin-login-overlay-wrapper:after,vaadin-login-overlay:before,vaadin-login-overlay:after{background:0 0!important;display:none!important}vaadin-login-form-wrapper,vaadin-login-form{background:#fff!important}html body vaadin-login-overlay-wrapper vaadin-login-overlay [part=brand]{display:none!important}vaadin-login-overlay{--_vaadin-login-overlay-brand-background:transparent!important;--_vaadin-login-overlay-brand-background-color:transparent!important}:root{--xh-primary:#1e6db3;--xh-primary-light:#4c96e6;--xh-primary-dark:#0f4b82;--xh-primary-ultralight:#e7f1fb;--xh-accent-energy:#f4a640;--xh-accent-heart:#ff6b6b;--xh-accent-success:#51cf66;--xh-neutral-900:#1c232b;--xh-neutral-800:#2a313a;--xh-neutral-700:#3b424d;--xh-neutral-600:#515866;--xh-neutral-500:#687180;--xh-neutral-400:#8a93a3;--xh-neutral-300:#b8c0ce;--xh-neutral-200:#e1e6ed;--xh-neutral-100:#f2f5f9;--xh-neutral-50:#f8fafd;--xh-white:#fff;--xh-success:#3fc96b;--xh-success-light:#d9f7e3;--xh-warning:#f4a640;--xh-warning-light:#fff1d6;--xh-error:#ff6b6b;--xh-error-light:#ffe3e3;--xh-info:#4c96e6;--xh-info-light:#e4f0fe;--xh-font-family:"Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--xh-font-heading:"Montserrat", "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--xh-font-mono:"JetBrains Mono", "Consolas", monospace;--xh-text-xs:clamp(.69rem, .66rem + .15vw, .78rem);--xh-text-sm:clamp(.83rem, .78rem + .25vw, 1rem);--xh-text-base:clamp(1rem, .93rem + .35vw, 1.125rem);--xh-text-lg:clamp(1.125rem, 1.05rem + .4vw, 1.25rem);--xh-text-xl:clamp(1.25rem, 1.15rem + .5vw, 1.5rem);--xh-text-2xl:clamp(1.5rem, 1.35rem + .75vw, 2rem);--xh-text-3xl:clamp(1.875rem, 1.65rem + 1.1vw, 2.5rem);--xh-text-4xl:clamp(2.25rem, 1.95rem + 1.5vw, 3rem);--xh-leading-none:1;--xh-leading-tight:1.25;--xh-leading-snug:1.375;--xh-leading-normal:1.5;--xh-leading-relaxed:1.625;--xh-leading-loose:2;--xh-space-xs:4px;--xh-space-sm:8px;--xh-space-md:16px;--xh-space-lg:24px;--xh-space-xl:32px;--xh-space-2xl:48px;--xh-space-3xl:64px;--xh-radius-sm:6px;--xh-radius-md:12px;--xh-radius-lg:16px;--xh-radius-xl:24px;--xh-radius-full:9999px;--xh-shadow-xs:0 1px 2px #0000000a;--xh-shadow-sm:0 2px 4px #0000000f, 0 1px 2px #0000000a;--xh-shadow-md:0 4px 8px #00000014, 0 2px 4px #0000000f;--xh-shadow-lg:0 8px 16px #0000001a, 0 4px 8px #00000014;--xh-shadow-xl:0 16px 32px #0000001f, 0 8px 16px #0000001a;--xh-shadow-inner:inset 0 2px 4px #0000000f;--xh-transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--xh-transition-base:.25s cubic-bezier(.4, 0, .2, 1);--xh-transition-slow:.35s cubic-bezier(.4, 0, .2, 1);--xh-transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--xh-z-base:0;--xh-z-dropdown:100;--xh-z-sticky:200;--xh-z-fixed:300;--xh-z-modal-backdrop:400;--xh-z-modal:500;--xh-z-popover:600;--xh-z-tooltip:700;--xh-screen-sm:640px;--xh-screen-md:768px;--xh-screen-lg:1024px;--xh-screen-xl:1280px;--xh-screen-2xl:1536px;--dialog-width-sm:400px;--dialog-width-md:600px;--dialog-width-lg:800px;--dialog-width-xl:1000px;--dialog-width-full:95vw}html{--lumo-primary-color:var(--xh-primary);--lumo-primary-color-50pct:#2e86de80;--lumo-primary-color-10pct:#2e86de1a;--lumo-primary-text-color:var(--xh-primary);--lumo-base-color:var(--xh-white);--lumo-tint-5pct:var(--xh-neutral-50);--lumo-tint-10pct:var(--xh-neutral-100);--lumo-tint-20pct:var(--xh-neutral-200);--lumo-tint-30pct:var(--xh-neutral-300);--lumo-tint-40pct:var(--xh-neutral-400);--lumo-tint-50pct:var(--xh-neutral-500);--lumo-tint-60pct:var(--xh-neutral-600);--lumo-tint-70pct:var(--xh-neutral-700);--lumo-tint-80pct:var(--xh-neutral-800);--lumo-tint-90pct:var(--xh-neutral-900);--lumo-body-text-color:var(--xh-neutral-800);--lumo-secondary-text-color:var(--xh-neutral-600);--lumo-tertiary-text-color:var(--xh-neutral-500);--lumo-header-text-color:var(--xh-neutral-900);--lumo-success-color:var(--xh-success);--lumo-success-text-color:var(--xh-success);--lumo-error-color:var(--xh-error);--lumo-error-text-color:var(--xh-error);--lumo-font-family:var(--xh-font-family);--lumo-font-size-xs:.75rem;--lumo-font-size-s:.875rem;--lumo-font-size-m:1rem;--lumo-font-size-l:1.125rem;--lumo-font-size-xl:1.375rem;--lumo-font-size-xxl:1.75rem;--lumo-font-size-xxxl:2.5rem;--lumo-border-radius-s:var(--xh-radius-sm);--lumo-border-radius-m:var(--xh-radius-md);--lumo-border-radius-l:var(--xh-radius-lg);--lumo-box-shadow-xs:var(--xh-shadow-xs);--lumo-box-shadow-s:var(--xh-shadow-sm);--lumo-box-shadow-m:var(--xh-shadow-md);--lumo-box-shadow-l:var(--xh-shadow-lg);--lumo-box-shadow-xl:var(--xh-shadow-xl)}*{box-sizing:border-box}html,body{font-family:var(--xh-font-family);color:var(--xh-neutral-800);background-color:var(--xh-neutral-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 12% 8%,#4c96e62e,#0000 45%),radial-gradient(circle at 88% 18%,#0f4b8224,#0000 40%),linear-gradient(#fff 0%,#f3f7fc 55%,#eef3f9 100%);margin:0;padding:0;line-height:1.6}body{min-height:100%;position:relative}body:before,body:after{content:"";filter:blur(40px);opacity:.45;pointer-events:none;z-index:-1;border-radius:50%;width:42vw;height:42vw;position:fixed}body:before{background:radial-gradient(circle at 30% 30%,#4c96e659,#0000 65%);top:-18vw;right:-12vw}body:after{background:radial-gradient(circle at 40% 40%,#0f4b8247,#0000 65%);bottom:-20vw;left:-14vw}h1,h2,h3,h4,h5,h6{color:var(--xh-neutral-900);font-weight:600;font-family:var(--xh-font-heading);margin-top:0;line-height:1.3}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}vaadin-app-layout::part(navbar){-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--xh-neutral-200);background:linear-gradient(120deg,#fffffff2 0%,#f2f5f9e6 70%);box-shadow:0 4px 14px #0f233c14}vaadin-app-layout::part(drawer){background-color:var(--xh-white);border-right:1px solid var(--xh-neutral-200)}vaadin-app-layout::part(content){animation:.52s cubic-bezier(.22,1,.36,1) xh-content-rise}vaadin-side-nav{padding:var(--xh-space-md)}vaadin-side-nav-item::part(link){border-radius:var(--xh-radius-md);padding:var(--xh-space-sm) var(--xh-space-md);margin:var(--xh-space-xs) 0;transition:all var(--xh-transition-fast);color:var(--xh-neutral-700);font-weight:500}vaadin-side-nav-item vaadin-side-nav-item::part(link){padding-left:calc(var(--xh-space-md) + var(--xh-space-lg));font-size:.95rem;font-weight:400}vaadin-side-nav-item vaadin-side-nav-item::part(link):before{content:"•";left:calc(var(--xh-space-md) + var(--xh-space-sm));color:var(--xh-neutral-400);position:absolute}vaadin-side-nav-item::part(link):hover{background-color:var(--xh-primary-ultralight);color:var(--xh-primary);transform:translate(2px)}vaadin-side-nav-item[active]::part(link){background:linear-gradient(135deg, var(--xh-primary) 0%, var(--xh-primary-dark) 100%);color:var(--xh-white);box-shadow:0 6px 16px #1e6db340}vaadin-side-nav-item vaadin-side-nav-item[active]::part(link){background:var(--xh-primary-ultralight);color:var(--xh-primary);box-shadow:none;border-left:3px solid var(--xh-primary);padding-left:calc(var(--xh-space-md) + var(--xh-space-lg) - 3px)}vaadin-button{font-weight:500;font-size:var(--xh-text-sm);border-radius:var(--xh-radius-md);transition:all var(--xh-transition-fast);min-height:40px;padding:0 var(--xh-space-lg);cursor:pointer;position:relative;overflow:hidden}vaadin-button[theme~=primary]{background:linear-gradient(135deg, var(--xh-primary) 0%, var(--xh-primary-dark) 100%);color:var(--xh-white);border:none;box-shadow:0 6px 18px #1e6db347}vaadin-button[theme~=primary]:hover:not([disabled]){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 10px 24px #1e6db359}vaadin-button[theme~=primary]:active:not([disabled]){filter:brightness(.95);transform:translateY(0)}vaadin-button[theme~=secondary],vaadin-button:not([theme]){background-color:var(--xh-white);color:var(--xh-primary);border:2px solid var(--xh-primary)}vaadin-button[theme~=secondary]:hover:not([disabled]),vaadin-button:not([theme]):hover:not([disabled]){background-color:var(--xh-primary-ultralight);transform:translateY(-1px)}vaadin-button[theme~=tertiary]{color:var(--xh-neutral-700);box-shadow:none;background:0 0;border:none}vaadin-button[theme~=tertiary]:hover:not([disabled]){background:var(--xh-neutral-100);transform:none}vaadin-button[theme~=tertiary]:active:not([disabled]){background:var(--xh-neutral-200)}vaadin-button[theme~=success]{background:linear-gradient(135deg, var(--xh-success) 0%, #40c057 100%);color:var(--xh-white);border:none;box-shadow:0 2px 8px #51cf664d}vaadin-button[theme~=success]:hover:not([disabled]){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 4px 12px #51cf6666}vaadin-button[theme~=error]{background:linear-gradient(135deg, var(--xh-error) 0%, #fa5252 100%);color:var(--xh-white);border:none;box-shadow:0 2px 8px #ff6b6b4d}vaadin-button[theme~=error]:hover:not([disabled]){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 4px 12px #ff6b6b66}vaadin-button[theme~=warning]{background:linear-gradient(135deg, var(--xh-warning) 0%, #ffa00a 100%);color:var(--xh-neutral-900);border:none;box-shadow:0 2px 8px #ffb84d4d}vaadin-button[theme~=warning]:hover:not([disabled]){transform:translateY(-1px);box-shadow:0 4px 12px #ffb84d66}vaadin-button[theme~=contrast]{background:var(--xh-neutral-800);color:var(--xh-white);border:none}@keyframes xh-content-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}vaadin-button[theme~=contrast]:hover:not([disabled]){background:var(--xh-neutral-900);transform:translateY(-1px)}vaadin-button[theme~=small]{min-height:32px;font-size:var(--xh-text-xs);padding:0 var(--xh-space-md);border-radius:var(--xh-radius-sm)}vaadin-button[theme~=large]{min-height:48px;font-size:var(--xh-text-base);padding:0 var(--xh-space-xl)}vaadin-button[theme~=icon]{border-radius:var(--xh-radius-md);justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;padding:0;display:inline-flex}vaadin-button[theme~=icon][theme~=small]{width:32px;min-width:32px;height:32px}vaadin-button[theme~=icon][theme~=large]{width:48px;min-width:48px;height:48px}vaadin-button[disabled]{opacity:.5;cursor:not-allowed;filter:grayscale(30%);transform:none!important}vaadin-button.loading{pointer-events:none;color:#0000!important}vaadin-button.loading:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.75s linear infinite buttonSpinner;position:absolute}@keyframes buttonSpinner{to{transform:rotate(360deg)}}.button-group{gap:var(--xh-space-sm);flex-wrap:wrap;align-items:center;display:inline-flex}.button-group-vertical{flex-direction:column;align-items:stretch}@media (width<=640px){.button-group{flex-direction:column;width:100%}.button-group vaadin-button{width:100%}}vaadin-button[theme~=pill]{border-radius:var(--xh-radius-full)}vaadin-text-field,vaadin-password-field,vaadin-text-area,vaadin-combo-box,vaadin-select,vaadin-date-picker,vaadin-time-picker,vaadin-email-field,vaadin-number-field,vaadin-integer-field{--lumo-font-family:var(--xh-font-family);width:100%}vaadin-text-field::part(input-field),vaadin-password-field::part(input-field),vaadin-text-area::part(input-field),vaadin-combo-box::part(input-field),vaadin-select::part(input-field),vaadin-date-picker::part(input-field),vaadin-time-picker::part(input-field),vaadin-email-field::part(input-field),vaadin-number-field::part(input-field),vaadin-integer-field::part(input-field){background-color:var(--xh-white);border:2px solid var(--xh-neutral-200);border-radius:var(--xh-radius-md);transition:all var(--xh-transition-fast);min-height:44px}vaadin-text-field:hover::part(input-field),vaadin-password-field:hover::part(input-field),vaadin-text-area:hover::part(input-field),vaadin-combo-box:hover::part(input-field),vaadin-select:hover::part(input-field),vaadin-date-picker:hover::part(input-field),vaadin-time-picker:hover::part(input-field),vaadin-email-field:hover::part(input-field),vaadin-number-field:hover::part(input-field),vaadin-integer-field:hover::part(input-field){border-color:var(--xh-neutral-400)}vaadin-text-field[focused]::part(input-field),vaadin-password-field[focused]::part(input-field),vaadin-text-area[focused]::part(input-field),vaadin-combo-box[focused]::part(input-field),vaadin-select[focused]::part(input-field),vaadin-date-picker[focused]::part(input-field),vaadin-time-picker[focused]::part(input-field),vaadin-email-field[focused]::part(input-field),vaadin-number-field[focused]::part(input-field),vaadin-integer-field[focused]::part(input-field){border-color:var(--xh-primary);box-shadow:0 0 0 3px var(--xh-primary-ultralight)}vaadin-text-field[invalid]::part(input-field),vaadin-password-field[invalid]::part(input-field),vaadin-text-area[invalid]::part(input-field),vaadin-combo-box[invalid]::part(input-field),vaadin-select[invalid]::part(input-field),vaadin-date-picker[invalid]::part(input-field),vaadin-time-picker[invalid]::part(input-field),vaadin-email-field[invalid]::part(input-field),vaadin-number-field[invalid]::part(input-field),vaadin-integer-field[invalid]::part(input-field){border-color:var(--xh-error);background-color:var(--xh-error-light)}vaadin-text-field[invalid][focused]::part(input-field),vaadin-password-field[invalid][focused]::part(input-field),vaadin-text-area[invalid][focused]::part(input-field),vaadin-combo-box[invalid][focused]::part(input-field){box-shadow:0 0 0 3px #ff6b6b33}vaadin-text-field::part(label),vaadin-password-field::part(label),vaadin-text-area::part(label),vaadin-combo-box::part(label),vaadin-select::part(label),vaadin-date-picker::part(label),vaadin-time-picker::part(label){font-weight:500;font-size:var(--xh-text-sm);color:var(--xh-neutral-700);margin-bottom:var(--xh-space-xs)}vaadin-text-field[required]::part(label):after,vaadin-password-field[required]::part(label):after,vaadin-combo-box[required]::part(label):after,vaadin-select[required]::part(label):after,vaadin-date-picker[required]::part(label):after{content:" *";color:var(--xh-error)}vaadin-text-field::part(helper-text),vaadin-password-field::part(helper-text),vaadin-text-area::part(helper-text),vaadin-combo-box::part(helper-text){font-size:var(--xh-text-xs);color:var(--xh-neutral-500)}vaadin-text-field::part(error-message),vaadin-password-field::part(error-message),vaadin-text-area::part(error-message),vaadin-combo-box::part(error-message){font-size:var(--xh-text-xs);color:var(--xh-error)}vaadin-text-field[disabled]::part(input-field),vaadin-password-field[disabled]::part(input-field),vaadin-combo-box[disabled]::part(input-field){background-color:var(--xh-neutral-100);border-color:var(--xh-neutral-200);opacity:.7;cursor:not-allowed}vaadin-text-field[readonly]::part(input-field),vaadin-password-field[readonly]::part(input-field){background-color:var(--xh-neutral-50);border-style:dashed}vaadin-text-area::part(input-field){min-height:100px}vaadin-checkbox::part(checkbox),vaadin-radio-button::part(radio){border:2px solid var(--xh-neutral-400);transition:all var(--xh-transition-fast)}vaadin-checkbox:hover::part(checkbox),vaadin-radio-button:hover::part(radio){border-color:var(--xh-primary)}vaadin-checkbox[checked]::part(checkbox),vaadin-radio-button[checked]::part(radio){background-color:var(--xh-primary);border-color:var(--xh-primary)}.form-section{margin-bottom:var(--xh-space-xl)}.form-section-title{font-size:var(--xh-text-lg);color:var(--xh-neutral-800);margin-bottom:var(--xh-space-md);padding-bottom:var(--xh-space-sm);border-bottom:2px solid var(--xh-primary-ultralight);font-weight:600}.form-row{gap:var(--xh-space-md);align-items:flex-start;display:flex}.form-row>*{flex:1;min-width:0}.form-hint{font-size:var(--xh-text-xs);color:var(--xh-neutral-500);margin-top:var(--xh-space-xs)}@media (width<=640px){.form-row{gap:var(--xh-space-md)!important;flex-direction:column!important}.form-row>*{flex:none!important;width:100%!important}vaadin-text-field::part(input-field),vaadin-password-field::part(input-field),vaadin-combo-box::part(input-field),vaadin-select::part(input-field),vaadin-date-picker::part(input-field){min-height:48px}}vaadin-form-layout{--vaadin-form-layout-column-spacing:var(--xh-space-md)}@media (width<=640px){vaadin-form-layout{--vaadin-form-layout-column-spacing:0}}vaadin-grid{background-color:var(--xh-white);border-radius:var(--xh-radius-lg);box-shadow:var(--xh-shadow-sm);overflow:hidden}vaadin-grid::part(header-cell){background-color:var(--xh-neutral-50);color:var(--xh-neutral-700);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--xh-neutral-200);font-size:.75rem;font-weight:600}vaadin-grid::part(body-cell){padding:var(--xh-space-md);border-bottom:1px solid var(--xh-neutral-100)}vaadin-grid::part(row):hover{background-color:var(--xh-primary-ultralight)}.event-grid::part(row),.date-grid::part(row){cursor:pointer}vaadin-grid::part(selected-row){background-color:var(--xh-primary-ultralight)}.card{background-color:var(--xh-white);border-radius:var(--xh-radius-lg);padding:var(--xh-space-xl);box-shadow:var(--xh-shadow-sm);transition:all var(--xh-transition-base)}.card:hover{box-shadow:var(--xh-shadow-md);transform:translateY(-2px)}vaadin-dialog-overlay{--lumo-dialog-overlay-spacing:var(--xh-space-lg)}vaadin-dialog-overlay::part(backdrop){-webkit-backdrop-filter:blur(4px);background-color:#00000080}vaadin-dialog-overlay::part(overlay){background-color:var(--xh-white);border-radius:var(--xh-radius-xl);box-shadow:var(--xh-shadow-xl);max-width:calc(100vw - (var(--lumo-dialog-overlay-spacing) + var(--lumo-dialog-overlay-spacing)));flex-direction:column;max-height:calc(100dvh - 48px);animation:.3s ease-out dialogSlideUp;display:flex;overflow:hidden}vaadin-dialog-overlay::part(content){flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.dialog-sm vaadin-dialog-overlay::part(overlay){width:min(var(--dialog-width-sm), calc(100vw - 32px))}.dialog-md vaadin-dialog-overlay::part(overlay){width:min(var(--dialog-width-md), calc(100vw - 32px))}.dialog-lg vaadin-dialog-overlay::part(overlay){width:min(var(--dialog-width-lg), calc(100vw - 32px))}.dialog-xl vaadin-dialog-overlay::part(overlay){width:min(var(--dialog-width-xl), calc(100vw - 32px))}.dialog-full vaadin-dialog-overlay::part(overlay){width:var(--dialog-width-full)}@keyframes dialogSlideUp{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dialog-header,.dialog-header-modern{align-items:center;gap:var(--xh-space-md);padding:var(--xh-space-lg) var(--xh-space-xl);border-bottom:1px solid var(--xh-neutral-200);background:linear-gradient(135deg, var(--xh-neutral-50) 0%, var(--xh-white) 100%);flex-shrink:0;display:flex}.dialog-header vaadin-icon,.dialog-header-modern vaadin-icon,.dialog-header .dialog-icon{width:24px;height:24px;color:var(--xh-primary);flex-shrink:0}.dialog-header span,.dialog-header-modern .dialog-title{font-size:var(--xh-text-lg);color:var(--xh-neutral-900);font-weight:600;line-height:var(--xh-leading-tight);margin:0}.dialog-body,.dialog-body-modern,.modern-form{padding:var(--xh-space-xl);-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.dialog-footer,.dialog-footer-modern{justify-content:flex-end;gap:var(--xh-space-sm);padding:var(--xh-space-md) var(--xh-space-xl);border-top:1px solid var(--xh-neutral-200);background:var(--xh-neutral-50);flex-shrink:0;display:flex}vaadin-dialog-overlay::part(footer){justify-content:flex-end;gap:var(--xh-space-sm);padding:var(--xh-space-md) var(--xh-space-xl);border-top:1px solid var(--xh-neutral-200);background:var(--xh-neutral-50);display:flex}@media (width<=640px){vaadin-dialog-overlay{--lumo-dialog-overlay-spacing:0px}vaadin-dialog-overlay::part(overlay){margin:0;position:fixed;inset:0;border-radius:0!important;flex-direction:column!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;display:flex!important;overflow:hidden!important}vaadin-dialog-overlay::part(content){flex:1;min-height:0;overflow-y:auto}vaadin-dialog-overlay::part(footer){padding-bottom:max(var(--xh-space-md), env(safe-area-inset-bottom));flex-shrink:0}.dialog-header,.dialog-header-modern{padding:var(--xh-space-md) var(--xh-space-lg)}.dialog-body,.dialog-body-modern,.modern-form{padding:var(--xh-space-lg)}.dialog-footer,.dialog-footer-modern,vaadin-dialog-overlay::part(footer){padding:var(--xh-space-md) var(--xh-space-lg);padding-bottom:max(var(--xh-space-md), env(safe-area-inset-bottom));flex-direction:column-reverse}.dialog-footer vaadin-button,.dialog-footer-modern vaadin-button,vaadin-dialog-overlay vaadin-button[slot=footer]{width:100%;min-height:48px}}@media (width>=641px) and (width<=1024px){.dialog-sm vaadin-dialog-overlay::part(overlay),.dialog-md vaadin-dialog-overlay::part(overlay){max-width:min(100vw - 64px,700px)}.dialog-lg vaadin-dialog-overlay::part(overlay),.dialog-xl vaadin-dialog-overlay::part(overlay){max-width:calc(100vw - 64px)}}vaadin-notification-card{border-radius:var(--xh-radius-md);box-shadow:var(--xh-shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}vaadin-notification-card[theme~=success]{background:linear-gradient(135deg, var(--xh-success) 0%, #40c057 100%);color:var(--xh-white)}vaadin-notification-card[theme~=error]{background:linear-gradient(135deg, var(--xh-error) 0%, #fa5252 100%);color:var(--xh-white)}vaadin-notification-card[theme~=warning]{background:linear-gradient(135deg, var(--xh-warning) 0%, #f59f00 100%);color:var(--xh-white)}vaadin-notification-card[theme~=primary]{background:linear-gradient(135deg, #4c96e6 0%, var(--xh-primary) 100%);color:var(--xh-white)}vaadin-progress-bar{border-radius:var(--xh-radius-full);background-color:var(--xh-neutral-200);height:8px}vaadin-progress-bar::part(bar){background:linear-gradient(90deg, var(--xh-primary) 0%, var(--xh-primary-light) 100%);border-radius:var(--xh-radius-full);transition:width var(--xh-transition-base)}vaadin-tabs{background-color:var(--xh-white);border-radius:var(--xh-radius-lg);padding:var(--xh-space-xs);box-shadow:var(--xh-shadow-xs)}vaadin-tab{border-radius:var(--xh-radius-md);padding:var(--xh-space-sm) var(--xh-space-lg);margin:0 var(--xh-space-xs);transition:all var(--xh-transition-fast);font-weight:500}vaadin-tab:hover{background-color:var(--xh-neutral-100)}vaadin-tab[selected]{background:linear-gradient(135deg, var(--xh-primary) 0%, var(--xh-primary-dark) 100%);color:var(--xh-white);box-shadow:var(--xh-shadow-sm)}vaadin-avatar{border:3px solid var(--xh-white);box-shadow:var(--xh-shadow-sm)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading{position:relative;overflow:hidden}.loading:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;animation:1.5s infinite loading;position:absolute;top:0;left:-100%}@keyframes loading{to{left:100%}}@media (width<=768px){:root{--xh-space-md:12px;--xh-space-lg:20px;--xh-space-xl:28px}h1{font-size:var(--xh-text-2xl)}h2{font-size:var(--xh-text-xl)}h3{font-size:var(--xh-text-lg)}}@media (width<=640px){:root{--xh-space-md:10px;--xh-space-lg:16px;--xh-space-xl:24px;--xh-space-2xl:32px}h1{font-size:var(--xh-text-xl)}h2{font-size:var(--xh-text-lg)}h3{font-size:var(--xh-text-base)}body{overflow-x:hidden}}.container{width:100%;padding-left:var(--xh-space-md);padding-right:var(--xh-space-md);margin-left:auto;margin-right:auto}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1200px}}.skeleton{background:linear-gradient(90deg, var(--xh-neutral-200) 0%, var(--xh-neutral-100) 50%, var(--xh-neutral-200) 100%);border-radius:var(--xh-radius-sm);background-size:200% 100%;animation:1.5s ease-in-out infinite skeletonPulse}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;margin-bottom:var(--xh-space-xs);width:100%}.skeleton-text-short{width:60%}.skeleton-text-medium{width:80%}.skeleton-avatar{border-radius:50%;flex-shrink:0;width:40px;height:40px}.skeleton-avatar-lg{width:64px;height:64px}.skeleton-button{border-radius:var(--xh-radius-md);width:100px;height:40px}.skeleton-card{border-radius:var(--xh-radius-lg);width:100%;height:200px}.skeleton-row{gap:var(--xh-space-md);padding:var(--xh-space-md) 0;align-items:center;display:flex}.empty-state{padding:var(--xh-space-3xl) var(--xh-space-xl);text-align:center;background:var(--xh-neutral-50);border-radius:var(--xh-radius-lg);border:2px dashed var(--xh-neutral-200);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{width:80px;height:80px;margin-bottom:var(--xh-space-lg);color:var(--xh-neutral-400);opacity:.6}.empty-state-icon vaadin-icon,.empty-state-icon svg{width:100%;height:100%}.empty-state-title{font-size:var(--xh-text-lg);color:var(--xh-neutral-700);margin:0 0 var(--xh-space-sm) 0;font-weight:600}.empty-state-description{font-size:var(--xh-text-sm);color:var(--xh-neutral-500);max-width:400px;margin:0 0 var(--xh-space-lg) 0;line-height:var(--xh-leading-relaxed)}.empty-state-action{margin-top:var(--xh-space-md)}.empty-state-compact{padding:var(--xh-space-xl)}.empty-state-compact .empty-state-icon{width:48px;height:48px;margin-bottom:var(--xh-space-md)}.info-box{gap:var(--xh-space-md);padding:var(--xh-space-md);border-radius:var(--xh-radius-md);margin-bottom:var(--xh-space-md);border-left:4px solid;display:flex}.info-box-icon{flex-shrink:0;width:24px;height:24px}.info-box-content{flex:1;min-width:0}.info-box-title{margin-bottom:var(--xh-space-xs);font-weight:600}.info-box-text{font-size:var(--xh-text-sm);line-height:var(--xh-leading-relaxed);margin:0}.info-box-info{background-color:var(--xh-info-light);border-left-color:var(--xh-info)}.info-box-info .info-box-icon{color:var(--xh-info)}.info-box-success{background-color:var(--xh-success-light);border-left-color:var(--xh-success)}.info-box-success .info-box-icon{color:var(--xh-success)}.info-box-warning{background-color:var(--xh-warning-light);border-left-color:var(--xh-warning)}.info-box-warning .info-box-icon{color:var(--xh-warning)}.info-box-error{background-color:var(--xh-error-light);border-left-color:var(--xh-error)}.info-box-error .info-box-icon{color:var(--xh-error)}:focus-visible{outline:3px solid var(--xh-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}vaadin-button:focus-visible,vaadin-text-field:focus-visible,vaadin-combo-box:focus-visible,vaadin-select:focus-visible,vaadin-checkbox:focus-visible,vaadin-radio-button:focus-visible{outline:3px solid var(--xh-primary);outline-offset:2px;border-radius:var(--xh-radius-sm)}.skip-link{top:-100px;left:var(--xh-space-md);background:var(--xh-primary);color:var(--xh-white);padding:var(--xh-space-sm) var(--xh-space-md);border-radius:var(--xh-radius-md);z-index:var(--xh-z-tooltip);transition:top var(--xh-transition-fast);font-weight:500;text-decoration:none;position:absolute}.skip-link:focus{top:var(--xh-space-md)}@media (prefers-contrast:high){:root{--xh-primary:#06c;--xh-neutral-200:#999;--xh-neutral-300:#777}vaadin-button{border:2px solid}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeleton{background:var(--xh-neutral-200);animation:none}}[theme~=dark]{--xh-neutral-900:#fafbfc;--xh-neutral-800:#e1e4e8;--xh-neutral-700:#b8bcc8;--xh-neutral-600:#8b90a0;--xh-neutral-500:#6c717e;--xh-neutral-400:#565b67;--xh-neutral-300:#3f4450;--xh-neutral-200:#2d3139;--xh-neutral-100:#1a1d23;--xh-neutral-50:#131517;--lumo-base-color:#0d0f11;--xh-shadow-xs:0 1px 2px #0003;--xh-shadow-sm:0 2px 4px #0000004d;--xh-shadow-md:0 4px 8px #0006;--xh-shadow-lg:0 8px 16px #00000080;--xh-shadow-xl:0 16px 32px #0009}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-sm{margin-top:var(--xh-space-sm)}.mt-md{margin-top:var(--xh-space-md)}.mt-lg{margin-top:var(--xh-space-lg)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--xh-space-sm)}.mb-md{margin-bottom:var(--xh-space-md)}.mb-lg{margin-bottom:var(--xh-space-lg)}.p-0{padding:0}.p-sm{padding:var(--xh-space-sm)}.p-md{padding:var(--xh-space-md)}.p-lg{padding:var(--xh-space-lg)}.dashboard-card{background:linear-gradient(135deg, var(--xh-white) 0%, var(--xh-neutral-50) 100%);border-radius:var(--xh-radius-lg);padding:var(--xh-space-xl);box-shadow:var(--xh-shadow-sm);transition:all var(--xh-transition-base);position:relative;overflow:hidden}.dashboard-card:before{content:"";background:radial-gradient(circle, var(--xh-primary-ultralight) 0%, transparent 70%);opacity:0;width:200%;height:200%;transition:opacity var(--xh-transition-base);position:absolute;top:-50%;right:-50%}.dashboard-card:hover{box-shadow:var(--xh-shadow-lg);transform:translateY(-4px)}.dashboard-card:hover:before{opacity:1}.stat-card{background-color:var(--xh-white);border-radius:var(--xh-radius-md);padding:var(--xh-space-lg);text-align:center;box-shadow:var(--xh-shadow-sm);transition:all var(--xh-transition-fast)}.stat-card:hover{box-shadow:var(--xh-shadow-md);transform:scale(1.02)}.stat-value{color:var(--xh-primary);margin:var(--xh-space-sm) 0;font-size:2.5rem;font-weight:700}.stat-label{color:var(--xh-neutral-600);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}.event-card{background:var(--xh-white);overflow:hidden;border-radius:var(--xh-radius-lg)!important;transition:all var(--xh-transition-base)!important;border:1px solid var(--xh-neutral-200)!important}.event-card:hover{transform:translateY(-2px);box-shadow:var(--xh-shadow-md)!important;border-color:var(--xh-primary-ultralight)!important}.event-card img{transition:transform var(--xh-transition-base)}.event-card:hover img{transform:scale(1.05)}.image-crop-dialog{--lumo-font-family:var(--xh-font-family);overflow:hidden;border-radius:var(--xh-radius-lg)!important}.image-crop-dialog::part(overlay){border-radius:var(--xh-radius-lg);box-shadow:var(--xh-shadow-xl)}.image-crop-dialog::part(content){flex-direction:column;padding:0;display:flex;overflow:hidden}.image-crop-dialog .dialog-header{background-color:var(--xh-white);flex-shrink:0}.image-crop-dialog .dialog-title{color:var(--xh-neutral-900)}.image-crop-dialog .cropper-container{background-color:var(--xh-neutral-100);justify-content:center;align-items:center;display:flex}.image-crop-dialog .cropper-container img{max-width:100%;max-height:100%;display:block}.image-crop-dialog .dialog-footer{background-color:var(--xh-white);flex-shrink:0}.cropper-container{-webkit-user-select:none;user-select:none;touch-action:none;direction:ltr;font-size:0;line-height:0;position:relative}.cropper-view-box,.cropper-face{border-radius:0}.cropper-view-box{outline:1px solid var(--xh-primary);outline-color:#2e86debf;width:100%;height:100%;display:block;overflow:hidden}.cropper-dashed{border-color:#ffffff80}.cropper-point{background-color:var(--xh-primary);opacity:1;width:10px;height:10px;box-shadow:0 0 0 2px var(--xh-white);border-radius:50%}.cropper-point.point-se{border-radius:50%;width:14px;height:14px}.cropper-line{background-color:var(--xh-primary);opacity:.5}.cropper-center{display:none}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEX////MzMxFNMxkAAAAEklEQVQI12P4/4HhPwYG4P///wEAwgwI/cMPkQAAAABJRU5ErkJggg==)}.cropper-modal{background-color:#0009}@media (width<=768px){.image-crop-dialog{border-radius:0!important;width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important}.image-crop-dialog::part(overlay){border-radius:0}.cropper-point{width:14px;height:14px}.cropper-point.point-se{width:18px;height:18px}}.usage-badge{align-items:center;gap:var(--xh-space-xs);padding:var(--xh-space-xs) var(--xh-space-md);border-radius:var(--xh-radius-full);font-size:var(--lumo-font-size-s);white-space:nowrap;font-weight:500;display:inline-flex}.usage-badge-ok{color:var(--xh-success);background-color:#51cf6626;border:1px solid #51cf664d}.usage-badge-warning{color:#e6a030;background-color:#ffb84d26;border:1px solid #ffb84d4d}.usage-badge-error{color:var(--xh-error);background-color:#ff6b6b26;border:1px solid #ff6b6b4d}.usage-badge-unlimited{color:var(--xh-primary);background-color:#2e86de26;border:1px solid #2e86de4d}@media (width<=500px){.usage-badge{display:none}}.schedule-view{min-height:100vh}.schedule-filters-sidebar{flex-shrink:0;width:300px;min-width:280px;max-width:320px}.shift-filter-component{width:100%;max-width:100%}.schedule-filter-toggle{display:none}.schedule-cards-container{gap:var(--xh-space-md);grid-template-columns:1fr;display:grid}.schedule-event-card{transition:transform var(--xh-transition-fast), box-shadow var(--xh-transition-fast), border-color var(--xh-transition-fast);border:1px solid #0000}.schedule-event-card:hover{box-shadow:var(--xh-shadow-lg);border-color:var(--xh-primary-light);transform:translateY(-2px)}.schedule-status-available{background-color:var(--lumo-success-color-10pct);color:var(--lumo-success-color)}.schedule-status-filling{background-color:var(--lumo-warning-color-10pct);color:var(--lumo-warning-text-color)}.schedule-status-full{background-color:var(--lumo-error-color-10pct);color:var(--lumo-error-color)}.schedule-skeleton{background:linear-gradient(90deg, var(--lumo-contrast-5pct) 25%, var(--lumo-contrast-10pct) 50%, var(--lumo-contrast-5pct) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite schedule-skeleton-loading}@keyframes schedule-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.schedule-filter-bar{margin-bottom:var(--lumo-space-m)}.filter-dropdown-button{background-color:#0000;justify-content:space-between;min-width:120px;transition:all .2s}.filter-dropdown-button:hover{background-color:var(--lumo-contrast-5pct);border-color:var(--lumo-contrast-30pct)}.filter-dropdown-button[active]{background-color:var(--lumo-primary-color-10pct);border-color:var(--lumo-primary-color)}.filter-dropdown-panel{animation:.2s ease-out filterDropdownSlideIn}@keyframes filterDropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.filter-dropdown-panel vaadin-checkbox-group{gap:var(--lumo-space-s);flex-wrap:wrap;display:flex}.filter-dropdown-panel vaadin-checkbox{margin:0}.schedule-filter-bar .availability-grid{gap:var(--lumo-space-xs);grid-template-columns:auto repeat(4,minmax(0,1fr));place-items:center;display:grid}.schedule-filter-bar .availability-grid .day-label{padding-right:var(--lumo-space-s);font-weight:500}.schedule-filter-bar .availability-grid .time-header{text-align:center;font-size:var(--lumo-font-size-xs);color:var(--lumo-secondary-text-color)}.event-details-hero{flex-wrap:wrap}.event-details-hero-image-container{flex-shrink:0}.event-details-hero-image{border-radius:var(--xh-radius-md);width:100%}.event-details-shift-row{transition:background-color var(--xh-transition-fast)}.event-details-shift-row:hover{background-color:var(--lumo-contrast-5pct)}@media (width<=1024px){.schedule-cards-container{grid-template-columns:1fr}}@media (width<=768px){.schedule-filters-sidebar{z-index:1000;height:100vh;transition:transform var(--xh-transition-base);box-shadow:var(--xh-shadow-xl);position:fixed;top:0;left:0;transform:translate(-100%)}.schedule-filters-sidebar.mobile-visible{transform:translate(0)}.schedule-filter-toggle{display:flex}.schedule-filter-bar{display:none}.schedule-filter-bar.mobile-expanded{z-index:1000;border-radius:var(--lumo-border-radius-l) var(--lumo-border-radius-l) 0 0;max-height:80vh;animation:.3s ease-out filterBarSlideUp;display:flex;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -4px 20px #00000026}@keyframes filterBarSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.schedule-filter-bar vaadin-horizontal-layout{flex-direction:column;width:100%}.filter-dropdown-button{width:100%;min-width:auto}.event-details-hero{flex-direction:column}.event-details-hero-image-container{max-width:100%;width:100%!important}.event-details-shift-row{gap:var(--xh-space-sm);flex-wrap:wrap}}@media (width<=640px){.schedule-event-card,.event-details-hero{padding:var(--xh-space-sm)!important}}.tox,.tox *,.tox-tinymce,.tox-tinymce *,.tox-tinymce-aux,.tox-tinymce-aux *{cursor:default}.tox-tinymce-aux{z-index:999999!important;pointer-events:auto!important;position:fixed!important}.tox-menu,.tox-collection,.tox-collection--list,.tox-collection--toolbar,.tox-swatches-menu,.tox-color-picker-container,.tox-insert-table-picker,.tox-tiered-menu,.tox-selected-menu,.tox-menu__grid{z-index:1000000!important;pointer-events:auto!important;cursor:default!important;-webkit-user-select:none!important;user-select:none!important}.tox-collection__item,.tox-collection__item-container,.tox-collection__item-label,.tox-collection__item-icon,.tox-collection__item-accessory,.tox-collection__item-caret,.tox-collection__item-checkmark,.tox-swatch,.tox-menu button,.tox-menu [role=menuitem],.tox-menu [role=option]{pointer-events:auto!important;cursor:pointer!important;-webkit-user-select:none!important;user-select:none!important}.tox-collection__item:hover,.tox-swatch:hover{cursor:pointer!important}.tox-dialog-wrap{z-index:1000001!important;pointer-events:auto!important}.tox-dialog-wrap__backdrop{z-index:1000000!important}.tox-dialog{z-index:1000002!important;pointer-events:auto!important}.tox-toolbar__group,.tox-tbtn,.tox-tbtn__select-chevron,.tox-tbtn__select-label,.tox-split-button,.tox-split-button__chevron{pointer-events:auto!important;cursor:pointer!important}.tox-tbtn *,.tox-collection__item *{pointer-events:none!important}.tox-tbtn,.tox-collection__item{pointer-events:auto!important}.flame-rating{align-items:center;gap:var(--xh-space-xs);padding:var(--xh-space-xs);display:inline-flex}.flame-rating.interactive{cursor:pointer}.flame-rating.read-only{cursor:default}.flame{width:24px;min-width:24px;height:24px;min-height:24px;transition:all var(--xh-transition-fast);justify-content:center;align-items:center;display:inline-flex;position:relative}.flame .flame-svg,.flame svg{width:100%;height:100%;transition:all var(--xh-transition-fast)}.flame-inactive .flame-svg,.flame-inactive svg,.flame.flame-inactive .flame-svg,.flame.flame-inactive svg,.flame-inactive path,.flame.flame-inactive path{fill:#0000;stroke:#ccc;stroke-width:1.5px}.flame-active .flame-svg,.flame-active svg,.flame.flame-active .flame-svg,.flame.flame-active svg{stroke:#ff4500;stroke-width:.5px;filter:drop-shadow(0 0 2px #ff450066)}.flame-active path,.flame.flame-active path{fill:url(#flame-gradient);stroke:#ff4500;stroke-width:.5px}.flame-active path{fill:#ff6b35}.flame-rating.interactive .flame:hover .flame-svg,.flame-rating.interactive .flame:hover svg,.flame-rating.interactive .flame.flame-hover .flame-svg,.flame-rating.interactive .flame.flame-hover svg{transform:scale(1.15)}.flame-rating.interactive .flame:hover path,.flame-rating.interactive .flame.flame-hover path{fill:#ff7043;stroke:#ff5722}.flame-rating.disabled,.flame-rating[disabled]{opacity:.5;pointer-events:none}.flame-rating.disabled .flame,.flame-rating[disabled] .flame{cursor:not-allowed}.flame-rating.small .flame{width:16px;min-width:16px;height:16px;min-height:16px}.flame-rating.medium .flame{width:24px;min-width:24px;height:24px;min-height:24px}.flame-rating.large .flame{width:32px;min-width:32px;height:32px;min-height:32px}@keyframes flamePulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.flame-rating.interactive .flame-active svg{animation:.3s ease-out flamePulse}@media (width<=640px){.flame-rating.interactive .flame{width:36px;min-width:36px;height:36px;min-height:36px;padding:var(--xh-space-xs)}.flame-rating.interactive.large .flame{width:44px;min-width:44px;height:44px;min-height:44px}}.flame-rating.interactive .flame:focus-visible{outline:3px solid var(--xh-primary);outline-offset:2px;border-radius:var(--xh-radius-sm)}.feedback-display{align-items:center;gap:var(--xh-space-sm);display:inline-flex}.feedback-display.compact .flame-rating .flame{width:16px;min-width:16px;height:16px;min-height:16px}.feedback-display.detailed .flame-rating .flame{width:20px;min-width:20px;height:20px;min-height:20px}.feedback-display .rating-count{font-size:var(--xh-text-sm);color:var(--xh-neutral-600)}.feedback-display .rating-average{color:var(--xh-neutral-800);margin-left:var(--xh-space-xs);font-weight:600}.feedback-status-badge{align-items:center;gap:var(--xh-space-xs);padding:var(--xh-space-xs) var(--xh-space-sm);border-radius:var(--xh-radius-full);font-size:var(--xh-text-xs);font-weight:500;display:inline-flex}.feedback-status-badge.editable{background-color:var(--lumo-warning-color-10pct);color:var(--lumo-warning-text-color)}.feedback-status-badge.locked{background-color:var(--lumo-contrast-10pct);color:var(--lumo-secondary-text-color)}.feedback-status-badge.unread{background-color:var(--lumo-error-color-10pct);color:var(--lumo-error-text-color)}.feedback-dialog .recipient-card{align-items:center;gap:var(--xh-space-md);padding:var(--xh-space-md);background-color:var(--xh-neutral-50);border-radius:var(--xh-radius-md);margin-bottom:var(--xh-space-lg);display:flex}.feedback-dialog .recipient-avatar{background-color:var(--lumo-primary-color-10pct);border-radius:50%;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;display:flex}.feedback-dialog .recipient-info{flex:1}.feedback-dialog .recipient-name{color:var(--xh-neutral-900);font-weight:600}.feedback-dialog .shift-info{font-size:var(--xh-text-sm);color:var(--xh-neutral-600)}.feedback-dialog .rating-section{text-align:center;margin:var(--xh-space-xl) 0}.feedback-dialog .rating-label{font-size:var(--xh-text-lg);color:var(--xh-neutral-800);margin-bottom:var(--xh-space-md);font-weight:500}.feedback-dialog .dialog-flame-rating{justify-content:center}.feedback-dialog .dialog-flame-rating .flame{width:40px;min-width:40px;height:40px;min-height:40px}.feedback-dialog .comment-section{margin-top:var(--xh-space-lg)}.feedback-dialog .comment-hint{font-size:var(--xh-text-xs);color:var(--xh-neutral-500);margin-top:var(--xh-space-xs)}.feedback-dialog .char-counter{text-align:right;font-size:var(--xh-text-xs);color:var(--xh-neutral-400)}.admin-form{width:100%;padding:var(--xh-space-md)}.form-section-header{align-items:center;gap:var(--xh-space-sm);padding:var(--xh-space-md) var(--xh-space-lg);margin-top:var(--xh-space-lg);margin-bottom:var(--xh-space-sm);background:linear-gradient(135deg, var(--xh-neutral-50) 0%, var(--xh-white) 100%);border:1px solid var(--xh-neutral-200);border-radius:var(--xh-radius-md);box-shadow:var(--xh-shadow-xs);transition:all var(--xh-transition-fast);display:flex}.form-section-header:first-child{margin-top:0}.form-section-header:hover{background:linear-gradient(135deg, var(--xh-primary-ultralight) 0%, var(--xh-neutral-50) 100%);border-color:var(--xh-primary-light);box-shadow:var(--xh-shadow-sm)}.form-section-header vaadin-icon{color:var(--xh-primary);flex-shrink:0;width:20px;height:20px}.form-section-header span{font-size:var(--xh-text-base);color:var(--xh-neutral-800);font-weight:600}.form-subsection-label{color:var(--xh-neutral-700);margin-top:var(--xh-space-md);margin-bottom:var(--xh-space-xs);font-weight:500;display:block}.form-helper-text{font-size:var(--xh-text-xs);color:var(--xh-neutral-500);margin-bottom:var(--xh-space-sm);line-height:var(--xh-leading-relaxed);display:block}.form-field-group{gap:var(--xh-space-md);flex-wrap:wrap;align-items:flex-end;display:flex}.modern-shift-form{--vaadin-form-layout-column-spacing:var(--xh-space-lg)}.modern-shift-form .form-section-header{position:relative}.modern-shift-form .form-section-header:after{content:"";bottom:-1px;left:var(--xh-space-lg);right:var(--xh-space-lg);background:linear-gradient(90deg, var(--xh-primary), transparent);opacity:0;height:2px;transition:opacity var(--xh-transition-fast);position:absolute}.modern-shift-form .form-section-header:hover:after{opacity:1}.modern-date-form{--vaadin-form-layout-column-spacing:var(--xh-space-lg)}.shift-dialog-seats-section,.shift-dialog-wage-section,.shift-dialog-time-section{gap:var(--xh-space-md);flex-wrap:wrap;align-items:baseline;display:flex}.shift-dialog-seats-section vaadin-integer-field,.shift-dialog-wage-section vaadin-number-field,.shift-dialog-time-section vaadin-time-picker{flex:1;min-width:120px}.date-dialog-excel-section,.date-dialog-excel-section vaadin-text-field{width:100%}.card-container{gap:0!important;padding:4px 0!important}.grid-toolbar{gap:8px}@media (width<=768px){.grid-toolbar{flex-wrap:wrap!important}.grid-toolbar vaadin-text-field{flex:100%!important;width:100%!important;min-width:0!important}}.admin-cards-grid{gap:var(--xh-space-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}@media (width<=1024px){.admin-form{padding:var(--xh-space-sm)}.form-section-header{padding:var(--xh-space-sm) var(--xh-space-md)}.modern-shift-form,.modern-date-form{--vaadin-form-layout-column-spacing:var(--xh-space-md)}}@media (width<=768px){.form-section-header{margin-top:var(--xh-space-md)}.shift-dialog-seats-section,.shift-dialog-wage-section,.shift-dialog-time-section{flex-direction:column;align-items:stretch}.shift-dialog-seats-section vaadin-integer-field,.shift-dialog-wage-section vaadin-number-field,.shift-dialog-time-section vaadin-time-picker{width:100%;min-width:auto}.admin-cards-grid{grid-template-columns:1fr}}@media (width<=640px){.admin-form{padding:var(--xh-space-xs)}.form-section-header{padding:var(--xh-space-sm);font-size:var(--xh-text-sm)}.form-section-header vaadin-icon{width:16px;height:16px}.admin-card{padding:12px}}.shift-badges-row,.shift-date-header{gap:var(--lumo-space-xs)!important;flex-wrap:wrap!important;align-items:center!important}.shift-badge,.shift-badges-row span[theme~=badge]{white-space:nowrap;font-size:var(--lumo-font-size-xs);flex-shrink:0}@media (width<=600px){.shift-badges-row{gap:.25rem!important}.shift-badges-row vaadin-native-label{flex-basis:100%;width:100%;margin-bottom:.15rem}.shift-badge,.shift-badges-row span[theme~=badge]{padding:.2rem .5rem;font-size:.7rem;line-height:1.2}.shift-badge vaadin-icon,.shift-badges-row span[theme~=badge] vaadin-icon{display:none}.shift-date-header{font-size:var(--lumo-font-size-s)!important;padding:.4rem .6rem!important}.shift-date-header vaadin-native-label{flex-basis:100%;width:100%;margin-bottom:.15rem}.shift-date-header>vaadin-icon{width:16px!important;height:16px!important}}@media (width<=768px){.hero-carousel{z-index:1!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:200px!important;max-height:280px!important;box-shadow:none!important;border-radius:0!important;margin:0 0 24px!important;display:block!important;position:relative!important;overflow:hidden!important}.hero-carousel-arrow{display:none!important}.hero-carousel-slides{scroll-snap-type:none!important;gap:0!important;height:160px!important;max-height:160px!important;padding:0!important;display:block!important;position:relative!important;overflow:hidden!important}.hero-carousel-slide{width:100%!important;height:100%!important;box-shadow:none!important;scroll-snap-align:unset!important;background:0 0!important;border-radius:0!important;flex:none!important;transition:opacity .5s ease-in-out!important;display:block!important;position:absolute!important;top:0!important;left:0!important}.hero-carousel-card-text{display:none!important}.hero-carousel-card-image{width:100%!important;height:100%!important}.hero-carousel-bottom-bar{background:#fff!important;padding:10px 16px!important;display:flex!important;position:relative!important}.hero-carousel-bottom-bar .hero-carousel-title{color:#1a1a1a!important;text-shadow:none!important;white-space:normal!important;text-overflow:unset!important;font-size:14px!important;font-weight:600!important;overflow:visible!important}.hero-carousel-bottom-bar .hero-carousel-subtitle{color:#666!important;text-shadow:none!important;-webkit-line-clamp:unset!important;font-size:12px!important;display:block!important}.hero-carousel+*,.hero-carousel~.event-carousel,.hero-carousel~.carousel-section{z-index:0!important;margin-top:0!important;position:relative!important}.mobile-schedule-view .event-carousel{z-index:0!important;clear:both!important;position:relative!important}.mobile-schedule-view{flex-direction:column!important;gap:0!important;display:flex!important}.mobile-schedule-view>*{flex-shrink:0!important}}
