:root{--bg-primary: #f4f4f6;--bg-secondary: #ffffff;--text-primary: #111827;--text-secondary: #4b5563;--accent: #2c3e50;--border: #e5e7eb;--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--header-height: 70px;--sidebar-width: 260px;--mobile-breakpoint: 768px}html{overflow-x:hidden;max-width:100vw;overscroll-behavior-x:none;overscroll-behavior-y:none}.mobile-only{display:none}.desktop-only,.desktop-flex{display:flex!important}.mobile-flex{display:none}@media(max-width:767px){:root{--header-height: 60px;--sidebar-width: 100%}.mobile-only{display:block!important}.mobile-flex{display:flex!important}.desktop-only,.desktop-flex{display:none!important}.card{padding:1.5rem!important}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;max-width:100vw;touch-action:pan-y;overscroll-behavior-x:none;overscroll-behavior-y:none}h1,h2,h3,h4{font-weight:600;margin-bottom:1rem}button{cursor:pointer;border:none;background:none;font-family:inherit;transition:all .2s ease}a{text-decoration:none;color:inherit}.auth-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:var(--bg-primary)}.card{background:var(--bg-secondary);padding:2.5rem;border-radius:16px;box-shadow:var(--shadow);width:100%;max-width:400px;text-align:center}.login-btn:hover{background-color:#333!important;transform:translateY(-2px)}.login-btn:active{transform:translateY(0)}.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.hide-recharts-tooltip .recharts-tooltip-wrapper,.hide-recharts-tooltip .recharts-tooltip-cursor,.hide-recharts-tooltip .recharts-active-dot{opacity:0!important;visibility:hidden!important;transition:opacity .3s ease,visibility .3s ease}.recharts-tooltip-wrapper,.recharts-tooltip-cursor,.recharts-active-dot{transition:opacity .2s ease,visibility .2s ease}
