:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;padding:0;background-color:#f5f5f5}.top-menu{position:sticky;top:0;background-color:#fff;box-shadow:0 2px 4px #0000001a;padding:1rem 2rem;z-index:1000;display:flex;align-items:center;gap:1rem}.app-bar-gray{background-color:#e0e0e0!important;color:#000!important}.app-bar-gray button{color:#000!important}.home-button{padding:.5rem;background-color:transparent;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500;transition:opacity .3s ease;display:flex;align-items:center;justify-content:center}.home-button:hover{opacity:.7}.home-button-icon{height:32px;width:auto;display:block}.layout{display:flex;min-height:calc(100vh - 64px)}.side-menu{width:280px;background-color:#fff;box-shadow:2px 0 4px #0000001a;padding:2rem 0}.side-menu-item{padding:1rem 2rem;cursor:pointer;transition:background-color .3s ease;border-left:3px solid transparent}.side-menu-item:hover{background-color:#f0f0f0}.side-menu-item.active{background-color:#e8e8e8;border-left-color:#333;font-weight:500}.content{flex:1;padding:1rem}.card{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}.card h2{color:#333;margin-top:0;margin-bottom:1rem;font-size:1.5rem;font-weight:600}.input-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.input-group label{color:#555;font-weight:500}.input{padding:.75rem;border:2px solid #e1e5e9;border-radius:4px;font-size:1rem;transition:all .3s ease;background:#fff}.input:focus{outline:none;border-color:#333}.input:disabled{background:#f1f3f4;cursor:not-allowed}.button{padding:.75rem 1.5rem;background-color:#333;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.button:hover:not(:disabled){background-color:#555}.button:disabled{background:#ccc;cursor:not-allowed}.message{padding:1rem;border-radius:4px;margin-bottom:1rem;font-weight:500}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.layout{flex-direction:column}.side-menu{width:100%}.top-menu,.content{padding:1rem}}.App{margin:0;padding:0;min-height:100vh}
