.confirm-dialog__icon{animation:fadeInScale .3s ease-out}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.confirm-dialog--danger .confirm-dialog__icon{color:var(--status-error)}.confirm-dialog--warning .confirm-dialog__icon{color:var(--status-warning)}.confirm-dialog--info .confirm-dialog__icon{color:var(--status-info)}.confirm-dialog--success .confirm-dialog__icon{color:var(--status-success)}.confirm-dialog button{min-height:44px;min-width:44px}.confirm-dialog button:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.confirm-dialog button{transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease}.confirm-dialog button:active:not(:disabled){transform:scale(.98)}.confirm-dialog button:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .confirm-dialog{background-color:var(--neutral-800)}@media(max-width:600px){.confirm-dialog__icon{margin-bottom:var(--spacing-sm)}}.error-boundary{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background:var(--color-bg-alt)}.error-boundary__container{max-width:500px;text-align:center;background:var(--color-surface);padding:var(--spacing-xxl);border-radius:var(--border-radius-large);box-shadow:var(--shadow-medium)}.error-boundary__icon{font-size:4rem;margin-bottom:var(--spacing-lg)}.error-boundary__title{font-size:1.5rem;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-md)}.error-boundary__message{color:var(--color-text-muted);margin-bottom:var(--spacing-xl);line-height:1.6}.error-boundary__button{background:var(--color-accent-primary-bg);color:var(--color-accent-primary-fg);border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s ease}.error-boundary__button:hover{background:var(--color-accent-primary-bg-hover);transform:translateY(-1px)}.error-boundary__details{margin-top:var(--spacing-xl);text-align:left;background:var(--color-bg-alt);padding:var(--spacing-md);border-radius:var(--border-radius)}.error-boundary__stack{background:var(--color-text);color:var(--color-text-inverse);padding:var(--spacing-md);border-radius:var(--border-radius-small);font-size:.8rem;overflow-x:auto;white-space:pre-wrap}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);gap:var(--spacing-md)}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-accent-primary-bg);border-radius:50%;animation:spinner-spin 1s linear infinite}.loading-spinner .spinner{width:48px;height:48px;border-width:4px}.loading-spinner p{color:var(--color-text-secondary);font-size:var(--font-size-md);margin:0}@keyframes spinner-spin{to{transform:rotate(360deg)}}.toast-custom{padding:var(--spacing-md);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);font-family:var(--font-primary);max-width:28rem;width:100%}.toast-title{font-weight:600;font-size:.9375rem;line-height:1.4;margin:0}.toast-description{font-size:.875rem;line-height:1.5;color:var(--color-text-muted);margin-top:var(--spacing-xs)}.toast-close{border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-small);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.toast-close:hover{background:var(--black-alpha-5);color:var(--color-text)}.toast-close:active{transform:scale(.95)}.toast-success{border-left:4px solid var(--status-success)}.toast-success [data-icon]{color:var(--status-success)}.toast-error{border-left:4px solid var(--status-error)}.toast-error [data-icon]{color:var(--status-error)}.toast-warning{border-left:4px solid var(--status-warning)}.toast-warning [data-icon]{color:var(--status-warning)}.toast-info{border-left:4px solid var(--status-info)}.toast-info [data-icon]{color:var(--status-info)}.toast-custom button[data-button]:not([data-close-button]){background:var(--primary-blue);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-small);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:2rem}.toast-custom button[data-button]:not([data-close-button]):hover{background:var(--primary-blue-dark);transform:translateY(-1px)}.toast-custom button[data-button]:not([data-close-button]):active{transform:translateY(0)}.toast-custom button[data-cancel]{background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--border-radius-small);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:2rem}.toast-custom button[data-cancel]:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong);color:var(--color-text)}@media(max-width:768px){.toast-custom{margin:var(--spacing-sm);max-width:calc(100vw - var(--spacing-md) * 2)}}[data-theme=dark] .toast-close:hover{background:var(--black-alpha-10)}[data-theme=dark] .toast-custom button[data-cancel]{background:transparent;border-color:var(--neutral-600);color:var(--neutral-300)}[data-theme=dark] .toast-custom button[data-cancel]:hover{background:var(--black-alpha-10);border-color:var(--neutral-500);color:var(--neutral-50)}@media(prefers-reduced-motion:reduce){.toast-custom,.toast-close,.toast-custom button{transition:none}}[data-sonner-toast][data-type=loading]{border-left:4px solid var(--primary-blue)}[data-sonner-toast][data-type=loading] [data-icon]{animation:spin 1s linear infinite}.service-info{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.address-text{max-width:100%;overflow:hidden}.address-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:100%}@media(max-width:600px){.address-content{max-width:150px}}@media(min-width:601px)and (max-width:960px){.address-content{max-width:300px}}.appointment-summary{background:var(--color-surface);border-radius:var(--border-radius-large);padding:var(--spacing-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-md)}.appointment-summary__header{display:flex;align-items:flex-start;gap:var(--spacing-md)}.appointment-summary__header-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--border-radius);background-color:var(--status-success);color:#fff;flex-shrink:0}.appointment-summary__section{margin-bottom:var(--spacing-xl)}.appointment-summary__section:last-of-type{margin-bottom:0}.appointment-summary__section-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);color:var(--color-text)}.appointment-summary__card{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);transition:border-color .2s ease,box-shadow .2s ease}.appointment-summary__card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm)}.appointment-summary__card--location{background:var(--secondary-alpha-10);border-color:var(--secondary-green)}.appointment-summary__card--online{background:var(--primary-alpha-10);border-color:var(--primary-blue)}.appointment-summary__card--price{background-color:var(--primary-alpha-10);border:2px solid var(--primary-blue)}.appointment-summary__card-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.appointment-summary__badges{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.appointment-summary__chip--online,.appointment-summary__chip--presencial{font-weight:600}.appointment-summary__chip--online{background:var(--primary-alpha-10);color:var(--primary-blue);border-color:var(--primary-blue)}.appointment-summary__chip--presencial{background:var(--secondary-alpha-10);color:var(--secondary-green);border-color:var(--secondary-green)}.appointment-summary__datetime{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg)}.appointment-summary__datetime-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface);border-radius:var(--border-radius-small);border:1px solid var(--color-border)}.appointment-summary__datetime-item svg{color:var(--primary-blue);flex-shrink:0;margin-top:2px}.appointment-summary__location{display:flex;align-items:flex-start;gap:var(--spacing-md)}.appointment-summary__location-icon{color:var(--secondary-green);flex-shrink:0;margin-top:2px}.appointment-summary__info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.appointment-summary__info-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface);border-radius:var(--border-radius-small);border:1px solid var(--color-border)}.appointment-summary__info-item--full{grid-column:1 / -1}.appointment-summary__info-item svg{color:var(--color-text-muted);flex-shrink:0;margin-top:2px}.appointment-summary__price{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:var(--color-surface);border-radius:var(--border-radius);border:1px solid var(--color-border)}.appointment-summary__actions{margin-top:var(--spacing-lg)}@media(max-width:768px){.appointment-summary{padding:var(--spacing-lg)}.appointment-summary__header{flex-direction:column;align-items:center;text-align:center}.appointment-summary__datetime,.appointment-summary__info-grid{grid-template-columns:1fr}.appointment-summary__price{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}}@media(max-width:480px){.appointment-summary{padding:var(--spacing-md)}.appointment-summary__section{margin-bottom:var(--spacing-lg)}.appointment-summary__card{padding:var(--spacing-md)}.appointment-summary__datetime-item,.appointment-summary__info-item{padding:var(--spacing-sm)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.appointment-summary__section{animation:slideInUp .4s ease forwards}.appointment-summary__section:nth-child(1){animation-delay:.05s}.appointment-summary__section:nth-child(2){animation-delay:.1s}.appointment-summary__section:nth-child(3){animation-delay:.15s}.appointment-summary__section:nth-child(4){animation-delay:.2s}.appointment-summary__section:nth-child(5){animation-delay:.25s}.appointment-summary__section:nth-child(6){animation-delay:.3s}.appointment-summary__section:nth-child(7){animation-delay:.35s}.professional-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-large);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .2s ease;margin-bottom:var(--spacing-lg)}.professional-card:hover{box-shadow:var(--shadow-md)}.professional-card__header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:none;border:none;cursor:pointer;transition:background-color .2s ease}.professional-card__header:hover{background-color:var(--color-surface-hover)}.professional-card__header:focus{outline:2px solid var(--color-border-focus);outline-offset:-2px}.professional-card__header-content{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.professional-card__avatar{flex-shrink:0;width:64px;height:64px;border-radius:50%;overflow:hidden;background-color:var(--color-bg-alt);border:2px solid var(--color-border)}.professional-card__avatar-image{width:100%;height:100%;object-fit:cover}.professional-card__avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;background-color:var(--primary-blue);color:var(--white)}.professional-card__info{flex:1;min-width:0;text-align:left}.professional-card__name{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.professional-card__toggle{flex-shrink:0;margin-left:var(--spacing-sm)}.professional-card__toggle-icon{width:24px;height:24px;color:var(--color-text-muted);transition:transform .2s ease}.professional-card__body{padding:0 var(--spacing-md) var(--spacing-md);border-top:1px solid var(--color-border);animation:expandBody .2s ease-out}@keyframes expandBody{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.professional-card__contacts{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.professional-card__contact-item{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.875rem;color:var(--color-text-muted)}.professional-card__contact-icon{width:16px;height:16px;flex-shrink:0;color:var(--color-text-subtle)}.professional-card__contact-item a{color:var(--primary-blue);text-decoration:none;transition:color .2s ease;word-break:break-all;min-height:fit-content!important}.professional-card__contact-item a:hover{color:var(--primary-blue-dark);text-decoration:underline}.professional-card__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);gap:var(--spacing-md)}.professional-card__loading-icon{width:32px;height:32px;color:var(--primary-blue);animation:spin 1s linear infinite}.professional-card__loading-text{margin:0;font-size:.875rem;color:var(--color-text-muted);text-align:center}.professional-card--error{border-color:var(--status-error);background-color:#ef44440d}.professional-card__error{display:flex;align-items:flex-start;padding:var(--spacing-md);gap:var(--spacing-sm)}.professional-card__error-icon{width:20px;height:20px;color:var(--status-error);flex-shrink:0;margin-top:2px}.professional-card__error-content{flex:1}.professional-card__error-title{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;color:var(--status-error-dark)}.professional-card__error-message{margin:0;font-size:.875rem;color:var(--color-text-muted);line-height:1.5}.professional-card--empty{border-color:var(--color-border);background-color:var(--color-bg-alt)}.professional-card__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);gap:var(--spacing-sm)}.professional-card__empty-icon{width:24px;height:24px;color:var(--color-text-subtle)}.professional-card__empty-text{margin:0;font-size:.875rem;color:var(--color-text-muted);text-align:center}@media(max-width:480px){.professional-card__header{padding:var(--spacing-sm)}.professional-card__avatar{width:56px;height:56px}.professional-card__name{font-size:1rem}.professional-card__role{font-size:.8125rem}.professional-card__body{padding:0 var(--spacing-sm) var(--spacing-sm)}.professional-card__bio{font-size:.875rem}}@media(min-width:768px){.professional-card__header-content{gap:var(--spacing-lg)}.professional-card__avatar{width:72px;height:72px}.professional-card__body{padding:0 var(--spacing-lg) var(--spacing-lg)}}.progress-summary{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius);transition:box-shadow .2s ease}.progress-summary__selections{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.progress-summary__item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg-alt);border-radius:var(--border-radius-small);transition:background-color .2s ease,transform .2s ease;position:relative;animation:fadeSlideIn .3s ease forwards}.progress-summary__item:nth-child(1){animation-delay:.05s}.progress-summary__item:nth-child(2){animation-delay:.1s}.progress-summary__item:nth-child(3){animation-delay:.15s}.progress-summary__item:hover{background:var(--color-surface-hover);transform:translate(2px)}.progress-summary__item-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--border-radius-small);background:var(--primary-alpha-10);color:var(--primary-blue);flex-shrink:0}.progress-summary__item-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.progress-summary__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600;font-size:.7rem}.progress-summary__item-value{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.progress-summary__time{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-muted)}.progress-summary__check-icon{color:var(--status-success);flex-shrink:0;margin-top:4px}.progress-summary__description{font-size:.875rem;color:var(--color-text-muted)}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.progress-summary{padding:var(--spacing-sm)}.progress-summary__item{padding:var(--spacing-xs) var(--spacing-sm)}.progress-summary__item-icon{width:28px;height:28px}.progress-summary__item-value{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}}.appointment-item{border-left-width:4px!important}.appointment-item.pending{border-left-color:var(--status-warning)!important}.appointment-item.confirmed{border-left-color:var(--status-success)!important}.appointment-item.completed{border-left-color:var(--status-info)!important}.appointment-item.cancelled{border-left-color:var(--status-error)!important}.appointment-item.no_show{border-left-color:var(--neutral-500)!important}.appointment-item.no_show .MuiChip-filled{background-color:var(--neutral-500)!important;color:var(--white)!important}[data-theme=dark] .appointment-item.no_show .MuiChip-filled{background-color:var(--neutral-600)!important;color:var(--neutral-50)!important}.summary-card.total{background-color:var(--primary-alpha-10)}.summary-card.confirmed{background-color:var(--secondary-alpha-10)}.summary-card.completed{background-color:var(--secondary-alpha-20)}.summary-card.pending{background-color:var(--warning-alpha-10)}.summary-card.cancelled{background-color:var(--error-alpha-10)}.summary-card.no_show{background-color:var(--black-alpha-10)}.duration-picker{width:100%}.duration-picker__quick-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.duration-picker__button{min-height:44px;font-size:.875rem;font-weight:500;transition:all .2s ease}.duration-picker__button.active{transform:scale(1.02);box-shadow:var(--shadow-sm)}.duration-picker__button:active:not(:disabled){transform:scale(.98)}@media(min-width:600px){.duration-picker__quick-buttons{grid-template-columns:repeat(3,1fr)}}@media(min-width:960px){.duration-picker__quick-buttons{gap:var(--spacing-md)}}[data-theme=dark] .duration-picker__button{border-color:var(--neutral-600)}[data-theme=dark] .duration-picker__button:hover:not(:disabled){border-color:var(--primary-blue-light);background-color:var(--primary-alpha-10)}.duration-picker__button,.duration-picker input{transition:border-color .2s ease,background-color .2s ease,transform .1s ease}.service-card{border:1px solid var(--color-border);border-radius:var(--border-radius)}.service-card--inactive{background-color:var(--color-bg-alt);opacity:.75}.service-card__actions{margin-top:var(--spacing-sm)}.service-card{transition:transform .2s ease,box-shadow .2s ease}@media(max-width:768px){.service-card__actions button{min-height:44px;font-size:.875rem}}[data-theme=dark] .service-card--inactive{background-color:var(--neutral-800);opacity:.85}@media(prefers-contrast:high){.service-card{border-width:2px}}.service-summary-card{border:2px solid var(--primary-blue);background-color:var(--color-bg-alt);overflow:hidden;height:100%}.service-summary-card__header{padding:var(--spacing-md);background-color:var(--primary-blue);color:#fff}.service-summary-card__content{padding:var(--spacing-md);min-height:120px;overflow-y:auto;max-height:calc(100dvh - 150px);scrollbar-width:thin;scrollbar-color:var(--primary-blue-light) var(--color-bg-alt)}.service-summary-card__content::-webkit-scrollbar{width:6px}.service-summary-card__content::-webkit-scrollbar-track{background:var(--color-bg-alt);border-radius:3px}.service-summary-card__content::-webkit-scrollbar-thumb{background:var(--primary-blue-light);border-radius:3px}.service-summary-card__content::-webkit-scrollbar-thumb:hover{background:var(--primary-blue)}[data-theme=dark] .service-summary-card{background-color:var(--neutral-800);border-color:var(--primary-blue-light)}[data-theme=dark] .service-summary-card__header{background-color:var(--primary-blue-dark)}[data-theme=dark] .service-summary-card__content{scrollbar-color:var(--primary-blue) var(--neutral-700)}[data-theme=dark] .service-summary-card__content::-webkit-scrollbar-track{background:var(--neutral-700)}[data-theme=dark] .service-summary-card__content::-webkit-scrollbar-thumb{background:var(--primary-blue)}[data-theme=dark] .service-summary-card__content::-webkit-scrollbar-thumb:hover{background:var(--primary-blue-light)}.service-summary-card{transition:border-color .2s ease}.service-summary-card:hover{border-color:var(--primary-blue-light)}.public-layout{min-height:100vh;display:flex;flex-direction:column;background-color:var(--color-bg)}.public-header{padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;background-color:#ffffffe6;backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}[data-theme=dark] .public-header{background-color:#1a1a1fe6}.public-logo{font-weight:700;font-size:1.25rem;color:var(--primary-blue);display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;user-select:none}.public-content{flex:1;display:flex;flex-direction:column;width:100%}.public-footer{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;color:var(--color-text-muted);border-top:1px solid var(--color-border);background-color:var(--color-bg)}.main-layout{display:flex;flex-direction:column;position:fixed;inset:0;height:100dvh;width:100vw;overflow:hidden;background-color:var(--color-bg-alt);color:var(--color-text)}.main-content{flex:1;overflow-y:auto;overflow-x:hidden;background-color:var(--color-bg-alt);position:relative;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.footer-menu{position:relative;flex-shrink:0;display:flex;justify-content:space-around;align-items:center;min-height:60px;background-color:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:var(--shadow-sm);z-index:100;padding-bottom:env(safe-area-inset-bottom)}.footer-menu__item{flex:1 1 0;display:flex;flex-direction:column;align-items:center;min-height:48px;padding:var(--spacing-sm) 0;background:none;border:none;outline:none;color:var(--color-text-muted);font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.footer-menu__item-content{display:flex;flex-direction:column;align-items:center;min-width:60px;padding:var(--spacing-xs);border-radius:var(--border-radius);transition:all .2s ease}.footer-menu__item-content.active{color:var(--color-text-inverse);font-weight:600;background-color:var(--color-accent-primary-bg)}.footer-menu__item-content:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.footer-menu__item span{margin-top:var(--spacing-xs);font-size:.8rem}.submenu{position:absolute;bottom:100%;left:0;right:0;display:none;flex-direction:column;padding:var(--spacing-md);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-large) var(--border-radius-large) 0 0;box-shadow:var(--shadow-md);z-index:101;margin-bottom:-1px}.submenu>span{margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);font-size:1rem;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);cursor:default}.footer-menu__item[aria-expanded=true] .submenu{display:flex;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.submenu-item{display:flex;flex-direction:row;align-items:center;min-height:48px;padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;border-radius:var(--border-radius);outline:none;color:var(--color-text);font-size:.9rem;cursor:pointer;transition:background-color .2s ease}.submenu-item.active{color:var(--color-accent-primary-bg);font-weight:600}.submenu-item:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.submenu-item span{margin-left:var(--spacing-sm);font-size:.9rem;cursor:pointer}[data-theme=dark] .main-content{background-color:var(--neutral-900)}@media(hover:hover)and (pointer:fine){.footer-menu__item:hover .footer-menu__item-content,.submenu-item:hover{background-color:var(--color-surface-hover)}}@media(hover:none)and (pointer:coarse){.footer-menu__item:active .footer-menu__item-content,.submenu-item:active{background-color:var(--color-surface-hover)}}@media(prefers-reduced-motion:reduce){.footer-menu__item-content,.submenu-item{transition:none}.submenu{animation:none}}:root{--primary-blue: #0066cc;--primary-blue-dark: #004d99;--primary-blue-light: #3399ff;--secondary-green: #00a86b;--secondary-green-dark: #007a4f;--secondary-green-light: #33c085;--neutral-900: #1a1a1f;--neutral-800: #2d3748;--neutral-700: #374151;--neutral-600: #4b5563;--neutral-500: #6b7280;--neutral-400: #9ca3af;--neutral-300: #d1d5db;--neutral-200: #e5e7eb;--neutral-100: #f3f4f6;--neutral-50: #f9fafb;--white: #ffffff;--black: #000000;--status-success: #10b981;--status-success-dark: #059669;--status-success-light: #34d399;--status-warning: #f59e0b;--status-warning-dark: #d97706;--status-warning-light: #fbbf24;--status-error: #ef4444;--status-error-dark: #dc2626;--status-error-light: #f87171;--status-info: #3b82f6;--status-info-dark: #2563eb;--status-info-light: #60a5fa;--primary-alpha-10: rgba(0, 102, 204, .1);--primary-alpha-20: rgba(0, 102, 204, .2);--secondary-alpha-10: rgba(0, 168, 107, .1);--secondary-alpha-20: rgba(0, 168, 107, .2);--success-alpha-10: rgba(16, 185, 129, .1);--success-alpha-20: rgba(16, 185, 129, .2);--warning-alpha-10: rgba(245, 158, 11, .1);--warning-alpha-20: rgba(245, 158, 11, .2);--error-alpha-10: rgba(239, 68, 68, .1);--error-alpha-20: rgba(239, 68, 68, .2);--black-alpha-5: rgba(0, 0, 0, .05);--black-alpha-10: rgba(0, 0, 0, .1);--black-alpha-20: rgba(0, 0, 0, .2);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--icon-size-xs: 12px;--icon-size-sm: 16px;--icon-size-md: 20px;--icon-size-lg: 24px;--icon-size-xl: 32px;--border-radius-small: 4px;--border-radius: 8px;--border-radius-large: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .15);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .18);--container-max-width: 1200px;--container-padding: 1rem;--color-bg: var(--white);--color-bg-alt: var(--neutral-50);--color-bg-alt2: var(--neutral-100);--color-surface: var(--white);--color-surface-hover: var(--neutral-50);--color-text: var(--neutral-700);--color-text-muted: var(--neutral-500);--color-text-subtle: var(--neutral-400);--color-text-inverse: var(--white);--color-border: var(--neutral-200);--color-border-strong: var(--neutral-300);--color-border-focus: var(--primary-blue);--color-input-bg: var(--white);--color-input-border: var(--neutral-200);--color-input-text: var(--neutral-700);--color-input-placeholder: var(--neutral-400);--color-accent-primary-bg: var(--primary-blue);--color-accent-primary-fg: var(--white);--color-accent-secondary-bg: var(--secondary-green);--color-accent-secondary-fg: var(--white)}[data-theme=dark]{--color-bg: var(--neutral-900);--color-bg-alt: var(--neutral-800);--color-bg-alt2: var(--neutral-700);--color-surface: #252a35;--color-surface-hover: var(--neutral-700);--color-text: var(--neutral-50);--color-text-muted: var(--neutral-300);--color-text-subtle: var(--neutral-400);--color-text-inverse: var(--neutral-900);--color-border: var(--neutral-600);--color-border-strong: var(--neutral-500);--color-border-focus: var(--primary-blue-light);--color-input-bg: var(--neutral-800);--color-input-border: var(--neutral-600);--color-input-text: var(--neutral-50);--color-input-placeholder: var(--neutral-400);--color-accent-primary-bg: var(--primary-blue-light);--color-accent-primary-fg: var(--neutral-900);--color-accent-secondary-bg: var(--secondary-green-light);--color-accent-secondary-fg: var(--neutral-900);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .5);--shadow-md: 0 4px 8px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .7);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .8);--primary-alpha-10: rgba(51, 153, 255, .15);--primary-alpha-20: rgba(51, 153, 255, .25);--secondary-alpha-10: rgba(51, 192, 133, .15);--secondary-alpha-20: rgba(51, 192, 133, .25);--black-alpha-10: rgba(255, 255, 255, .1);--black-alpha-20: rgba(255, 255, 255, .2)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-bg: var(--neutral-900);--color-bg-alt: var(--neutral-800);--color-bg-alt2: var(--neutral-700);--color-surface: #252a35;--color-surface-hover: var(--neutral-700);--color-text: var(--neutral-50);--color-text-muted: var(--neutral-300);--color-text-subtle: var(--neutral-400);--color-text-inverse: var(--neutral-900);--color-border: var(--neutral-600);--color-border-strong: var(--neutral-500);--color-border-focus: var(--primary-blue-light);--color-input-bg: var(--neutral-800);--color-input-border: var(--neutral-600);--color-input-text: var(--neutral-50);--color-input-placeholder: var(--neutral-400);--color-accent-primary-bg: var(--primary-blue-light);--color-accent-primary-fg: var(--neutral-900);--color-accent-secondary-bg: var(--secondary-green-light);--color-accent-secondary-fg: var(--neutral-900);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .5);--shadow-md: 0 4px 8px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .7);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .8);--primary-alpha-10: rgba(51, 153, 255, .15);--primary-alpha-20: rgba(51, 153, 255, .25);--secondary-alpha-10: rgba(51, 192, 133, .15);--secondary-alpha-20: rgba(51, 192, 133, .25);--black-alpha-10: rgba(255, 255, 255, .1);--black-alpha-20: rgba(255, 255, 255, .2)}}@media(prefers-contrast:high){:root{--color-border: #000000;--color-text: #000000}[data-theme=dark]{--color-border: #ffffff;--color-text: #ffffff}}@media(min-width:768px){:root{--container-padding: 2rem;--spacing-lg: 2rem;--spacing-xl: 2.5rem;--spacing-xxl: 4rem}}@media(min-width:1024px){:root{--container-padding: 3rem;--spacing-xl: 3rem;--spacing-xxl: 5rem}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;color-scheme:light dark;background-color:var(--color-bg-alt);height:100%;width:100%;overflow-x:hidden;overscroll-behavior-y:none}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg-alt);color:var(--color-text);line-height:1.6;-webkit-text-size-adjust:100%;touch-action:manipulation;overflow-x:hidden;min-height:100dvh;width:100%;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}#root{overscroll-behavior-x:none;touch-action:pan-y pinch-zoom;width:100%;overflow-x:hidden;min-height:100dvh}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding);width:100%}.grid{display:grid;gap:var(--spacing-md);grid-template-columns:1fr}@media(min-width:768px){.grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}}@media(min-width:1024px){.grid{grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl)}}.flex{display:flex;gap:var(--spacing-md)}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-column{display:flex;flex-direction:column;gap:var(--spacing-md)}@media(max-width:767px){.flex-mobile-column{flex-direction:column}.flex,.flex-column{gap:var(--spacing-sm)}}.card{background:var(--color-surface);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);border:1px solid var(--color-border);transition:box-shadow .3s ease}.card:hover{box-shadow:var(--shadow-md)}@media(max-width:767px){.card{padding:var(--spacing-md);border-radius:var(--border-radius-small)}}.input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-input-border);border-radius:var(--border-radius);font-size:1rem;transition:border-color .3s ease;min-height:44px;background:var(--color-input-bg);color:var(--color-input-text)}.input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--primary-alpha-10)}.input-required{color:var(--status-error);font-weight:700}.MuiFormLabel-root .input-required{color:var(--status-error)}@media(max-width:767px){html{font-size:14px}.container{padding:0 var(--spacing-md)}input,textarea,select{font-size:16px}@supports (-webkit-touch-callout: none){input,textarea,select{font-size:16px!important}}input,textarea,button:not(.MuiPickersDay-root):not(.MuiIconButton-root),a{min-height:44px;min-width:44px}input,textarea,button{-webkit-tap-highlight-color:transparent}}@media(min-width:768px)and (max-width:1023px){.container{padding:0 var(--spacing-lg)}input,select,textarea{font-size:16px;-webkit-appearance:none;appearance:none}}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:var(--spacing-md)}.spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top:4px solid var(--color-accent-primary-bg);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading{opacity:.7;pointer-events:none}.disabled{opacity:.5;pointer-events:none}.app-build-info{position:fixed;bottom:8px;right:8px;z-index:1000;opacity:.7;transition:opacity .3s ease}.app-build-info:hover{opacity:1}@media(max-width:767px){.app-build-info{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-contrast:high){.card{border-width:2px}.input{border-width:3px}}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.card{box-shadow:var(--shadow-md)}}
