.footer{padding:20px 0;position:relative;overflow:hidden}.footer:before,.footer:after{content:"";pointer-events:none;background-position:bottom;background-repeat:no-repeat;background-size:contain;width:320px;height:100%;position:absolute;bottom:0}.footer:before{background-image:url(/images/footer/footer-left.png);background-position:0 100%;bottom:0;left:0}.footer:after{background-image:url(/images/footer/footer-right.png);background-position:100% 100%;bottom:0;right:0}.footer-content{z-index:1;text-align:center;gap:var(--space-sm);position:relative}.footer-links{width:100%}.footer-copyright{color:var(--color-text-secondary)}@media (max-width:768px){.footer:before,.footer:after{opacity:.6;width:180px;height:100px}}@media (max-width:767px){.footer{margin-top:32px}}@media (max-width:480px){.footer:before,.footer:after{opacity:.45;width:120px;height:70px}.footer-copyright{font-size:10px}}
.topbar{background:var(--color-background);width:100%}.topbar-container{width:100%;min-height:64px}@media (max-width:1440px){.topbar-container{min-height:64px}}@media (max-width:1024px){.topbar-container{min-height:60px}}@media (max-width:768px){.topbar-container{min-height:56px}}@media (max-width:576px){.topbar-container{min-height:52px}}@media (max-width:400px){.topbar-container{min-height:48px}}
.userDropdown{z-index:1000;display:inline-flex;position:relative}.userDropdown__trigger{border:1px solid var(--color-border);background:var(--color-surface);width:38px;height:38px;color:var(--color-text);cursor:pointer;border-radius:50%;outline:none;justify-content:center;align-items:center;padding:2px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex}.userDropdown__trigger:hover,.userDropdown__trigger--open{border-color:var(--color-primary,#007bff);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary,#007bff) 10%, transparent)}.userDropdown__trigger:active{transform:scale(.97)}.userDropdown__triggerAvatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:34px;height:34px;display:block}.userDropdown__triggerAvatar--initials{background:var(--color-primary,#007bff);color:#fff;letter-spacing:.2px;justify-content:center;align-items:center;font-size:11px;font-weight:650;display:flex}.userDropdown__menu{background:var(--color-surface-primary);border:1px solid var(--color-border);opacity:0;visibility:hidden;pointer-events:none;transform-origin:100% 0;border-radius:14px;width:252px;padding:6px;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;top:calc(100% + 9px);right:0;transform:translateY(-5px)scale(.985);box-shadow:0 18px 45px #0f172a1c,0 4px 12px #0f172a0d}.userDropdown__menu--open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)scale(1)}.userDropdown__arrow{background:var(--color-surface-primary);border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);border-radius:2px;width:13px;height:13px;position:absolute;top:-7px;right:12px;transform:rotate(45deg)}.userDropdown__profile{z-index:1;width:100%;color:var(--color-text);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:10px;transition:background-color .16s,color .16s;display:flex;position:relative}.userDropdown__profile:hover{background:var(--color-surface)}.userDropdown__profile:active{background:color-mix(in srgb, var(--color-background) 85%, var(--color-text))}.userDropdown__profile:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px}.userDropdown__profileAvatar{object-fit:cover;border-radius:50%;flex:0 0 42px;width:42px;height:42px;display:block;overflow:hidden}.userDropdown__profileAvatar--initials{background:var(--color-primary,#007bff);color:#fff;justify-content:center;align-items:center;font-size:13px;font-weight:650;display:flex}.userDropdown__profileInfo{flex-direction:column;gap:2px;min-width:0;display:flex}.userDropdown__profileName{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;line-height:17px;overflow:hidden}.userDropdown__profileEmail{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:14px;overflow:hidden}.userDropdown__divider{background:var(--color-border);width:100%;height:1px;margin:6px 0}.userDropdown__item{width:100%;min-height:38px;color:var(--color-text);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.userDropdown__item:hover{background:var(--color-surface)}.userDropdown__itemIcon{border-radius:7px;flex:0 0 28px;justify-content:center;align-items:center;width:28px;height:28px;transition:background-color .15s,color .15s;display:flex}.userDropdown__itemIcon svg{width:20px;height:20px}.userDropdown__itemIcon--user{color:#0ea5e9}.userDropdown__itemIcon--monitor{color:#7c3aed}.userDropdown__itemIcon--settings{color:#6b7280}.userDropdown__itemIcon--logout,.userDropdown__item--logout:hover .userDropdown__itemIcon--logout{color:#dc2626}.userDropdown__item--logout,.userDropdown__item--logout .userDropdown__itemIcon{color:var(--color-danger,#dc2626)}.userDropdown__item--logout:hover{background:var(--color-danger-background,#dc26260f)}.userDropdown__item--logout:hover .userDropdown__itemIcon{color:var(--color-danger,#dc2626);background:0 0}@media (max-width:600px){.userDropdown__menu{border-radius:13px;width:min(252px,100vw - 20px);right:-4px}}
html,body,#root{height:100%;margin:0}.website-shell{flex-direction:column;min-height:100vh;display:flex}@supports (min-height:100dvh){.website-shell{min-height:100dvh}}@media (max-width:767px){.hero{min-height:unset;height:auto}.hero__container{gap:0;padding:32px 20px}.heroRight{display:none}}
.drawer-header{border-bottom:1px solid var(--color-border);background:var(--color-background);flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 16px;display:flex}.drawer-header-close{width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background-color .2s,color .2s;display:flex}.drawer-header-close:hover{background:var(--color-surface)}
.sidebar-footer{border-top:1px solid var(--color-border);margin-top:auto;padding:16px 12px}.sidebar-footer-content{text-align:center}.sidebar-footer-meta{white-space:nowrap}
.admin-header{z-index:100;background:var(--color-background);border-bottom:1px solid var(--color-border);align-items:center;width:100%;height:64px;display:flex;position:sticky;top:0}.admin-header-inner{justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 24px;display:flex}.admin-header-left,.admin-header-center,.admin-header-right{align-items:center;display:flex}.admin-header-center{flex:1}.admin-header-right{gap:12px}.admin-header-menu{width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background-color .2s;display:none}.admin-header-menu:hover{background:var(--color-surface)}@media (max-width:768px){.admin-header-menu{display:flex}}@media (max-width:480px){.admin-header-inner{padding-left:5px}}
.admin-shell{flex-direction:column;min-height:100dvh;display:flex}.admin-shell-body{flex:1;min-height:0;display:flex}.admin-shell-sidebar{top:var(--admin-header-height,64px);width:260px;height:calc(100vh - var(--admin-header-height,64px));height:calc(100svh - var(--admin-header-height,64px));height:calc(100dvh - var(--admin-header-height,64px));border-right:1px solid var(--color-border);background:var(--color-background);flex-direction:column;flex-shrink:0;align-self:flex-start;padding:12px;display:flex;position:sticky;overflow:hidden}.admin-shell-main{flex:1;min-width:0;padding:24px}@media (max-width:768px){.admin-shell-sidebar{display:none}.admin-shell-main{width:100%;min-height:calc(100dvh - var(--admin-header-height,64px));padding:16px}}.admin-sidebar-content{flex-direction:column;flex:1;min-height:0;display:flex}.admin-sidebar-navigation{flex:1;min-height:0;padding:6px 12px;overflow-y:auto}
.auth-header{z-index:100;background:var(--color-background);border-bottom:1px solid var(--color-border);align-items:center;width:100%;height:64px;display:flex;position:sticky;top:0}.auth-header-inner{justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 24px;display:flex}.auth-header-left,.auth-header-center,.auth-header-right{align-items:center;display:flex}.auth-header-center{flex:1}.auth-header-right{gap:12px}.auth-header-menu{width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background-color .2s;display:none}.auth-header-menu:hover{background:var(--color-surface)}@media (max-width:768px){.auth-header-menu{display:flex}}@media (max-width:480px){.auth-header-inner{padding-left:5px}}
.auth-shell{flex-direction:column;min-height:100dvh;display:flex}.auth-shell-body{flex:1;min-height:0;display:flex}.auth-shell-sidebar{top:var(--auth-header-height,64px);width:260px;height:calc(100vh - var(--auth-header-height,64px));height:calc(100svh - var(--auth-header-height,64px));height:calc(100dvh - var(--auth-header-height,64px));border-right:1px solid var(--color-border);background:var(--color-background);flex-direction:column;flex-shrink:0;align-self:flex-start;padding:12px;display:flex;position:sticky;overflow:hidden}.auth-shell-main{flex:1;min-width:0;padding:24px}.auth-sidebar-content{flex-direction:column;flex:1;min-height:0;display:flex}.auth-sidebar-navigation{flex:1;min-height:0;padding:6px 12px;overflow-y:auto}@media (max-width:768px){.auth-shell-sidebar{display:none}.auth-shell-main{width:100%;min-height:calc(100dvh - var(--auth-header-height,64px));padding:16px}}
.expense-header{z-index:100;background:var(--color-background);border-bottom:1px solid var(--color-border);align-items:center;width:100%;height:64px;display:flex;position:sticky;top:0}.expense-header-inner{justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 24px;display:flex}.expense-header-left,.expense-header-center,.expense-header-right{align-items:center;display:flex}.expense-header-center{flex:1}.expense-header-right{gap:12px}.expense-header-menu{width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background-color .2s;display:none}.expense-header-menu:hover{background:var(--color-surface)}@media (max-width:768px){.expense-header-menu{display:flex}}@media (max-width:480px){.expense-header-inner{padding-left:5px}}
.expense-shell{width:100%;min-height:100vh}.expense-shell-body{width:100%;min-height:calc(100vh - 64px);display:flex}.expense-shell-sidebar{border-right:1px solid var(--color-border);background:var(--color-background);flex-shrink:0;width:240px;min-height:calc(100vh - 64px)}.expense-sidebar-content{flex-direction:column;height:calc(100vh - 64px);display:flex}.expense-sidebar-navigation{flex:1;padding:16px 12px;overflow-y:auto}.expense-shell-main{flex:1;min-width:0}@media (max-width:768px){.expense-shell-sidebar{display:none}.expense-shell-body{min-height:calc(100vh - 64px)}}
.erp-header{z-index:100;background:var(--color-background);border-bottom:1px solid var(--color-border);align-items:center;width:100%;height:64px;display:flex;position:sticky;top:0}.erp-header-inner{justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 24px;display:flex}.erp-header-left,.erp-header-center,.erp-header-right{align-items:center;display:flex}.erp-header-center{flex:1}.erp-header-right{gap:12px}.erp-header-menu{width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background-color .2s;display:none}.erp-header-menu:hover{background:var(--color-surface)}@media (max-width:768px){.erp-header-menu{display:flex}}@media (max-width:480px){.erp-header-inner{padding-left:5px}.erp-header--no-menu .erp-header-inner{padding-left:16px}}
.erp-upgrade-plan{border:1px solid var(--color-border);color:var(--color-text);border-radius:10px;align-items:center;gap:10px;margin:0 12px 12px;padding:11px;text-decoration:none;transition:background .2s,border-color .2s,transform .2s;display:flex}.erp-upgrade-plan:hover{background:var(--color-background);border-color:var(--color-primary);transform:translateY(-1px)}.erp-upgrade-plan-icon{background:var(--color-primary);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.erp-upgrade-plan-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.erp-upgrade-plan-content strong{color:var(--color-text);font-size:12px;font-weight:600;line-height:1.3}.erp-upgrade-plan-content span{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.3;overflow:hidden}.erp-upgrade-plan-arrow{color:var(--color-text-secondary);flex-shrink:0;transition:transform .2s}.erp-upgrade-plan:hover .erp-upgrade-plan-arrow{color:var(--color-primary);transform:translate(2px)}
.erp-shell{width:100%;height:100vh;min-height:100vh;overflow:hidden}.erp-shell-body{width:100%;height:calc(100vh - 64px);min-height:0;display:flex;overflow:hidden}.erp-shell-sidebar{border-right:1px solid var(--color-border);background:var(--color-background);flex:0 0 240px;width:240px;height:100%;min-height:0;overflow:hidden}.erp-sidebar-content{flex-direction:column;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.erp-sidebar-navigation{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;flex:auto;min-height:0;padding:16px 12px;overflow:hidden auto}.erp-sidebar-navigation::-webkit-scrollbar{width:5px}.erp-sidebar-navigation::-webkit-scrollbar-track{background:0 0}.erp-sidebar-navigation::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.erp-sidebar-navigation::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.erp-shell-main{scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;flex:auto;width:0;min-width:0;height:100%;overflow:hidden auto}.erp-shell-main::-webkit-scrollbar{width:7px}.erp-shell-main::-webkit-scrollbar-track{background:0 0}.erp-shell-main::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px}.erp-shell-main::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.erp-upgrade-card{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;flex:none;align-items:center;gap:10px;margin:0 12px 12px;padding:10px;transition:border-color .2s,background .2s;display:flex}.erp-upgrade-card:hover{background:color-mix(in srgb, #f59e0b 5%, var(--color-surface));border-color:#f59e0b}.erp-upgrade-icon{color:#fff;background:#f59e0b;border-radius:8px;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;font-weight:700;line-height:1;display:flex}.erp-upgrade-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.erp-upgrade-content strong{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;line-height:1.3;overflow:hidden}.erp-upgrade-content span{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.3;overflow:hidden}.erp-upgrade-button{color:#fff;background:#f59e0b;border-radius:7px;flex:none;justify-content:center;align-items:center;padding:6px 9px;font-size:9px;font-weight:700;line-height:1;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.erp-upgrade-button:hover{background:#d97706;transform:translateY(-1px)}@media (max-width:768px){.erp-shell{height:100vh;min-height:100vh}.erp-shell-body{height:calc(100vh - 64px);min-height:0}.erp-shell-sidebar{display:none}.erp-shell-main{width:100%;min-width:0;overflow:hidden auto}.erp-upgrade-card{margin:0 12px 12px}}
.page-header{width:100%;margin-bottom:24px}.page-header-content{flex-direction:column;gap:8px;display:flex}.page-header-description{max-width:700px}.page-header-actions{align-items:center;gap:12px;display:flex}@media (max-width:768px){.page-header-actions{justify-content:flex-start;width:100%}}
