.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.menu-layout,.menu-layout *,.menu-layout *:before,.menu-layout *:after{box-sizing:border-box}.menu-layout{display:flex;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.menu-sidebar{width:240px;min-width:240px;max-width:240px;background-color:var(--white, #fff);border-right:1px solid var(--light-gray, #e5e7eb);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:200;overflow:hidden}.menu-user-section{padding-left:16px;display:flex;align-items:center;gap:12px;height:64px;min-height:64px;flex-shrink:0;border-bottom:1px solid var(--light-gray, #e5e7eb);text-decoration:none;color:inherit}@media(min-width:768px){.menu-user-section{height:80px;min-height:80px;padding-left:24px}}.menu-avatar{width:40px;height:40px;border-radius:50%;background-color:var(--light-gray, #f2f2f2);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.menu-avatar img{width:100%;height:100%;object-fit:cover}.menu-avatar svg{color:var(--pp-secondary, #6c757d)}.menu-user-info{display:flex;flex-direction:column;gap:2px;overflow:hidden}.menu-user-name{font-weight:600;font-size:14px;color:var(--font-color-base, #282828);line-height:1.4}.menu-user-company{font-size:12px;color:var(--pp-secondary, #6c757d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-nav{flex:1;padding:16px;overflow-y:auto;overflow-x:visible;display:flex;flex-direction:column;gap:8px;min-height:0}.menu-item{display:flex;align-items:center;gap:12px;padding:8px 12px;color:var(--font-color-base, #282828);text-decoration:none;font-size:var(--font-size-base, 14px);font-weight:500;cursor:pointer;border-radius:var(--radius, 8px);transition:all .2s ease-in-out;height:40px;min-height:40px;max-height:40px;line-height:1.4;box-sizing:border-box}.menu-item:hover{background-color:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.menu-item-icon{width:24px;height:24px;min-width:24px;min-height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menu-item-icon img,.menu-item-icon svg{width:20px;height:20px;min-width:20px;min-height:20px;object-fit:contain}.menu-item-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-item-chevron{width:16px;height:16px;color:var(--pp-secondary, #6c757d);flex-shrink:0;transition:transform .3s ease-in-out}.menu-item:hover .menu-item-chevron{color:var(--primary)}.menu-divider{height:1px;border:0;border-top:1px solid var(--light-gray, #e5e7eb);margin:16px 0}.menu-main{flex:1;background-color:var(--body-bg-color, #f2f2f2);overflow-x:hidden;overflow-y:auto;margin-left:240px;min-height:100vh;width:calc(100% - 240px);display:flex;flex-direction:column}.menu-main-content{flex:1;max-width:1920px;padding:0!important;padding-bottom:64px;width:100%}@media(min-width:768px){.menu-main-content{padding:24px 24px 64px}}@media(min-width:1024px){.menu-main-content{padding:32px 32px 64px}}@media(min-width:1280px){.menu-main-content{padding:32px 48px 64px}}@media(min-width:1536px){.menu-main-content{padding:32px 64px 64px}}.menu-radio{display:none}.menu-expandable-item{position:relative;display:flex;flex-direction:column}.menu-expandable-label{display:flex;align-items:center;gap:12px;padding:8px 12px;color:var(--font-color-base, #282828);text-decoration:none;font-size:var(--font-size-base, 14px);font-weight:500;cursor:pointer;border-radius:var(--radius, 8px);transition:all .2s ease-in-out;height:40px;min-height:40px;max-height:40px;line-height:1.4;box-sizing:border-box}.menu-expandable-label:hover{background-color:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.menu-expandable-label:hover .menu-item-chevron{color:var(--primary)}.menu-radio:checked+.menu-expandable-label{background-color:color-mix(in srgb,var(--primary) 15%,transparent);border-radius:var(--radius, 8px);color:var(--primary)}.menu-radio:checked+.menu-expandable-label .menu-item-chevron{transform:rotate(90deg);color:var(--primary)}.menu-expanded-panel{position:fixed;left:240px;top:0;height:100vh;width:fit-content;background-color:var(--white, #fff);border-right:1px solid var(--light-gray, #f2f2f2);padding:24px;overflow-y:auto;z-index:250;display:none}@media(max-width:1023px){.menu-expanded-panel{left:240px;width:calc(100vw - 240px);min-width:200px;max-width:none;z-index:300!important;background-color:var(--white, #fff)}.menu-flyout-column{grid-template-columns:1fr}}@keyframes panelSlideIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}.menu-flyout-column{display:grid;grid-template-columns:repeat(2,200px);gap:24px;align-items:start}.menu-flyout-section{display:flex;flex-direction:column;gap:2px;width:200px}.menu-flyout-header{display:flex;align-items:center;gap:12px;padding:8px 12px;color:var(--font-color-base, #282828);font-weight:600;font-size:var(--font-size-base, 14px);border-radius:var(--radius, 8px);height:40px;cursor:default}.menu-flyout-header-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.menu-flyout-header-icon img,.menu-flyout-header-icon svg{width:20px;height:20px;object-fit:contain}.menu-flyout-items{display:flex;flex-direction:column}.menu-flyout-item{display:flex;align-items:center;gap:4px;padding:7px 12px;height:32px;color:var(--font-color-base, #282828);font-size:var(--font-size-base, 14px);text-decoration:none;cursor:pointer;border-radius:var(--radius, 8px);transition:all .2s ease-in-out}.menu-flyout-item:hover{background-color:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.menu-flyout-branch{width:12px;height:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:6px;margin-right:6px;color:var(--pp-secondary, #6c757d)}#menu-radio-none:checked~.menu-nav .menu-expanded-panel{display:none}.menu-close-overlay{display:none;position:fixed;inset:0 0 0 240px;z-index:250;cursor:default}.menu-footer{display:flex;align-items:center;gap:4px;margin:0 16px 16px;padding-top:16px;border-top:1px solid var(--light-gray, #e5e7eb);flex-shrink:0}.menu-footer-button{display:flex;align-items:center;gap:6px;padding:8px 12px;border-radius:var(--radius, 8px);background:transparent;border:none;cursor:pointer;flex:1;transition:all .2s ease-in-out;text-decoration:none;color:inherit}.menu-footer-button:hover{background-color:var(--light-gray, #f2f2f2)}.menu-footer-button:hover .menu-footer-label{color:var(--font-color-base, #282828)}.menu-footer-button.logout:hover{background-color:color-mix(in srgb,#ef4444 10%,transparent)}.menu-footer-button.logout:hover .menu-footer-label,.menu-footer-button.logout:hover .menu-footer-icon{color:#ef4444}.menu-footer-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--font-color-base, #282828);transition:color .2s ease-in-out}.menu-footer-icon img{width:18px;height:18px;object-fit:contain}.menu-footer-label{font-size:12px;color:var(--pp-secondary, #6c757d);transition:color .2s ease-in-out}.mobile-menu-checkbox{display:none}.menu-mobile-overlay{display:none;position:fixed;inset:0;background-color:#00000080;z-index:100;cursor:pointer;-webkit-tap-highlight-color:transparent}@media(max-width:1023px){.menu-sidebar{transform:translate(-100%);transition:transform .3s ease-in-out;z-index:200!important;overflow:visible}.menu-main{margin-left:0!important;width:100%!important}.mobile-menu-checkbox:checked~.menu-sidebar{transform:translate(0)}.mobile-menu-checkbox:checked~.menu-mobile-overlay{display:block}}@media(min-width:1024px){.menu-sidebar{transform:none;overflow-y:auto}}.header,.header *,.header *:before,.header *:after{box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.header{position:sticky;top:0;z-index:40;flex-shrink:0}.header-content{display:flex;align-items:center;justify-content:space-between;background-color:var(--white, #fff);padding:0 16px;height:64px}@media(min-width:768px){.header-content{padding:0 24px;height:80px}}@media(min-width:1024px){.header-content{padding:0 32px}}@media(min-width:1280px){.header-content{padding:0 48px}}@media(min-width:1536px){.header-content{padding:0 64px}}.header-left{display:flex;align-items:center;gap:16px;min-width:0;flex:1}.header-menu-button{display:block;padding:8px;background:transparent;border:none;border-radius:8px;cursor:pointer;flex-shrink:0;transition:background-color .2s ease-in-out}.header-menu-button:hover{background-color:var(--light-gray, #f3f4f6)}@media(min-width:1024px){.header-menu-button{display:none}}.header-hamburger-icon{width:24px;height:24px;color:var(--font-color-base, #282828)}.header-logo-container{width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-logo-icon{width:36px;height:36px;color:var(--primary, #31af99)}.header-title{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:32px;color:#444;font-weight:400;line-height:1.5;margin:0;padding-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(min-width:768px){.header-title{font-size:36px}}.header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}@media(min-width:768px){.header-right{gap:16px}}.header-company-logo{display:none;height:48px;width:auto;max-width:180px;object-fit:contain}@media(min-width:768px){.header-company-logo{display:block}}.header-progress-bar{position:absolute;bottom:-8px;left:0;height:8px;width:100%;background-color:transparent;transition:background-color .2s ease-in-out}.header-progress-bar.loading{background-color:var(--light-gray, #e5e7eb)}.header-progress-fill{height:100%;border-radius:0 4px 4px 0;background-color:var(--primary, #31af99);width:0;opacity:.5}.header-progress-bar.loading .header-progress-fill{animation:progress-indeterminate 1.5s ease-in-out infinite}@keyframes progress-indeterminate{0%{width:0;margin-left:0}50%{width:60%;margin-left:20%}to{width:0;margin-left:100%}}body{margin:0;width:100%;height:100%}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
