.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-radius:var(--radius-medium);font-family:var(--font-family);font-weight:600;line-height:1.2;cursor:pointer;transition:background-color var(--transition-speed) ease,color var(--transition-speed) ease,border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease,transform var(--transition-speed) ease;position:relative;overflow:hidden;touch-action:manipulation}.ui-button__content{display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.ui-button:disabled{opacity:.65;cursor:not-allowed;box-shadow:none;transform:none}.ui-button:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}.ui-button--primary{background:var(--button-primary-gradient);color:var(--white);box-shadow:var(--button-primary-shadow)}.ui-button--primary:not(:disabled):hover{transform:translateY(-3px);box-shadow:var(--button-primary-shadow-hover);color:var(--white)}.ui-button--primary:not(:disabled):active{transform:translateY(-1px);color:var(--white)}.ui-button--secondary{background:var(--white);color:var(--button-secondary-text);border:2px solid var(--button-secondary-text)}.ui-button--secondary:not(:disabled):hover{background:var(--button-secondary-text);color:var(--white)}.ui-button--secondary:not(:disabled):active{background:var(--button-secondary-active);border-color:var(--button-secondary-active);color:var(--white)}.ui-button--danger{background:var(--danger-color);color:var(--white)}.ui-button--danger:not(:disabled):hover{background:var(--button-danger-hover);color:var(--white)}.ui-button--danger:not(:disabled):active{background:var(--button-danger-active);color:var(--white)}.ui-button--outline{background:transparent;border:1px solid var(--border-color);color:var(--button-outline-text);box-shadow:none}.ui-button--outline:not(:disabled):hover{background:var(--bg-color);border-color:var(--button-outline-text);color:var(--button-outline-text)}.ui-button--outline:not(:disabled):active{background:var(--button-outline-active);color:var(--button-outline-text)}.ui-button--ghost{background:transparent;color:var(--button-outline-text);box-shadow:none}.ui-button--ghost:not(:disabled):hover{background:#0000000f;color:var(--button-outline-text)}.ui-button--ghost:not(:disabled):active{background:#0000001a;color:var(--button-outline-text)}.ui-button--small{padding:6px 14px;min-height:44px;font-size:.85rem}.ui-button--medium{padding:var(--button-padding-y) var(--button-padding-x);min-height:var(--form-control-min-height);font-size:var(--button-font-size)}.ui-button--large{padding:12px 24px;min-height:48px;font-size:1.05rem}.ui-button__spinner{width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:button-spin .75s linear infinite}@keyframes button-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ui-button,.ui-button__spinner{transition:none;animation:none}}.navbar{background:var(--gradient-primary);padding:.5rem 1rem;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1000;animation:slideInDown var(--transition-speed) ease;box-shadow:var(--shadow-light)}.navbar__logo{display:flex;justify-content:center;align-items:center}.navbar__logo span{margin-left:12px}.navbar__logo a{font-size:1.6rem;font-weight:600;color:var(--white);text-decoration:none;text-align:center}.navbar__logo a:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset);border-radius:var(--radius-small)}.navbar__icon{width:45px;height:45px;padding-top:0;cursor:pointer;transition:transform var(--transition-speed) ease;object-fit:contain;display:block}.navbar__toggle{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;font-size:1.8rem;cursor:pointer;color:var(--white)!important;background:#2d8ca740;border:none;border-radius:var(--radius-large);transition:transform var(--transition-speed) ease,background var(--transition-speed) ease}.navbar__toggle:hover{color:var(--white)!important;background:var(--flip-card-back-bg)!important;transform:scale(1.05)}.navbar__toggle:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset);background:var(--flip-card-back-bg)!important;color:var(--white)!important}.navbar__menu{display:flex;list-style:none;gap:1.5rem;align-items:center;margin:0;padding:0}.navbar__item{display:flex;align-items:center}.navbar__link{color:var(--white);text-decoration:none;font-weight:600;transition:color var(--transition-speed);position:relative;border-radius:var(--radius-small)}.navbar__link:after{content:"";position:absolute;bottom:-2px;left:0;width:0%;height:2px;background-color:#ffffffb3;transition:width var(--transition-speed) ease}.navbar__link:hover:after{width:100%}.navbar__link:hover{color:#ffffffd9}.navbar__link--admin{font-size:.8rem;opacity:.8;letter-spacing:.04em;text-transform:uppercase}.navbar__cta{display:inline-flex;align-items:center;padding:8px 18px;min-height:44px;background:var(--white);color:var(--primary-color-dark)!important;font-weight:700;font-size:.9rem;border-radius:var(--radius-round);text-decoration:none;box-shadow:0 2px 8px #00000026;transition:background var(--transition-speed) ease,box-shadow var(--transition-speed) ease,transform var(--transition-speed) ease;white-space:nowrap}.navbar__cta:hover{background:var(--bg-tertiary);box-shadow:0 4px 14px #0003;transform:translateY(-1px)}.navbar__cta:focus-visible{outline:2px solid var(--white);outline-offset:3px}.navbar__link:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}.navbar__button{background:none;border:none;cursor:pointer;font:inherit;padding:0;transition:color var(--transition-speed)}.navbar__button:hover{color:var(--flip-card-back-color)}.navbar__logout-btn{white-space:nowrap}@media(max-width:1024px){.navbar{height:63px}:root{--navbar-height: 63px}.navbar__toggle{display:inline-flex;padding-top:0}.navbar__menu{position:absolute;top:60px;right:.6rem;background-color:var(--white);width:min(280px,calc(100vw - 1.2rem));flex-direction:column;align-items:stretch;gap:.2rem;padding:.8rem;border:1px solid rgba(34,182,135,.25);border-radius:14px;box-shadow:var(--shadow-light);opacity:0;visibility:hidden;transform:translateY(-12px);transition:transform var(--transition-speed) ease,opacity var(--transition-speed) ease;animation:none;max-height:calc(100vh - 70px);overflow-y:auto}.navbar__link{color:var(--text-color);display:block;width:100%;padding:.55rem .6rem}.navbar__link:after{display:none}.navbar__link:hover{color:var(--primary-color-dark);background:#22b6871a}.navbar__item--cta{order:-1;padding-bottom:.4rem;border-bottom:1px solid var(--border-color-light);margin-bottom:.4rem}.navbar__cta{width:100%;justify-content:center;border-radius:var(--radius-md);background:var(--primary-color);color:var(--white)!important}.navbar__cta:hover{background:var(--primary-color-dark)}.navbar__menu.active{opacity:1;visibility:visible;transform:translateY(0)}.navbar__item{margin-bottom:0;width:100%}.navbar__logout-btn{width:100%;justify-content:center}}@media(min-width:1024px){.navbar{padding:1rem 2rem}.navbar__menu{position:static;opacity:1;visibility:visible;transform:none;gap:1.5rem;padding:0;border:none;box-shadow:none}}.toast{position:fixed;z-index:10000;min-width:320px;max-width:500px;background:var(--white);border-radius:var(--radius-md);box-shadow:0 4px 20px #00000026;border:1px solid var(--form-disabled-bg);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.toast--top-right{top:20px;right:20px}.toast--top-left{top:20px;left:20px}.toast--top-center{top:20px;left:50%;transform:translate(-50%)}.toast--bottom-right{bottom:20px;right:20px}.toast--bottom-left{bottom:20px;left:20px}.toast--bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.toast--entering{animation:toastSlideIn .3s cubic-bezier(.4,0,.2,1)}.toast--leaving{animation:toastSlideOut .3s cubic-bezier(.4,0,.2,1)}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast--top-left.toast--entering,.toast--bottom-left.toast--entering{animation:toastSlideInLeft .3s cubic-bezier(.4,0,.2,1)}.toast--top-left.toast--leaving,.toast--bottom-left.toast--leaving{animation:toastSlideOutLeft .3s cubic-bezier(.4,0,.2,1)}@keyframes toastSlideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOutLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:0}}.toast--top-center.toast--entering,.toast--bottom-center.toast--entering{animation:toastFadeIn .3s cubic-bezier(.4,0,.2,1)}.toast--top-center.toast--leaving,.toast--bottom-center.toast--leaving{animation:toastFadeOut .3s cubic-bezier(.4,0,.2,1)}@keyframes toastFadeIn{0%{transform:translate(-50%) translateY(-20px);opacity:0;scale:.95}to{transform:translate(-50%) translateY(0);opacity:1;scale:1}}@keyframes toastFadeOut{0%{transform:translate(-50%) translateY(0);opacity:1;scale:1}to{transform:translate(-50%) translateY(-20px);opacity:0;scale:.95}}.toast-content{display:flex;align-items:flex-start;padding:16px;gap:12px}.toast-icon{font-size:20px;flex-shrink:0;margin-top:1px}.toast-message{flex:1;font-size:14px;line-height:1.4;color:var(--text-gray-medium);word-wrap:break-word}.toast-action{flex-shrink:0}.toast-close{background:none;border:none;font-size:18px;color:var(--form-disabled-text);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;flex-shrink:0}.toast-close:hover{background:#0000001a;color:var(--text-gray-medium)}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:linear-gradient(90deg,var(--color-blue),var(--success-green));animation:toastProgress linear;transform-origin:left}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast--success{border-left:4px solid var(--success-green)}.toast--success .toast-progress{background:var(--success-green)}.toast--error{border-left:4px solid var(--danger-color)}.toast--error .toast-progress{background:var(--danger-color)}.toast--warning{border-left:4px solid var(--warning-color)}.toast--warning .toast-progress{background:var(--warning-color)}.toast--info{border-left:4px solid var(--color-blue)}.toast--info .toast-progress{background:var(--color-blue)}.toast--loading{border-left:4px solid var(--form-disabled-text)}.toast--loading .toast-progress{background:var(--form-disabled-text)}.toast--loading .toast-icon{animation:spin 1s linear infinite}@media(max-width:768px){.toast{min-width:280px;max-width:calc(100vw - 40px);margin:0 20px}.toast--top-right,.toast--bottom-right{right:20px;left:20px;transform:none}.toast--top-left,.toast--bottom-left,.toast--top-center,.toast--bottom-center{left:20px;right:20px;transform:none}.toast-content{padding:12px;gap:8px}.toast-message{font-size:13px}.toast-icon{font-size:18px}}.toast-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10000}.toast-stack{position:absolute;display:flex;flex-direction:column;gap:8px;pointer-events:auto}.toast-stack--top-right{top:20px;right:20px}.toast-stack--top-left{top:20px;left:20px}.toast-stack--top-center{top:20px;left:50%;transform:translate(-50%)}.toast-stack--bottom-right{bottom:20px;right:20px;flex-direction:column-reverse}.toast-stack--bottom-left{bottom:20px;left:20px;flex-direction:column-reverse}.toast-stack--bottom-center{bottom:20px;left:50%;transform:translate(-50%);flex-direction:column-reverse}@media(max-width:768px){.toast-stack{max-width:calc(100vw - 40px)}.toast-stack--top-right,.toast-stack--bottom-right{right:20px;left:20px}.toast-stack--top-left,.toast-stack--bottom-left{left:20px;right:20px}.toast-stack--top-center,.toast-stack--bottom-center{left:20px;right:20px;transform:none}}.status-toggle-wrapper{position:sticky;top:0;z-index:100;width:100%;padding:var(--spacing-sm) var(--spacing-xs);display:flex;justify-content:center;gap:var(--spacing-sm);background:var(--white);border-radius:var(--radius-medium);box-shadow:var(--shadow-light)}.status-toggle-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:0 var(--spacing-md);border:2px solid transparent;border-radius:var(--radius-medium);background:transparent;color:var(--text-color-light);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;white-space:nowrap;line-height:1}.status-toggle-btn:hover:not(:disabled){background:var(--bg-color);color:var(--text-color)}.status-toggle-btn:focus-visible{outline:2px solid rgba(34,182,135,.5);outline-offset:2px}.status-toggle-btn.active{background:var(--primary-color);color:var(--white);border-color:var(--primary-color);cursor:default}.status-toggle-btn:disabled{opacity:.6;cursor:not-allowed}.status-toggle-icon{font-size:1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.status-toggle-label{font-weight:600;line-height:1}@media(max-width:768px){.status-toggle-wrapper{padding:var(--spacing-sm) 3px;gap:var(--spacing-xs)}.status-toggle-btn{padding:0 12px;font-size:.85rem}.status-toggle-icon{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.status-toggle-btn{transition:none}}.pwa-install{position:fixed;left:16px;bottom:16px;z-index:1500;width:calc(100% - 32px);max-width:520px;pointer-events:none}.pwa-install-card{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:16px;background:#ffffffeb;border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 40px #0f172a2e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translate(0);opacity:1;will-change:transform,opacity;transition:transform .26s ease,opacity .26s ease}.pwa-install-card.is-closed{transform:translate(-110%);opacity:0;pointer-events:none}.pwa-install-card.is-open{transform:translate(0);opacity:1;pointer-events:auto}.pwa-install-text{display:flex;flex-direction:column;line-height:1.1}.pwa-install-text strong{font-size:.95rem;color:var(--text-slate-900)}.pwa-install-text span{margin-top:4px;font-size:.82rem;color:var(--text-slate-700)}.pwa-install-button{border:none;border-radius:var(--radius-pill);padding:10px 14px;min-height:40px;font-weight:800;color:var(--white);cursor:pointer;background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-color-dark) 100%);box-shadow:0 10px 22px #22b68738;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.pwa-install-button:hover{transform:translateY(-1px);box-shadow:0 14px 26px #22b68747;filter:saturate(1.05)}.pwa-install-button:active{transform:translateY(0)}.pwa-install-handle{position:fixed;left:0;bottom:16px;z-index:1501;pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;padding:0;height:70px;width:34px;border:1px solid rgba(15,23,42,.12);border-left:none;border-radius:0 999px 999px 0;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 40px #0f172a29;color:var(--text-slate-900);cursor:pointer;transition:transform .26s ease,opacity .26s ease}.pwa-install-handle.is-hidden{opacity:0;transform:translate(-10px);pointer-events:none}.pwa-install-handle.is-visible{opacity:1;transform:translate(0);pointer-events:auto}.pwa-install-handle-icon{display:block;font-size:22px;font-weight:800;line-height:0;padding-bottom:3px;transform:translate(1px)}@media(max-width:480px){.pwa-install{left:12px;bottom:12px;width:calc(100% - 24px)}.pwa-install-card{padding:11px 12px}.pwa-install-button{padding:10px 12px;min-height:40px}.pwa-install-handle{bottom:12px;height:60px;width:46px}.pwa-install-handle-icon{transform:translate(3px,-2px)}}@media(prefers-reduced-motion:reduce){.pwa-install-card,.pwa-install-handle{transition:none}}.footer{background:linear-gradient(180deg,#0f1f2e,#0a1621);color:#ffffffd9;font-size:var(--font-size-sm);line-height:1.5;margin-top:auto}.footer__trust-bar{background:linear-gradient(90deg,var(--primary-color) 0%,#0e7c5f 50%,var(--primary-color-dark) 100%);padding:14px 24px}.footer__trust-inner{display:flex;justify-content:center;align-items:center;gap:32px;max-width:1200px;margin:0 auto;flex-wrap:wrap}.footer__trust-item{display:inline-flex;align-items:center;gap:8px;color:var(--white);font-size:.88rem;font-weight:600;white-space:nowrap}.footer__trust-item svg{flex-shrink:0;opacity:.9}.footer__main{border-bottom:1px solid rgba(255,255,255,.06)}.footer__inner{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:40px;max-width:1200px;margin:0 auto;padding:48px 24px 40px}.footer__brand{display:flex;flex-direction:column;gap:16px}.footer__logo-link{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--white);transition:opacity var(--transition-speed) ease}.footer__logo-link:hover{opacity:.85;color:var(--white)}.footer__logo-link:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset);border-radius:var(--radius-small)}.footer__logo-img{display:block}.footer__logo-text{font-size:1.4rem;font-weight:700;letter-spacing:-.01em}.footer__tagline{color:#ffffff8c;font-size:.88rem;line-height:1.65;max-width:280px;margin:0}.footer__social{display:flex;gap:10px;margin-top:4px}.footer__social-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#ffffff14;color:#ffffffb3;transition:background var(--transition-speed) ease,color var(--transition-speed) ease,transform var(--transition-speed) ease}.footer__social-link:hover{background:var(--primary-color);color:var(--white);transform:translateY(-2px)}.footer__social-link:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.footer__nav-col{display:flex;flex-direction:column;gap:12px}.footer__nav-title{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#ffffff73;margin:0 0 4px;text-align:left}.footer__nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}.footer__nav-link{color:#ffffffb3;text-decoration:none;font-size:.86rem;transition:color var(--transition-speed) ease,padding-left var(--transition-speed) ease;display:inline-block;padding:1px 0}.footer__nav-link:hover{color:var(--white);padding-left:4px}.footer__nav-link:focus-visible{outline:var(--button-focus-ring);outline-offset:2px;border-radius:var(--radius-small)}.footer__bottom{border-top:1px solid rgba(255,255,255,.06);max-width:1200px;margin:0 auto;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.footer__copyright{margin:0;color:#fff6;font-size:.8rem}.footer__legal{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.footer__legal-link{color:#ffffff80;text-decoration:none;font-size:.8rem;transition:color var(--transition-speed) ease}.footer__legal-link:hover{color:#ffffffd9}.footer__legal-link:focus-visible{outline:var(--button-focus-ring);outline-offset:2px;border-radius:var(--radius-small)}.footer__legal-sep{color:#fff3;font-size:.75rem}@media(max-width:1024px){.footer__inner{grid-template-columns:1.3fr repeat(2,1fr);gap:32px;padding:36px 20px 32px}.footer__brand{grid-column:1 / -1}.footer__tagline{max-width:100%}}@media(max-width:640px){.footer__trust-inner{flex-direction:column;gap:10px;align-items:flex-start;padding:0 4px}.footer__inner{grid-template-columns:1fr 1fr;gap:28px;padding:32px 16px 28px}.footer__brand{grid-column:1 / -1;align-items:center;text-align:center}.footer__tagline{text-align:center}.footer__social{justify-content:center}.footer__nav-title{text-align:center}.footer__nav-list{align-items:center}.footer__bottom{flex-direction:column;align-items:center;text-align:center;padding:16px}}@media(max-width:380px){.footer__inner{grid-template-columns:1fr}}.cookie-banner-overlay{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:linear-gradient(to top,rgba(15,23,42,.14),transparent);pointer-events:none;animation:slideIn var(--transition-speed) ease-out}@keyframes slideIn{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-banner{background:var(--white);border-top:1px solid var(--border-color-light);box-shadow:var(--shadow-heavy);padding:var(--card-padding);max-width:100%;margin:0 auto;pointer-events:all;border-radius:var(--radius-large) var(--radius-large) 0 0;transition:box-shadow var(--transition-speed) ease,border-color var(--transition-speed) ease}.cookie-banner--detailed{position:fixed;bottom:0;left:50%;transform:translate(-50%);max-width:900px;width:90%;max-height:80vh;overflow-y:auto;border-radius:var(--radius-large);margin-bottom:var(--card-padding);border:1px solid var(--border-color-light)}.cookie-banner__header{text-align:center;margin-bottom:var(--spacing-md)}.cookie-banner__header h3{margin:0 0 var(--spacing-xs) 0;color:var(--text-color);font-size:var(--font-size-lg);font-weight:600}.cookie-banner__subtitle{margin:0;color:var(--text-color-light);font-size:var(--font-size-sm);font-weight:500}.cookie-banner__content{text-align:center;margin-bottom:var(--card-padding)}.cookie-banner__content p{margin:0 0 var(--form-control-padding-y) 0;color:var(--text-color);line-height:1.5;font-size:var(--font-size-sm)}.cookie-banner__legal{font-size:var(--font-size-sm);color:var(--text-color-light);line-height:1.5}.cookie-banner__legal a{color:var(--link-color);text-decoration:none}.cookie-banner__legal a:hover{text-decoration:underline}.cookie-banner__details{margin-bottom:var(--card-padding)}.cookie-types{display:flex;flex-direction:column;gap:var(--spacing-md)}.cookie-type{border:1px solid var(--border-color-light);border-radius:var(--radius-large);padding:var(--spacing-md);background:var(--input-bg)}.cookie-type__header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--form-control-padding-y)}.cookie-type__info h4{margin:0;color:var(--text-color);font-size:var(--font-size-base);font-weight:600}.cookie-type__required{display:inline-block;background:var(--warning-color);color:#000;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-large);font-size:14px;font-weight:600;text-transform:uppercase;margin-top:var(--spacing-xs)}.cookie-type__description{margin:0 0 var(--spacing-sm) 0;color:var(--text-color-light);font-size:var(--font-size-sm);line-height:1.5}.cookie-type__examples{margin:0;color:var(--text-color-light);font-size:var(--font-size-sm);font-style:italic}.cookie-toggle{position:relative;display:inline-block;width:50px;height:24px;cursor:pointer}.cookie-toggle--disabled{cursor:not-allowed;opacity:.6}.cookie-toggle input{opacity:0;width:0;height:0}.cookie-toggle__slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:background-color var(--transition-speed) ease;border-radius:24px}.cookie-toggle__slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--white);transition:transform var(--transition-speed) ease;border-radius:50%;box-shadow:var(--shadow-light)}.cookie-toggle input:checked+.cookie-toggle__slider{background-color:var(--primary-color)}.cookie-toggle input:checked+.cookie-toggle__slider:before{transform:translate(26px)}.cookie-toggle--disabled .cookie-toggle__slider{background-color:var(--warning-color)}.cookie-banner__actions{display:flex;justify-content:center;gap:var(--form-control-padding-y);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.cookie-btn{padding:var(--form-control-padding-y) var(--card-padding);border:1px solid transparent;border-radius:var(--radius-medium);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:background-color var(--transition-speed) ease,border-color var(--transition-speed) ease;min-width:120px}@media(prefers-reduced-motion:no-preference){.cookie-btn{transition:background-color var(--transition-speed) ease,border-color var(--transition-speed) ease,transform var(--transition-speed) ease}.cookie-btn--primary:hover:not(:disabled),.cookie-btn--secondary:hover:not(:disabled),.cookie-btn--tertiary:hover:not(:disabled){transform:translateY(-1px)}}.cookie-btn:disabled{opacity:.6;cursor:not-allowed}.cookie-btn--primary{background:var(--gradient-primary);color:var(--white);border-color:transparent}.cookie-btn--primary:hover:not(:disabled){opacity:.88}.cookie-btn--secondary{background:transparent;color:var(--text-color);border:1.5px solid var(--border-color)}.cookie-btn--secondary:hover:not(:disabled){border-color:var(--text-color-light);background:var(--input-bg)}.cookie-btn--tertiary{background:var(--text-color-light);color:var(--white)}.cookie-btn--tertiary:hover:not(:disabled){background:var(--text-color)}.cookie-banner__footer{text-align:center;border-top:1px solid var(--border-color-light);padding-top:var(--spacing-md)}.cookie-banner__footer p{margin:0;color:var(--text-color-light);font-size:var(--font-size-sm);line-height:1.5}.cookie-banner__footer a{color:var(--link-color);text-decoration:none}.cookie-banner__footer a:hover{text-decoration:underline}.cookie-banner__legal a:focus-visible,.cookie-banner__footer a:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset);border-radius:var(--radius-small)}.cookie-btn:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}@media(max-width:768px){.cookie-banner{padding:var(--spacing-md);border-radius:0}.cookie-banner--detailed{width:95%;margin-bottom:var(--form-control-padding-y);max-height:85vh}.cookie-banner__actions{flex-direction:column;align-items:stretch}.cookie-btn{width:100%;margin-bottom:var(--spacing-sm)}.cookie-type__header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.cookie-type{padding:var(--spacing-md)}}@media(max-width:480px){.cookie-banner__header h3{font-size:var(--font-size-base)}.cookie-banner__content p{font-size:var(--font-size-sm)}.cookie-toggle{width:45px;height:22px}.cookie-toggle__slider:before{height:16px;width:16px;left:3px;bottom:3px}.cookie-toggle input:checked+.cookie-toggle__slider:before{transform:translate(23px)}}.cookie-banner__details{animation:fadeIn var(--transition-speed) ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cookie-toggle:focus-within .cookie-toggle__slider{box-shadow:0 0 0 2px var(--link-color)}@media print{.cookie-banner-overlay{display:none}}@media(prefers-reduced-motion:reduce){.cookie-banner-overlay,.cookie-banner__details{animation:none}.cookie-banner,.cookie-toggle__slider,.cookie-toggle__slider:before,.cookie-btn{transition:none}}.progress-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000040;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9999;pointer-events:auto;transition:opacity .3s ease,backdrop-filter .3s ease}.progress-overlay--passive{pointer-events:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.progress-overlay--inline{position:relative;inset:auto;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;padding:10px}.progress-overlay--inline .progress-card{width:100%;max-width:520px}.progress-card--compact{width:min(360px,92vw);padding:14px 14px 12px;border-radius:var(--radius-large);gap:10px}.progress-card--minimal{width:100%;max-width:140px;padding:0;border:none;border-radius:var(--radius-md);box-shadow:none;background:transparent;gap:0}.progress-card{width:min(520px,92vw);background:var(--white);border-radius:16px;box-shadow:0 15px 45px #00000026;padding:22px 22px 18px;display:flex;flex-direction:column;gap:12px;border:1px solid #e8ecf2}.progress-title{text-align:center;font-weight:700;color:var(--text-slate-700);font-size:1.05rem}.progress-bar-outer{width:100%;height:14px;background:var(--accent-blue-bg);border-radius:var(--radius-pill);overflow:hidden;border:1px solid var(--border-color-input)}.progress-bar-inner{height:100%;background:linear-gradient(90deg,var(--link-color) 0%,var(--link-hover-color) 60%,var(--primary-color) 100%);border-radius:var(--radius-pill);box-shadow:inset 0 0 8px #ffffff59;width:100%;transform-origin:left center;transform:scaleX(var(--p, 0));transition:transform .2s ease}.progress-bar-inner--indeterminate{transform:none;background-size:200% 100%;animation:progressIndeterminate 1.15s linear infinite}@keyframes progressIndeterminate{0%{background-position:0% 0%}to{background-position:-200% 0%}}.progress-percent{text-align:right;font-weight:700;color:var(--text-slate-900);letter-spacing:.2px;font-size:.95rem}@media(max-width:480px){.progress-card{padding:18px 16px 14px;border-radius:var(--radius-large);gap:10px}.progress-bar-outer{height:12px}}.geolocation-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.geolocation-popup{background:var(--white);border-radius:var(--modal-radius);border:var(--modal-border);box-shadow:var(--modal-shadow);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out;position:relative}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.geolocation-popup__header{position:relative;text-align:center;padding:24px 30px 20px;background:var(--modal-header-bg)!important;border-bottom:none;border-radius:var(--modal-radius) var(--modal-radius) 0 0}.geolocation-popup__close{position:absolute;top:14px;right:18px;background:var(--modal-close-bg);border:none;color:var(--modal-header-color)!important;width:var(--modal-close-size);height:var(--modal-close-size);min-width:var(--modal-close-size);min-height:var(--modal-close-size);border-radius:var(--modal-close-radius);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--modal-close-font-size);line-height:1;transition:var(--modal-close-transition)}.geolocation-popup__close:hover{background:var(--modal-close-bg-hover);color:var(--modal-header-color)!important}.geolocation-popup__close:focus-visible{outline:2px solid var(--white);outline-offset:2px;box-shadow:var(--modal-close-focus-shadow)}.geolocation-popup__icon{font-size:3rem;margin-bottom:15px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.geolocation-popup__header h3{margin:0 0 10px;color:var(--white)!important;font-size:1.5rem;font-weight:600}.geolocation-popup__subtitle{margin:0;color:#ffffffd9;font-size:14px;font-weight:500}.geolocation-popup__main-purpose{padding:20px 30px}.purpose-card{display:flex;align-items:center;gap:15px;padding:20px;border-radius:var(--radius-large);border:2px solid var(--form-disabled-bg);background:var(--bg-color);transition:all var(--transition-speed) ease}.purpose-card--primary{border-color:var(--color-blue);background:linear-gradient(45deg,var(--admin-bg-panel),var(--white));box-shadow:0 4px 12px #007bff1a}.purpose-icon{font-size:2rem;flex-shrink:0}.purpose-content h4{margin:0 0 8px;color:var(--text-heading);font-size:1.1rem;font-weight:600}.purpose-content p{margin:0 0 10px;color:var(--text-gray-medium);font-size:14px;line-height:1.4}.purpose-badge{display:inline-block;background:var(--color-blue);color:var(--white);padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase}.geolocation-popup__summary{padding:0 30px 20px}.info-box{background:linear-gradient(45deg,#f0fff4,#f8fff9);border:1px solid var(--form-success-bg);border-radius:var(--radius-md);padding:20px;margin-bottom:20px}.info-box h4{margin:0 0 15px;color:var(--form-success-text);font-size:1rem;font-weight:600}.info-box ul{margin:0;padding-left:20px;color:var(--form-success-text)}.info-box li{margin-bottom:8px;font-size:14px;line-height:1.4}.geolocation-popup__show-details,.geolocation-popup__hide-details{width:100%;padding:12px;background:var(--bg-color);border:1px solid var(--border-color-neutral);border-radius:var(--radius-medium);color:var(--text-gray-medium);font-size:14px;cursor:pointer;transition:all var(--transition-speed) ease}.geolocation-popup__show-details:hover,.geolocation-popup__hide-details:hover{background:var(--form-disabled-bg);border-color:var(--border-color)}.geolocation-popup__details{padding:0 30px 20px;animation:fadeIn .3s ease-out}.geolocation-popup__details h4{margin:0 0 10px;color:var(--text-heading);font-size:1.1rem;font-weight:600}.details-description{margin:0 0 20px;color:var(--form-disabled-text);font-size:14px;line-height:1.4}.purposes-list{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.purpose-item{display:flex;align-items:flex-start;gap:15px;padding:15px;border:1px solid var(--form-disabled-bg);border-radius:var(--radius-md);background:var(--white)}.purpose-info{flex:1}.purpose-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.purpose-title{font-weight:600;color:var(--text-heading);font-size:14px}.purpose-required{background:var(--warning-color);color:#000;padding:2px 8px;border-radius:var(--radius-large);font-size:12px;font-weight:600;text-transform:uppercase}.purpose-description{margin:0;color:var(--form-disabled-text);font-size:13px;line-height:1.4}.purpose-toggle{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer;flex-shrink:0;margin-top:2px}.purpose-toggle--required{cursor:not-allowed;opacity:.7}.purpose-toggle input{opacity:0;width:0;height:0}.purpose-toggle__slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:var(--transition-speed);border-radius:24px}.purpose-toggle__slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--white);transition:var(--transition-speed);border-radius:50%;box-shadow:0 2px 4px #0003}.purpose-toggle input:checked+.purpose-toggle__slider{background-color:var(--color-blue)}.purpose-toggle input:checked+.purpose-toggle__slider:before{transform:translate(20px)}.purpose-toggle--required .purpose-toggle__slider{background-color:var(--warning-color)}.geolocation-popup__technical{padding:0 30px 20px}.technical-info{background:var(--bg-color);border:1px solid var(--form-disabled-bg);border-radius:var(--radius-md);padding:15px}.technical-info h5{margin:0 0 15px;color:var(--text-gray-medium);font-size:14px;font-weight:600}.technical-grid{display:grid;grid-template-columns:1fr;gap:8px}.technical-item{display:flex;justify-content:space-between;align-items:center;font-size:13px}.technical-item span{color:var(--form-disabled-text)}.technical-item strong{font-weight:600}.status-ok{color:var(--success-green)}.status-warning{color:var(--warning-color)}.status-error{color:var(--danger-color)}.status-granted{color:var(--success-green)}.status-denied{color:var(--danger-color)}.status-prompt{color:var(--form-disabled-text)}.geolocation-popup__actions{display:flex;gap:15px;padding:20px 30px;border-top:1px solid var(--bg-secondary)}.geolocation-btn{flex:1;padding:12px 20px;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-speed) ease;text-align:center}.geolocation-btn:disabled{opacity:.6;cursor:not-allowed}.geolocation-btn--primary{background:var(--color-blue);color:var(--white)}.geolocation-btn--primary:hover:not(:disabled){background:var(--color-blue-hover)}.geolocation-btn--secondary{background:var(--form-disabled-text);color:var(--white)}.geolocation-btn--secondary:hover:not(:disabled){background:var(--text-color-muted)}.geolocation-popup__footer{padding:15px 30px 30px;text-align:center;border-top:1px solid var(--bg-secondary)}.geolocation-popup__footer p{margin:0;color:var(--form-disabled-text);font-size:12px;line-height:1.4}.geolocation-popup__footer a{color:var(--color-blue);text-decoration:none}.geolocation-popup__footer a:hover{text-decoration:underline}@media(max-width:768px){.geolocation-popup-overlay{padding:10px}.geolocation-popup{border-radius:var(--modal-radius)}.geolocation-popup__header{padding:20px 20px 15px}.geolocation-popup__main-purpose,.geolocation-popup__summary,.geolocation-popup__details,.geolocation-popup__technical{padding-left:20px;padding-right:20px}.geolocation-popup__actions{padding:15px 20px;flex-direction:column}.geolocation-popup__footer{padding:10px 20px 20px}.purpose-card{flex-direction:column;text-align:center;gap:10px}.purpose-item{flex-direction:column;align-items:center;text-align:center;gap:10px}.purpose-header{justify-content:center}}@media(max-width:480px){.geolocation-popup__icon{font-size:2.5rem}.geolocation-popup__header h3{font-size:1.3rem}.purpose-icon{font-size:1.5rem}.technical-grid{grid-template-columns:1fr}.technical-item{flex-direction:column;align-items:flex-start;gap:4px}}@media print{.geolocation-popup-overlay{display:none}}.message-toast{display:flex;align-items:center;gap:12px;width:100%}.message-toast-avatar{flex-shrink:0;width:40px;height:40px}.message-toast-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.message-toast-avatar .avatar-fallback{width:100%;height:100%;border-radius:50%;background:var(--button-primary-gradient);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem}.message-toast-content{flex:1;min-width:0}.message-toast-header{font-size:.9rem;margin-bottom:2px;font-weight:700;color:var(--text-color-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-toast-body{font-size:.85rem;color:var(--text-color-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prestation-toast{display:flex;align-items:center;gap:12px;width:100%}.prestation-toast-avatar{flex-shrink:0;width:40px;height:40px}.prestation-toast-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--bg-secondary)}.prestation-toast-content{flex:1;min-width:0}.prestation-toast-header{display:flex;align-items:center;gap:8px;margin-bottom:2px;min-width:0}.prestation-toast-title{font-size:.9rem;font-weight:700;color:var(--text-color-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.prestation-toast-badge{flex-shrink:0;font-size:var(--font-size-sm);font-weight:700;padding:2px 8px;border-radius:var(--radius-pill);background:#22b6871f;color:#168f6b;border:1px solid rgba(34,182,135,.25);max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prestation-toast-body{font-size:.85rem;color:var(--text-color-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-dropdown-container{position:relative;display:inline-block}.notification-bell-button{width:40px;height:40px;min-width:40px;min-height:40px;background:transparent;border:none;cursor:pointer;padding:0;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:-3px 3px 8px #00000059;transition:box-shadow .2s ease,color var(--transition-speed) ease}.notification-bell-button:hover{box-shadow:-4px 4px 12px #0006}.notification-bell-button .icon.placeholder-icon{font-size:22px;color:var(--text-color)}.notification-bell-button:hover .icon.placeholder-icon{color:var(--color-blue)}.notification-badge{position:absolute;top:0;right:0;background-color:var(--danger-color);border:1.5px solid var(--white);animation:notificationPulse 2s infinite}.notification-badge-count{min-width:18px;height:18px;border-radius:9px;font-size:12px;font-weight:700;color:var(--white);display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;box-sizing:border-box}.notification-dropdown-menu{position:absolute;top:100%;right:0;background-color:var(--white);border:1px solid var(--border-color);border-radius:var(--radius-medium);box-shadow:var(--shadow-medium);width:350px;max-width:calc(100vw - 24px);max-height:400px;overflow-y:auto;z-index:1050;animation:fadeIn .2s ease-out}.dropdown-header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color-light);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);background-color:var(--bg-color)}.dropdown-header h3{margin:0;font-size:1rem;font-weight:600}.mark-all-read-button{border:none;cursor:pointer;font-size:0;padding:8px 12px;border-radius:var(--radius-pill);min-height:32px;min-width:140px;white-space:nowrap;position:relative;color:transparent;line-height:0;overflow:hidden;text-indent:-9999px;display:inline-flex;align-items:center;justify-content:center;background:var(--flip-card-back-bg);box-shadow:var(--button-primary-shadow);transition:transform .2s ease,box-shadow .2s ease,filter var(--transition-speed) ease}.mark-all-read-button:after{content:"Marquer comme lu";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max-content;max-width:calc(100% - 16px);color:var(--white);font-size:var(--font-size-sm);font-weight:700;line-height:1;text-indent:0;white-space:nowrap;pointer-events:none}.notification-dropdown-menu:has(.notification-item.unread) .mark-all-read-button:hover{transform:translateY(-1px);box-shadow:var(--button-primary-shadow-hover);filter:brightness(1.03)}.notification-dropdown-menu:not(:has(.notification-item.unread)):has(.notification-item.read) .mark-all-read-button{background:var(--button-danger-gradient);box-shadow:var(--button-danger-shadow)}.notification-dropdown-menu:not(:has(.notification-item.unread)):has(.notification-item.read) .mark-all-read-button:after{content:"Effacer tout"}.notification-dropdown-menu:not(:has(.notification-item.unread)):has(.notification-item.read) .mark-all-read-button:hover{background:var(--button-danger-gradient-hover);transform:translateY(-1px);box-shadow:var(--button-danger-shadow-hover)}.mark-all-read-button:focus-visible{outline:var(--button-focus-ring);outline-offset:2px}.notification-list{list-style:none;padding:0;margin:0}.notification-item{display:flex;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color-light);cursor:pointer;transition:background-color .2s ease,box-shadow var(--transition-speed) ease}.notification-item:last-child{border-bottom:none}.notification-item.unread{background-color:#17a2b814;font-weight:600}.notification-item.read{background-color:var(--white)}.notification-item:hover{background-color:#0000000d;box-shadow:0 2px 8px #17a2b81a}.notification-item:focus-visible{outline:2px solid rgba(23,162,184,.5);outline-offset:-2px}.notification-icon-container{margin-right:12px;display:flex;align-items:center}.notification-icon-container .icon.placeholder-icon{font-size:20px}.notification-avatar-icon{width:22px;height:22px;border-radius:50%;object-fit:cover;box-shadow:0 1px 4px #00000026}.notification-content{flex-grow:1;min-width:0}.notification-title{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--text-color);word-break:break-word;overflow-wrap:break-word}.notification-item.read .notification-title{font-weight:400}.notification-body{margin:0 0 6px;font-size:.8rem;color:var(--text-color-light);font-weight:400;white-space:normal;word-break:break-word;overflow-wrap:break-word;min-width:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.notification-date{font-size:var(--font-size-sm);color:var(--text-color-light);font-weight:400}.no-notifications{padding:var(--spacing-lg);text-align:center;color:var(--text-color-light);font-size:var(--font-size-sm)}@media(prefers-reduced-motion:reduce){.notification-badge,.notification-dropdown-menu{animation:none}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes notificationPulse{0%{transform:scale(.95);box-shadow:0 0 #ff4f4fb3}70%{transform:scale(1);box-shadow:0 0 0 6px #ff4f4f00}to{transform:scale(.95);box-shadow:0 0 #ff4f4f00}}@media(max-width:768px){.notification-dropdown-menu{width:min(350px,calc(100vw - 16px));max-width:calc(100vw - 16px);right:0;left:auto;transform:none;max-height:min(70vh,400px)}.dropdown-header{align-items:stretch}.mark-all-read-button{width:100%;min-width:0;padding:8px 10px}.mark-all-read-button:after{font-size:var(--font-size-sm)}}.global-back-button{width:40px;height:40px;min-width:40px;min-height:40px;background:transparent;border:none;cursor:pointer;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:-3px 3px 8px #00000059;transition:box-shadow .2s ease,color .2s ease}.global-back-button:hover{box-shadow:-4px 4px 12px #0006}.global-back-icon{width:22px;height:22px;color:var(--text-color);transition:color .2s ease}.global-back-button:hover .global-back-icon{color:var(--color-blue)}.bottom-nav{display:none}@media(max-width:1024px){.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:1200;background:var(--white);border-top:1px solid var(--border-color-light);box-shadow:0 -2px 12px #00000014;padding-bottom:env(safe-area-inset-bottom,0px);height:calc(60px + env(safe-area-inset-bottom,0px))}.bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;text-decoration:none;color:var(--text-color-muted);transition:color .15s ease,background .15s ease;position:relative;min-height:44px}.bottom-nav__item:hover{color:var(--primary-color);background:#22b6870f}.bottom-nav__item--active{color:var(--primary-color-dark)}.bottom-nav__item--active:before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:var(--primary-color);border-radius:0 0 var(--radius-small) var(--radius-small)}.bottom-nav__icon{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.bottom-nav__item--active .bottom-nav__icon{transform:translateY(-1px)}.bottom-nav__label{font-size:.68rem;font-weight:600;line-height:1;text-align:center;white-space:nowrap;letter-spacing:.01em}.bottom-nav__item:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px}body:has(.bottom-nav) #main-content{padding-bottom:calc(60px + env(safe-area-inset-bottom,0px))}}@media(min-width:1025px){.bottom-nav{display:none!important}}@media(prefers-reduced-motion:reduce){.bottom-nav__item,.bottom-nav__icon{transition:none}}:root{--primary-color: #22b687;--primary-color-dark: #1a8f6b;--secondary-color: #ffaa44;--secondary-gradient-color: #ffaa44;--success-color: #2bd4a2;--danger-color: #dc3545;--warning-color: #ffc107;--info-color: #17a2b8;--bg-color: #f4f4f4;--bg-secondary: #f3f4f6;--bg-tertiary: #f8f9fa;--white: #ffffff;--text-color: #333333;--text-color-light: #666666;--text-color-dark: #1f2937;--text-color-muted: #6b7280;--text-color-subtle: #9ca3af;--border-color: #cccccc;--border-color-light: #eeeeee;--border-color-neutral: #e5e7eb;--accent-blue: #3b82f6;--accent-blue-dark: #1e40af;--accent-blue-bg: #eff6ff;--accent-blue-gradient: linear-gradient(135deg, #3b82f6, #2563eb);--primary-color-darker: #1a9e74;--danger-light-bg: #fef2f2;--danger-light-color: #ef4444;--warning-light-bg: #fff8e6;--success-light-bg: #e8f4f8;--font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-size-base: 1rem;--font-size-sm: .875rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--navbar-height: 60px;--header-offset-top: calc(var(--navbar-height) + 8px);--pagination-btn-size: 32px;--pagination-btn-border: #22b687;--pagination-btn-color: #22b687;--pagination-btn-bg: transparent;--pagination-btn-bg-hover: rgba(34, 182, 135, .25);--pagination-btn-bg-active: #22b687;--pagination-btn-color-active: #ffffff;--pagination-ellipsis-color: #9ca3af;--radius-small: 4px;--radius-medium: 6px;--radius-md: 8px;--radius-large: 12px;--radius-round: 50px;--radius-pill: 999px;--button-padding-y: 10px;--button-padding-x: 20px;--button-font-size: .95rem;--button-primary-gradient: linear-gradient(135deg, #22b687 0%, #1a8f6b 100%);--button-primary-shadow: 0 2px 8px rgba(34, 182, 135, .35);--button-primary-shadow-hover: 0 8px 20px rgba(34, 182, 135, .45);--button-danger-gradient: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%);--button-danger-gradient-hover: linear-gradient( 135deg, #dc2626 0%, #991b1b 100% );--button-danger-shadow: 0 2px 8px rgba(220, 38, 38, .3);--button-danger-shadow-hover: 0 8px 20px rgba(220, 38, 38, .45);--button-secondary-text: #0d5c3d;--button-outline-text: #1a1a1a;--button-focus-ring: 2px solid #0969da;--button-focus-ring-offset: 2px;--shadow-light: 0 2px 5px rgba(0, 0, 0, .1);--shadow-medium: 0 4px 12px rgba(0, 0, 0, .08);--shadow-heavy: 0 10px 25px rgba(0, 0, 0, .1);--shadow-card: 0 2px 10px rgba(0, 0, 0, .1);--gradient-primary: linear-gradient(135deg, #22b687 0%, #1a8f6b 100%);--gradient-hero: linear-gradient(135deg, #22b687 0%, #17a97f 50%, #ffaa44 100%);--gradient-title: linear-gradient(135deg, #22b687, #ffaa44);--gradient-card-top: linear-gradient(90deg, #22b687, #ffaa44);--border-color-input: #e1e8ed;--input-bg: #f4f4f4;--input-radius: 6px;--form-control-min-height: 44px;--form-control-padding-y: 10px;--form-control-padding-x: 12px;--focus-border-color: var(--primary-color-dark);--focus-glow: 0 0 0 3px rgba(34, 182, 135, .25);--form-disabled-bg: #e9ecef;--form-disabled-text: #6c757d;--form-helper-text: #5f6b76;--form-error-text: #9f1239;--form-error-border: #fecdd3;--form-error-bg: #fff1f2;--form-success-text: #166534;--form-success-border: #a7f3d0;--form-success-bg: #ecfdf3;--flip-card-back-bg: linear-gradient( 135deg, #2d8ca7 0%, #3d67b7 52%, #6e52bf 100% );--flip-card-back-color: #2d8ca7;--card-bg: var(--white);--card-radius: 12px;--card-padding: 20px;--card-shadow: 0 5px 20px rgba(0, 0, 0, .08);--card-shadow-hover: 0 10px 30px rgba(0, 0, 0, .15);--card-hover-border: #22b687;--section-radius: 15px;--section-padding: 25px;--section-shadow: 0 5px 20px rgba(0, 0, 0, .08);--link-color: #1a6fb5;--link-hover-color: #1256a0;--link-brand-color: var(--primary-color-dark);--link-brand-hover: var(--primary-color);--modal-border: 1px solid rgba(148, 163, 184, .28);--modal-shadow: 0 18px 36px rgba(15, 23, 42, .22);--modal-radius: 14px;--modal-header-bg: var(--flip-card-back-bg);--modal-header-padding: 14px 18px;--modal-header-color: #ffffff;--modal-close-bg: rgba(255, 255, 255, .25);--modal-close-bg-hover: rgba(255, 255, 255, .45);--modal-close-size: 34px;--modal-close-radius: 17px;--modal-close-font-size: 1.5rem;--modal-close-transition: background .2s ease, color .2s ease, box-shadow .2s ease;--modal-close-focus-shadow: 0 0 0 3px rgba(45, 140, 167, .4);--transition-speed: .3s;--color-blue: #007bff;--color-navy: #0e2a7a;--text-heading: #2c3e50;--text-slate-900: #0f172a;--text-slate-800: #1a202c;--text-slate-700: #334155;--text-slate-500: #64748b;--text-gray-medium: #495057;--success-green: #28a745;--success-bright: #22c55e;--emerald-500: #10b981;--warning-amber: #f59e0b;--warning-amber-text: #856404;--danger-red: #dc2626;--danger-red-dark: #b91c1c;--bg-slate-light: #f1f5f9;--bg-warning-soft: #fff3cd;--button-secondary-active: #0a4a30;--button-danger-hover: #c82333;--button-danger-active: #bd2130;--button-outline-active: #e5e5e5;--calendar-border: #dee2e6;--calendar-today-bg: #fff4e6;--calendar-button-hover: #f2f2f2;--calendar-button-active: #2c7be5;--calendar-event-bg: #2c7be5;--calendar-event-hover: #4188e7;--star-rating-filled: #ffd700;--status-warning-dark: #78350f;--status-success-dark: #065f46;--status-info-dark: #1e3a8a;--status-danger-dark: #7f1d1d;--error-network-border: #9bd5df;--error-network-bg: #e8f7fa;--error-network-text: #0c5460;--error-auth-border: #ffe08a;--error-auth-bg: #fff8de;--error-permission-btn: #cc355f;--error-permission-btn-hover: #b92951;--error-server-border: #f6c48f;--error-server-bg: #fff0e1;--error-server-text: #8a4a00;--error-server-btn: #fd7e14;--error-server-btn-hover: #e8650e;--gradient-admin-nav: linear-gradient(135deg, #6654f1 0%, #32b4ff 100%);--admin-accent-blue: #4e9cff;--admin-accent-orange: #ffb347;--admin-badge-unread: #ff9800;--admin-badge-unread-hover: #f57c00;--message-sent-bg: #e3f2fd;--message-sent-indicator: #2196f3;--admin-border: #dfe6ef;--admin-border-separator: #e5eaf0;--admin-bg-panel: #f5f8fc;--admin-input-border: #d0d7ea;--admin-focus-ring: #8ea3de;--focus-ring-blue: #2563eb;--focus-ring-dark: #1d4ed8;--focus-ring-light: #93c5fd;--chart-warning: #f39c12;--chart-error: #e74c3c;--chart-info: #3498db;--chart-api-bar: #0969da;--chart-api-bar-hover: #0860ca;--chart-purple: #9b59b6;--success-green-bg: #d4edda;--success-green-border: #c3e6cb;--success-green-dark: #218838;--success-dark: #16a34a;--success-deep-bg: #dcfce7;--color-blue-hover: #0056b3;--color-blue-title: #1565c0;--warning-border-light: #ffeaa7;--danger-dark: #c0392b;--calendar-dispo-bg: #e6fffa;--calendar-dispo-border: #38b2ac;--calendar-busy-bg: #fff5f5;--calendar-busy-border: #fc8181;--calendar-primary-light: #eef2ff;--color-white-transparent: rgba(255,255,255,.2);--radius-tiny: 2px;--color-coral: #ff6b6b;--emerald-600: #059669;--color-forest-green: #2d8a3e;--color-amber-200: #fde68a;--color-amber-600: #d97706;--border-color-medium: #dddddd;--color-sky-50: #f0f9ff;--color-sky-100: #e0f2fe;--color-sky-200: #bae6fd;--color-sky-900: #0c4a6e;--color-blue-700: #1967d2;--color-slate-50: #f8fafc;--color-gray-light: #f0f2f5;--color-sky-700: #0369a1;--color-green-50: #f0fdf4;--color-green-200: #bbf7d0;--shadow-elevation-1: 0 1px 2px rgba(0, 0, 0, .05), 0 1px 3px rgba(0, 0, 0, .1);--shadow-elevation-2: 0 2px 4px rgba(0, 0, 0, .05), 0 4px 12px rgba(0, 0, 0, .08);--shadow-elevation-3: 0 4px 8px rgba(0, 0, 0, .06), 0 12px 32px rgba(0, 0, 0, .1);--shadow-elevation-4: 0 8px 16px rgba(0, 0, 0, .08), 0 20px 48px rgba(0, 0, 0, .12);--font-size-xs: .75rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.7;--letter-spacing-tight: -.02em;--letter-spacing-wide: .04em;--spacing-2xl: 48px;--spacing-3xl: 64px;--spacing-4xl: 96px;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--z-dropdown: 100;--z-sticky: 200;--z-overlay: 400;--z-modal: 600;--z-toast: 800;--z-navbar: 1000}.gradient-title{background:var(--gradient-title);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;animation:gradientFlow 5s ease infinite}.section-card{background:var(--card-bg);padding:var(--section-padding);border-radius:var(--section-radius);box-shadow:var(--section-shadow)}.interactive-card{background:var(--card-bg);border:2px solid transparent;border-radius:var(--card-radius);padding:var(--card-padding);transition:all var(--transition-speed) ease;cursor:pointer;position:relative;overflow:hidden}.interactive-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--gradient-card-top);transform:scaleX(0);transform-origin:left;transition:transform var(--transition-speed) ease}.interactive-card:hover{border-color:var(--card-hover-border);transform:translateY(-5px);box-shadow:var(--card-shadow-hover)}.interactive-card:hover:before{transform:scaleX(1)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);width:100%}.form-group label{font-weight:600;color:var(--text-color);font-size:.95rem;line-height:1.4}.form-input{padding:var(--form-control-padding-y) var(--form-control-padding-x);min-height:var(--form-control-min-height);border:2px solid var(--border-color-input);border-radius:var(--input-radius);font-size:.9rem;line-height:1.4;font-family:var(--font-family);transition:border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease,background-color var(--transition-speed) ease;background:var(--input-bg);color:var(--text-color)}.form-input:focus{outline:none;border-color:var(--focus-border-color);background:var(--white);box-shadow:var(--focus-glow)}.form-input:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}.form-input::placeholder{color:var(--text-color-light)}.form-input:disabled{background:var(--form-disabled-bg);color:var(--form-disabled-text);cursor:not-allowed}textarea.form-input{min-height:112px;resize:vertical}.form-helper-text{margin:4px 0 0;color:var(--form-helper-text);font-size:.82rem;line-height:1.35}.form-feedback{margin:6px 0 0;padding:8px 10px;border-radius:8px;font-size:.85rem;line-height:1.35}.form-feedback--error{color:var(--form-error-text);border:1px solid var(--form-error-border);background:var(--form-error-bg)}.form-feedback--success{color:var(--form-success-text);border:1px solid var(--form-success-border);background:var(--form-success-bg)}.divider{text-align:center;margin:15px 0 12px;position:relative}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color-input)}.divider span{background:var(--white);padding:0 15px;position:relative;color:var(--text-color-light);font-size:.9rem}.empty-state{text-align:center;padding:60px 20px}.empty-state-icon{font-size:4rem;margin-bottom:20px;opacity:.5}.empty-state-title{font-size:var(--font-size-xl);color:var(--text-color);margin-bottom:10px}.empty-state-text{color:var(--text-color-light);font-size:1.1rem}a{color:var(--link-color);text-decoration:none;transition:color var(--transition-speed) ease}a:hover{color:var(--link-hover-color)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col-center{display:flex;flex-direction:column;align-items:center;justify-content:center}.form-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--border-color);border-radius:var(--radius-small);background:var(--white);cursor:pointer;flex-shrink:0;position:relative;transition:border-color var(--transition-speed) ease,background-color var(--transition-speed) ease}.form-checkbox:checked{background:var(--primary-color);border-color:var(--primary-color)}.form-checkbox:checked:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:5px;height:9px;border:2px solid var(--white);border-top:none;border-left:none;transform:rotate(45deg) translate(-1px,-1px)}.form-checkbox:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}.form-checkbox:disabled{background:var(--form-disabled-bg);border-color:var(--border-color);cursor:not-allowed;opacity:.6}.spinner{width:40px;height:40px;border:4px solid var(--border-color-light);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto var(--spacing-md)}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--font-family);background:var(--bg-color);color:var(--text-color);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;left:-9999px;top:0;z-index:9999;padding:.75rem 1rem;background:var(--white);color:var(--button-outline-text);text-decoration:underline;font-weight:600;border:2px solid var(--primary-color);border-radius:4px;box-shadow:0 4px 12px #00000026}.skip-link:focus{left:.5rem;top:.5rem;outline:none}#root,body>#root{display:flex;flex-direction:column;min-height:100%}ul{list-style:none;padding-left:0}button.active:not([class*=btn]):not([class*=button]){background-color:var(--color-blue);color:var(--white);border-color:var(--color-blue)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}html{scroll-behavior:smooth}@media(max-width:768px){h1{font-size:1.5rem}p{font-size:1rem}}.container{background-color:var(--white);padding:12px;margin-top:20px;border-radius:var(--radius-medium);box-shadow:var(--shadow-light);animation:fadeIn .5s ease}h1{margin-bottom:0}h1,h2,h3{text-align:center;margin-bottom:8px;color:var(--text-color)}h2{display:flex;justify-content:center;align-items:center;font-size:1.5rem;margin-bottom:25px;color:var(--text-color);position:relative;padding:0}.swal2-container{z-index:10600!important}.swal2-popup{z-index:10601!important}.swal2-popup .swal2-title,.swal2-popup .swal2-header .swal2-title,.swal2-title{padding:0!important;margin:0 0 15px!important;display:flex!important;justify-content:center!important;align-items:center!important;position:relative!important;text-align:center!important}.decorated-h2{position:relative;padding:12px 0;margin-bottom:25px;display:flex;justify-content:center;align-items:center}p{margin-bottom:8px;font-size:1rem}.decorated-h2:before,.decorated-h2:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:80%;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-gradient-color));border-radius:var(--radius-tiny)}.decorated-h2:before{top:0}.decorated-h2:after{bottom:0}.swal2-title.decorated-h2{position:relative;padding:12px 0;margin-bottom:15px!important}.swal2-title.decorated-h2:before,.swal2-title.decorated-h2:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:80%;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-gradient-color));border-radius:var(--radius-tiny)}.swal2-title.decorated-h2:before{top:0}.swal2-title.decorated-h2:after{bottom:0}form{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:12px}form label{font-weight:600;font-size:.95rem;line-height:1.4}form input,form select,form textarea{padding:var(--form-control-padding-y) var(--form-control-padding-x);min-height:var(--form-control-min-height);font-size:1rem;border:1px solid var(--border-color);border-radius:var(--input-radius);background:var(--input-bg);color:var(--text-color);line-height:1.4;transition:border-color var(--transition-speed) ease,box-shadow var(--transition-speed) ease,background-color var(--transition-speed) ease}form input:focus,form select:focus,form textarea:focus{border-color:var(--focus-border-color);box-shadow:var(--focus-glow);outline:none}form input:focus-visible,form select:focus-visible,form textarea:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}form input::placeholder,form textarea::placeholder{color:var(--text-color-light);opacity:.85}form input:disabled,form select:disabled,form textarea:disabled{background:var(--form-disabled-bg);color:var(--form-disabled-text);cursor:not-allowed}form textarea{min-height:112px;resize:vertical}button:not([class]),.generic-btn{padding:10px 20px;font-size:.95rem;background:var(--button-primary-gradient);color:var(--white);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:600;box-shadow:var(--button-primary-shadow);transition:transform var(--transition-speed) ease,box-shadow var(--transition-speed) ease,background var(--transition-speed) ease}button:not([class]):hover,.generic-btn:hover{transform:translateY(-1px);box-shadow:var(--button-primary-shadow-hover);background:linear-gradient(135deg,#1eb87e,#178f62)}button:not([class]):active,.generic-btn:active{transform:translateY(0)}button:not([class]):focus-visible,.generic-btn:focus-visible{outline:var(--button-focus-ring);outline-offset:var(--button-focus-ring-offset)}@media(min-width:1024px){h1{font-size:1.5rem}p,label,input,select{font-size:1.1rem}button:not([class]),.generic-btn{padding:10px 20px;font-size:.95rem}form{flex-direction:row;flex-wrap:wrap;gap:20px}form label,form input,form select{flex:1 1 45%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.selected:not(.filter-chip):not(.status-option):not(.gender-option):not(.sub-service-item):not(.radius-item){background-color:var(--color-blue);color:var(--white)}#main-content{position:relative;background:linear-gradient(135deg,var(--bg-color) 0%,var(--secondary-color) 100%)}.star-icon{animation:pulse 1s infinite}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.star-rating{margin-top:0;display:inline-flex;align-items:center;gap:4px}.star{font-size:1.15rem;cursor:pointer;color:var(--border-color);transition:color var(--transition-speed)}.star.filled{color:var(--star-rating-filled)}.fc-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:.25rem .75rem;background:var(--white);border-bottom:1px solid var(--calendar-border)}.fc-toolbar-title{color:var(--text-color);font-size:1rem;font-weight:500;margin:.25rem 0;position:relative;padding:12px 0}.fc-toolbar-title:before,.fc-toolbar-title:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:65%;height:3px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:var(--radius-tiny)}.fc-toolbar-title:before{top:0}.fc-toolbar-title:after{bottom:0}.fc-toolbar .fc-button{background:var(--white);color:var(--text-color);border:1px solid var(--border-color);border-radius:.25rem;padding:4px 8px;font-size:.9rem;margin:2px;cursor:pointer;transition:background-color var(--transition-speed),border-color var(--transition-speed)}.fc-toolbar .fc-button:hover{background:var(--calendar-button-hover)}.fc-toolbar .fc-button:focus{outline:none}.fc-toolbar .fc-button:active,.fc-toolbar .fc-button.fc-button-active{background:var(--calendar-button-active);border-color:var(--calendar-button-active);color:var(--white)}.fc{background:var(--white);border:1px solid var(--calendar-border);border-radius:.5rem;box-shadow:0 2px 5px #0000001a;overflow:hidden;height:auto}.fc-toolbar .fc-toolbar-chunk{width:100%;text-align:center;margin-bottom:.25rem}.fc a{text-decoration:none;color:inherit}.fc-scrollgrid{border:none}.fc-theme-standard td,.fc-theme-standard th{border-color:var(--calendar-border)}.fc-timegrid-col{border-left:1px solid var(--calendar-border)}.fc-timegrid-col:first-child{border-left:none}.fc-timegrid-col:last-child{border-right:none}.fc-timegrid-slot{border-bottom:1px solid var(--calendar-border);height:3rem!important}.fc-timegrid-slot-lane{height:3rem!important}.fc-timegrid-slots tbody tr:last-child .fc-timegrid-slot{height:3rem!important}.fc-timegrid-body{min-height:auto!important}.fc-timegrid-slots table{height:auto!important}.fc-daygrid-day-number{color:var(--text-color);font-weight:500;font-size:.9rem}.fc-day-today{background:var(--calendar-today-bg)!important}.fc-day-today .fc-daygrid-day-number{font-weight:600;color:var(--text-color)}.fc-event{background-color:var(--calendar-button-active);color:var(--white);border:none;border-radius:.25rem;padding:2px 6px;box-shadow:0 1px 3px #0003;cursor:pointer;transition:background-color var(--transition-speed),box-shadow var(--transition-speed);width:100%!important;max-width:100%!important}.fc-event:hover{background-color:var(--calendar-event-hover);box-shadow:0 2px 6px #0000004d}.fc-header-toolbar{display:flex;flex-direction:column;align-items:center;margin:.5rem}@media(max-width:767px){.fc{height:865px}.fc-toolbar{height:auto;flex-direction:column;align-items:flex-start}.fc-toolbar .fc-toolbar-chunk{width:100%;text-align:center;margin-bottom:.5rem}.fc-toolbar-title{font-size:1rem;margin-bottom:.5rem}.fc-toolbar .fc-toolbar-chunk:last-child{display:flex!important;flex-wrap:wrap;justify-content:center;gap:4px}.fc-toolbar .fc-button{font-size:.85rem;min-width:44px;min-height:36px;padding:4px 8px}.fc-event{font-size:.85rem;padding:2px 4px}.fc-highlight{background-color:#21f039!important;border-radius:.25rem;box-shadow:none}.fc-daygrid-day-number,.fc-timegrid-slot-label-cushion,.fc-col-header-cell-cushion{font-size:var(--font-size-sm)}.fc-scrollgrid-shrink-frame,.fc-scrollgrid-shrink{font-size:14px}}.selected-result{--selection-ring-color: var(--primary-color);--selection-ring-width: 2px;--selection-glow-soft: rgba(34, 182, 135, .25);--selection-glow-strong: rgba(34, 182, 135, .45);box-shadow:0 10px 22px #00000024,0 0 0 var(--selection-ring-width) var(--selection-ring-color),0 0 30px var(--selection-glow-soft);transition:box-shadow .24s cubic-bezier(.2,.9,.2,1);z-index:2}.animated-pulse{animation:selection-ring-pulse .52s cubic-bezier(.2,.9,.2,1) both}@keyframes selection-ring-pulse{0%{box-shadow:0 10px 22px #00000024,0 0 0 var(--selection-ring-width) var(--selection-ring-color),0 0 #22b68700}45%{box-shadow:0 14px 28px #00000029,0 0 0 var(--selection-ring-width) var(--selection-ring-color),0 0 26px var(--selection-glow-strong)}to{box-shadow:0 10px 22px #00000024,0 0 0 var(--selection-ring-width) var(--selection-ring-color),0 0 16px var(--selection-glow-soft)}}.fc-timegrid-event-harness,.fc-timegrid-event{left:0!important;width:100%!important}.fc-event{width:100%!important;max-width:100%!important;left:0!important}
